From e660a1513eb0fe37df813c9a22f1f7ad2c2f7d0d Mon Sep 17 00:00:00 2001 From: trashmasteruni Date: Sun, 11 Oct 2026 00:22:25 +0200 Subject: [PATCH] event fixing pt III --- events/dlc/ep3/ep3_admin_events.txt | 696 - events/dlc/ep3/ep3_camp_party_events.txt | 3727 --- .../dlc/ep3/ep3_camp_temperament_events.txt | 1528 - events/dlc/ep3/ep3_contract_events.txt | 10220 ------- events/dlc/ep3/ep3_councillor_events.txt | 173 - events/dlc/ep3/ep3_decisions_events.txt | 477 +- events/dlc/ep3/ep3_emperor_yearly_2.txt | 343 +- events/dlc/ep3/ep3_emperor_yearly_8.txt | 78 +- events/dlc/ep3/ep3_eparch_events.txt | 53 +- events/dlc/ep3/ep3_governor_yearly_3.txt | 499 +- events/dlc/ep3/ep3_governor_yearly_8.txt | 135 +- events/dlc/ep3/ep3_interactions_events.txt | 306 +- events/dlc/ep3/ep3_laamp_decision_events.txt | 974 +- events/dlc/ep3/ep3_laamp_events.txt | 750 +- events/dlc/ep3/ep3_laamp_events_8.txt | 85 +- events/dlc/ep3/ep3_laamp_flavor.txt | 26 +- events/dlc/ep3/ep3_laamp_flavor_oltner.txt | 329 - .../dlc/ep3/ep3_laamp_flavour_ewan_events.txt | 23555 ---------------- events/dlc/ep3/ep3_laamps_provisions.txt | 1157 - events/dlc/ep3/ep3_landless_admin_events.txt | 2280 -- events/dlc/ep3/ep3_powerful_families_8.txt | 2038 -- .../dlc/ep3/ep3_roman_restoration_events.txt | 20 +- .../ep3_story_cycle_admin_eunuch_events.txt | 178 +- ...ep3_story_cycle_grand_ambitions_events.txt | 186 +- events/dlc/ep3/ep3_travel_events_3.txt | 139 +- events/dlc/ep3/ep3_travel_events_8.txt | 14 +- events/dlc/ep3/ep3_wedding_events.txt | 2616 -- events/dlc/ep3/ep3_yearly_1.txt | 267 - events/dlc/ep3/ep3_yearly_3.txt | 9 - events/dlc/fp1/fp1_jomsvikings_events.txt | 50 +- events/dlc/fp1/fp1_major_decision_events.txt | 20 +- events/dlc/fp1/fp1_other_decision_events.txt | 193 +- .../fp1_scandinavian_adventurer_events.txt | 6 +- events/dlc/fp1/fp1_shieldmaiden_events.txt | 1426 - events/dlc/fp1/fp1_trade_events.txt | 2505 -- events/dlc/fp1/fp1_trial_by_combat_events.txt | 971 - .../fp1/fp1_varangian_adventure_events.txt | 29 - events/dlc/fp1/fp1_yearly_events.txt | 432 +- events/dlc/fp1/fp1_yearly_events_oltner.txt | 89 +- events/dlc/fp2/fp2_el_cid_events.txt | 552 - events/dlc/fp2/fp2_other_decision_events.txt | 4 +- events/dlc/fp2/fp2_yearly_events.txt | 192 +- events/dlc/fp3/fp3_clan_events_2000.txt | 1493 - events/dlc/fp3/fp3_clan_events_hugo.txt | 196 - events/dlc/fp3/fp3_clan_events_ola.txt | 2515 -- .../fp3_clan_events_persia_specific_ola.txt | 727 - .../dlc/fp3/fp3_dynasty_decision_events.txt | 1376 - events/dlc/fp3/fp3_extra_flavor_events.txt | 2221 -- events/dlc/fp3/fp3_frontier_story_cycle.txt | 2056 -- events/dlc/fp3/fp3_heritage_events.txt | 167 +- events/dlc/fp3/fp3_misc_decision_events.txt | 12 +- .../dlc/fp3/fp3_religious_decision_events.txt | 58 +- events/dlc/fp3/fp3_scholarship_events.txt | 1918 -- ...p3_story_cycle_seljuks_invasion_events.txt | 153 - .../dlc/fp3/fp3_tax_collector_events_ola.txt | 1416 - .../fp3/fp3_tax_collector_flavor_events.txt | 1063 - events/dlc/fp3/fp3_yearly_events_eren.txt | 3134 -- events/dlc/fp3/fp3_yearly_events_hugo.txt | 16 +- .../dlc/fp3/fp3_yearly_events_ola_batch_1.txt | 141 +- events/dlc/fp3/fp3_yearly_frontier_chains.txt | 824 - events/dlc/mpo/court_astrologer_events.txt | 307 - events/dlc/mpo/mpo_decisions_events.txt | 9326 ------ events/dlc/mpo/mpo_events_anna.txt | 988 - events/dlc/mpo/mpo_events_ariana.txt | 4825 ---- events/dlc/mpo/mpo_events_tova.txt | 1868 -- events/dlc/mpo/mpo_flavor_events_settled.txt | 456 - events/dlc/mpo/mpo_interactions_events.txt | 1120 - .../dlc/mpo/mpo_migration_contract_events.txt | 1585 -- events/dlc/mpo/mpo_migration_events.txt | 4571 --- .../dlc/mpo/mpo_migration_travel_events.txt | 45 +- events/dlc/mpo/mpo_nomad_events_1.txt | 151 +- .../mpo/mpo_nomads_blood_brothers_windy.txt | 131 - events/dlc/mpo/mpo_nomads_flavour_events.txt | 267 +- .../mpo/mpo_nomads_flavour_events_oltner.txt | 1043 - events/dlc/mpo/mpo_nomads_season_events.txt | 856 - .../mpo_story_cycle_temujin_flavor_events.txt | 835 - .../dlc/tgp/tgp_ceremonial_liege_events.txt | 42 +- .../dlc/tgp/tgp_child_personality_events.txt | 1214 +- events/dlc/tgp/tgp_china_career_events.txt | 2 +- events/dlc/tgp/tgp_china_decision_events.txt | 11 +- events/dlc/tgp/tgp_china_ministry_events.txt | 161 +- events/dlc/tgp/tgp_china_yearly_events.txt | 38 +- events/dlc/tgp/tgp_commission_book.txt | 11 +- events/dlc/tgp/tgp_dynastic_cycle_events.txt | 24 +- .../tgp/tgp_dynastic_cycle_flavor_events.txt | 1910 +- .../dlc/tgp/tgp_east_asia_decision_events.txt | 12 +- .../tgp/tgp_east_asia_interaction_events.txt | 29 +- events/dlc/tgp/tgp_faction_events.txt | 528 - .../dlc/tgp/tgp_genpei_character_events.txt | 1408 - .../dlc/tgp/tgp_governor_contract_events.txt | 3495 --- .../tgp/tgp_governor_contract_events_2000.txt | 502 - events/dlc/tgp/tgp_house_blocs.txt | 176 - events/dlc/tgp/tgp_interaction_events.txt | 1185 - events/dlc/tgp/tgp_japan_career_events.txt | 125 - events/dlc/tgp/tgp_japan_decision_events.txt | 3317 --- events/dlc/tgp/tgp_japan_general_events.txt | 1626 -- events/dlc/tgp/tgp_japan_yearly_events.txt | 4388 --- .../tgp/tgp_japan_yearly_events_ariana.txt | 177 +- events/dlc/tgp/tgp_korea_decision_events.txt | 180 - events/dlc/tgp/tgp_maintenance_events.txt | 1 - events/dlc/tgp/tgp_mandala_capital_events.txt | 278 - .../dlc/tgp/tgp_mandala_devaraja_events.txt | 1716 -- events/dlc/tgp/tgp_mandala_events.txt | 2724 -- .../tgp/tgp_mandala_task_contract_events.txt | 8919 ------ .../dlc/tgp/tgp_mentoring_scheme_events.txt | 372 - events/dlc/tgp/tgp_movement_events.txt | 3699 --- .../tgp_natural_disaster_contract_events.txt | 603 - .../tgp_natural_disaster_flavor_events.txt | 905 - events/dlc/tgp/tgp_silk_road_events.txt | 289 - events/dlc/tgp/tgp_tai_migration_events.txt | 1149 - events/dlc/tgp/tgp_travel_danger_events.txt | 320 - events/dlc/tgp/tgp_tribute_mission_events.txt | 4739 ---- 112 files changed, 4671 insertions(+), 148791 deletions(-) delete mode 100644 events/dlc/ep3/ep3_admin_events.txt delete mode 100644 events/dlc/ep3/ep3_camp_party_events.txt delete mode 100644 events/dlc/ep3/ep3_camp_temperament_events.txt delete mode 100644 events/dlc/ep3/ep3_contract_events.txt delete mode 100644 events/dlc/ep3/ep3_councillor_events.txt delete mode 100644 events/dlc/ep3/ep3_laamp_flavor_oltner.txt delete mode 100644 events/dlc/ep3/ep3_laamp_flavour_ewan_events.txt delete mode 100644 events/dlc/ep3/ep3_laamps_provisions.txt delete mode 100644 events/dlc/ep3/ep3_landless_admin_events.txt delete mode 100644 events/dlc/ep3/ep3_powerful_families_8.txt delete mode 100644 events/dlc/ep3/ep3_wedding_events.txt delete mode 100644 events/dlc/ep3/ep3_yearly_1.txt delete mode 100644 events/dlc/ep3/ep3_yearly_3.txt delete mode 100644 events/dlc/fp1/fp1_shieldmaiden_events.txt delete mode 100644 events/dlc/fp1/fp1_trade_events.txt delete mode 100644 events/dlc/fp1/fp1_trial_by_combat_events.txt delete mode 100644 events/dlc/fp1/fp1_varangian_adventure_events.txt delete mode 100644 events/dlc/fp2/fp2_el_cid_events.txt delete mode 100644 events/dlc/fp3/fp3_clan_events_2000.txt delete mode 100644 events/dlc/fp3/fp3_clan_events_hugo.txt delete mode 100644 events/dlc/fp3/fp3_clan_events_ola.txt delete mode 100644 events/dlc/fp3/fp3_clan_events_persia_specific_ola.txt delete mode 100644 events/dlc/fp3/fp3_dynasty_decision_events.txt delete mode 100644 events/dlc/fp3/fp3_extra_flavor_events.txt delete mode 100644 events/dlc/fp3/fp3_frontier_story_cycle.txt delete mode 100644 events/dlc/fp3/fp3_scholarship_events.txt delete mode 100644 events/dlc/fp3/fp3_story_cycle_seljuks_invasion_events.txt delete mode 100644 events/dlc/fp3/fp3_tax_collector_events_ola.txt delete mode 100644 events/dlc/fp3/fp3_tax_collector_flavor_events.txt delete mode 100644 events/dlc/fp3/fp3_yearly_events_eren.txt delete mode 100644 events/dlc/fp3/fp3_yearly_frontier_chains.txt delete mode 100644 events/dlc/mpo/court_astrologer_events.txt delete mode 100644 events/dlc/mpo/mpo_decisions_events.txt delete mode 100644 events/dlc/mpo/mpo_events_anna.txt delete mode 100644 events/dlc/mpo/mpo_events_ariana.txt delete mode 100644 events/dlc/mpo/mpo_events_tova.txt delete mode 100644 events/dlc/mpo/mpo_flavor_events_settled.txt delete mode 100644 events/dlc/mpo/mpo_interactions_events.txt delete mode 100644 events/dlc/mpo/mpo_migration_contract_events.txt delete mode 100644 events/dlc/mpo/mpo_migration_events.txt delete mode 100644 events/dlc/mpo/mpo_nomads_blood_brothers_windy.txt delete mode 100644 events/dlc/mpo/mpo_nomads_flavour_events_oltner.txt delete mode 100644 events/dlc/mpo/mpo_nomads_season_events.txt delete mode 100644 events/dlc/mpo/mpo_story_cycle_temujin_flavor_events.txt delete mode 100644 events/dlc/tgp/tgp_faction_events.txt delete mode 100644 events/dlc/tgp/tgp_genpei_character_events.txt delete mode 100644 events/dlc/tgp/tgp_governor_contract_events.txt delete mode 100644 events/dlc/tgp/tgp_governor_contract_events_2000.txt delete mode 100644 events/dlc/tgp/tgp_house_blocs.txt delete mode 100644 events/dlc/tgp/tgp_interaction_events.txt delete mode 100644 events/dlc/tgp/tgp_japan_career_events.txt delete mode 100644 events/dlc/tgp/tgp_japan_decision_events.txt delete mode 100644 events/dlc/tgp/tgp_japan_general_events.txt delete mode 100644 events/dlc/tgp/tgp_japan_yearly_events.txt delete mode 100644 events/dlc/tgp/tgp_korea_decision_events.txt delete mode 100644 events/dlc/tgp/tgp_maintenance_events.txt delete mode 100644 events/dlc/tgp/tgp_mandala_capital_events.txt delete mode 100644 events/dlc/tgp/tgp_mandala_devaraja_events.txt delete mode 100644 events/dlc/tgp/tgp_mandala_events.txt delete mode 100644 events/dlc/tgp/tgp_mandala_task_contract_events.txt delete mode 100644 events/dlc/tgp/tgp_mentoring_scheme_events.txt delete mode 100644 events/dlc/tgp/tgp_movement_events.txt delete mode 100644 events/dlc/tgp/tgp_natural_disaster_contract_events.txt delete mode 100644 events/dlc/tgp/tgp_natural_disaster_flavor_events.txt delete mode 100644 events/dlc/tgp/tgp_silk_road_events.txt delete mode 100644 events/dlc/tgp/tgp_tai_migration_events.txt delete mode 100644 events/dlc/tgp/tgp_travel_danger_events.txt delete mode 100644 events/dlc/tgp/tgp_tribute_mission_events.txt diff --git a/events/dlc/ep3/ep3_admin_events.txt b/events/dlc/ep3/ep3_admin_events.txt deleted file mode 100644 index 886078c79..000000000 --- a/events/dlc/ep3/ep3_admin_events.txt +++ /dev/null @@ -1,696 +0,0 @@ -namespace = ep3_admin_events - -# Event to notify you that your liege has changed government and is no longer admin -ep3_admin_events.0001 = { - type = character_event - title = ep3_admin_events.0001.t - desc = { - desc = ep3_admin_events.0001.intro # Fallback - first_valid = { - triggered_desc = { - trigger = { exists = scope:tribal_gov } - desc = ep3_admin_events.0001.tribal - } - triggered_desc = { - trigger = { exists = scope:feudal_gov } - desc = ep3_admin_events.0001.feudal - } - triggered_desc = { - trigger = { exists = scope:clan_gov } - desc = ep3_admin_events.0001.clan - } - desc = ep3_admin_events.0001.fallback - } - } - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = stubborn - has_trait = paranoid - } - } - animation = worry - } - animation = thinking - } - right_portrait = { - character = scope:scribe - animation = chancellor - } - lower_right_portrait = scope:liege - - trigger = { - is_landed = yes - } - - immediate = { - liege = { - save_scope_as = liege - switch = { - trigger = government_has_flag - government_is_tribal = { - save_scope_as = tribal_gov - } - government_is_feudal = { - save_scope_as = feudal_gov - } - government_is_clan = { - save_scope_as = clan_gov - } - } - if = { - limit = { - NOR = { - exists = scope:tribal_gov - exists = scope:feudal_gov - exists = scope:clan_gov - } - } - save_scope_as = feudal_gov - } - if = { - limit = { - exists = cp:councillor_chancellor - cp:councillor_chancellor = { is_available_healthy_ai_adult = yes } - } - cp:councillor_chancellor = { save_scope_as = scribe } - } - else_if = { - limit = { - any_courtier = { is_available_healthy_ai_adult = yes } - } - ordered_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - order_by = diplomacy - save_scope_as = scribe - } - } - else = { - create_character = { - location = root.capital_province - template = diplomacy_foreign_affairs_focus_friend_template - faith = scope:liege.capital_county.faith - culture = scope:liege.capital_county.culture - save_scope_as = scribe - } - } - } - scope:scribe = { - assign_quirk_effect = yes - } - - admin_change_government_effect = yes - } - - option = { # I love change - name = ep3_admin_events.0001.a - - add_character_modifier = { - modifier = ep3_admin_change_love - years = 15 - } - - stress_impact = { - lazy = medium_stress_impact_loss - craven = medium_stress_impact_gain - stubborn = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - diligent = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = stubborn - has_trait = paranoid - has_trait = diligent - } - } - modifier = { - factor = 2 - has_trait = lazy - } - } - } - - option = { # I hate this - name = ep3_admin_events.0001.b - - add_character_modifier = { - modifier = ep3_admin_change_hate - years = 15 - } - - stress_impact = { - diligent = medium_stress_impact_loss - brave = medium_stress_impact_gain - lazy = medium_stress_impact_gain - trusting = medium_stress_impact_gain - fickle = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = brave - has_trait = lazy - has_trait = trusting - has_trait = fickle - } - } - modifier = { - factor = 2 - has_trait = diligent - } - } - } - - option = { # I don't care - name = ep3_admin_events.0001.c - - ai_chance = { - base = 200 - } - } -} - -ep3_admin_events.0002 = { - type = character_event - title = ep3_admin_events.0002.t - desc = { - first_valid = { - triggered_desc = { # Liege - trigger = { scope:previous_governor ?= root.liege } - desc = ep3_admin_events.0002.liege - } - triggered_desc = { # Same house died - trigger = { - scope:previous_governor ?= { - is_alive = no - house = root.house - } - } - desc = ep3_admin_events.0002.house_dead - } - triggered_desc = { # Same house fired - trigger = { - scope:previous_governor ?= { - is_alive = yes - house = root.house - } - } - desc = ep3_admin_events.0002.house_alive - } - triggered_desc = { # Diff house died - trigger = { - scope:previous_governor ?= { is_alive = no } - } - desc = ep3_admin_events.0002.dead - } - triggered_desc = { # Diff house fired - trigger = { - scope:previous_governor ?= { is_alive = yes } - } - desc = ep3_admin_events.0002.alive - } - desc = ep3_admin_events.0002.new - } - first_valid = { - triggered_desc = { # Same house - trigger = { scope:previous_governor.house ?= root.house } - desc = ep3_admin_events.0002.house - } - } - #desc = double_line_break - first_valid = { - triggered_desc = { - trigger = { exists = scope:appointment_succession } - desc = ep3_admin_events.0002.appointment_succession - } - triggered_desc = { - trigger = { exists = scope:appointment } - desc = ep3_admin_events.0002.appointment - } - triggered_desc = { - trigger = { exists = scope:conquest } - desc = ep3_admin_events.0002.conquest - } - } - desc = ep3_admin_events.0002.desc - } - theme = administrative - left_portrait = { - character = root - animation = chancellor - } - lower_center_portrait = scope:previous_governor - lower_right_portrait = { - character = root.liege - trigger = { - root.liege != scope:previous_governor - } - } - cooldown = { days = 1 } - - trigger = { - this != top_liege - any_held_title = { - tier = root.highest_held_title_tier - is_landless_type_title = no - is_noble_family_title = no - } - NOT = { has_character_flag = successful_governorship_elevation } - } - - immediate = { - play_sound_effect = "event:/DLC/EP3/SFX/Stingers/Byzantine_Flavor/ep3_mx_sting_byzantineflavor_become_governor" - ordered_held_title = { - limit = { - tier = root.highest_held_title_tier - is_landless_type_title = no - is_noble_family_title = no - } - save_scope_as = governor_title - previous_holder ?= { save_scope_as = previous_governor } - if = { - limit = { - recent_history = { type = appointment_succession days = 1 } - } - save_scope_as = appointment_succession - } - else_if = { - limit = { - recent_history = { type = appointment days = 1 } - } - save_scope_as = appointment - } - else_if = { - limit = { - recent_history = { type = conquest days = 1 } - } - save_scope_as = conquest - } - } - } - - option = { - name = ep3_admin_events.0002.prosperity - trigger = { - is_landed = yes - government_has_flag = government_has_merit - } - flavor = building_buildings_give_merit_tt - custom_tooltip = ep3_admin_events.0002.tt - add_character_modifier = { - modifier = tgp_diligent_governor_modifier - years = 3 - } - - stress_impact = { - lazy = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - option = { - name = ep3_admin_events.0002.inspection - trigger = { - is_landed = yes - government_has_flag = government_has_merit - any_held_title = { - tier = tier_county - is_landless_type_title = no - count >= 1 - } - } - flavor = inspections_give_merit_tt - custom_tooltip = ep3_admin_events.0002.tt - custom_tooltip = ep3_admin_events.0002.tt_inspection - - add_character_flag = free_inspection - - stress_impact = { - lazy = medium_stress_impact_gain - diligent = miniscule_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - option = { - name = ep3_admin_events.0002.a - custom_tooltip = ep3_admin_events.0002.tt - stress_impact = { - base = miniscule_stress_impact_loss - } - } - - after = { - if = { - limit = { - is_ai = yes - } - domicile ?= { - move_domicile = root.capital_province - } - } - } -} - -# Your admin liege changed government, and you have to do so as well -ep3_admin_events.0003 = { - hidden = yes - - trigger = { - government_allows = administrative - } - - immediate = { - # Let's evaluate and see which event you should get - if = { # If you are still landed and remain a vassal - limit = { - is_landed = yes - liege != root - } - trigger_event = ep3_admin_events.0001 - } - else_if = { # You are still landed and become independent - limit = { - is_landed = yes - liege = root - } - trigger_event = ep3_admin_events.0005 - } - else_if = { # You became unlanded - Let's go on an adventure! - limit = { # Assuming you are a player - is_landed = no - } - trigger_event = ep3_admin_events.0004 - } - } -} - -# Event to make admin into adventurers -ep3_admin_events.0004 = { - type = character_event - title = ep3_admin_events.0004.t - desc = { - desc = ep3_admin_events.0004.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:reacting_spouse - scope:reacting_spouse = { - OR = { - has_trait = gluttonous - has_trait = greedy - } - } - } - desc = ep3_admin_events.0004.desc_spouse_very_upset - } - triggered_desc = { - trigger = { exists = scope:reacting_spouse } - desc = ep3_admin_events.0004.desc_spouse_upset - } - } - } - theme = landless_adventurer - override_background = { reference = estate } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = eccentric - has_trait = brave - } - } - #animation = delirium - animation = disappointed - } - animation = disbelief - } - right_portrait = { - character = scope:reacting_spouse - triggered_animation = { - trigger = { - OR = { - has_trait = gluttonous - has_trait = greedy - } - } - animation = crying - } - animation = worry - } - - immediate = { - if = { # Destroy your noble family title if you have one - limit = { - any_held_title = { - is_noble_family_title = yes - } - } - every_held_title = { - limit = { - is_noble_family_title = yes - } - save_temporary_scope_as = family_title - prev = { destroy_title = scope:family_title } - } - } - if = { # Become an adventurer - limit = { is_ai = no } - create_landless_adventurer_title_effect = { - REASON = flag:runaway_allowed - FLAVOR_CHAR = root - } - hidden_effect = { - contract_passive_spawn_effect = { - SPAWN_CONTRACTS = 5 - } - } - } - if = { # If you are married, let's save your spouse as a scope for some added flavor - limit = { - is_married = yes - any_spouse = { - employer = root - } - } - random_spouse = { - limit = { employer = root } - save_scope_as = reacting_spouse - } - } - } - - option = { - name = { - trigger = { - exists = scope:reacting_spouse - scope:reacting_spouse = { - OR = { - has_trait = gluttonous - has_trait = greedy - } - } - } - text = ep3_admin_events.0004.a - } - name = { - trigger = { - exists = scope:reacting_spouse - scope:reacting_spouse = { - NOR = { - has_trait = gluttonous - has_trait = greedy - } - } - } - text = ep3_admin_events.0004.b - } - name = { - trigger = { - NOT = { exists = scope:reacting_spouse } - } - text = ep3_admin_events.0004.c - } - } -} - -# Notification event that you became independent -ep3_admin_events.0005 = { - type = character_event - title = ep3_admin_events.0005.t - desc = { - desc = ep3_admin_events.0005.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:still_admin } - desc = ep3_admin_events.0005.desc_still_admin - } - desc = ep3_admin_events.0005.desc_lost_admin - } - } - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = fickle - has_trait = lazy - has_trait = paranoid - } - } - animation = stress - } - animation = interested - } - right_portrait = { - character = scope:messenger - animation = chancellor - } - lower_right_portrait = scope:gov_liege - - immediate = { - # Let's find a character to bring us these news - if = { - limit = { - exists = cp:councillor_chancellor - cp:councillor_chancellor = { is_available_healthy_ai_adult = yes } - } - cp:councillor_chancellor = { save_scope_as = messenger } - } - else_if = { - limit = { - any_courtier = { is_available_healthy_ai_adult = yes } - } - ordered_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - order_by = diplomacy - save_scope_as = messenger - } - } - else = { - create_character = { - location = root.capital_province - template = diplomacy_foreign_affairs_focus_friend_template - faith = root.capital_county.faith - culture = root.capital_county.culture - save_scope_as = messenger - } - } - - # Show this to make it clear to the player that you became independent - show_as_tooltip = { - create_title_and_vassal_change = { - type = independency - save_scope_as = change - add_claim_on_loss = no - } - becomes_independent = { change = scope:change } - resolve_title_and_vassal_change = scope:change - } - if = { # You are allowed to keep admin as your government - limit = { - highest_held_title_tier >= tier_kingdom - culture ?= { has_cultural_parameter = can_adopt_administrative_government_as_kingdom_tier } - } - save_scope_as = still_admin - } - else = { # You change your government - admin_change_government_effect = yes - } - } - - option = { - name = ep3_admin_events.0005.a - # We handle everything in the immediate - } -} - -# Reception Hall domicile upgrade provides legitimacy -# We put it in a delayed event to make sure that we can notify the player of the effect, so they can see it -ep3_admin_events.0010 = { - hidden = yes - - immediate = { - save_scope_as = legitimacy_gainer - - # We first send the notification of the legitimacy being granted - house = { - every_house_member = { - limit = { is_ai = no } - send_interface_message = { - type = event_toast_effect_good - title = ep3_dynasty_legacy_gain_legitimacy_effect_title - left_icon = root - right_icon = root.primary_title - show_as_tooltip = { - scope:legitimacy_gainer = { add_legitimacy = house.var:ep3_legacy_legitimacy_counter } - } - } - } - } - - # Then we add the actual legitimacy - add_legitimacy = house.var:ep3_legacy_legitimacy_counter - - # Finally, let's reset the counter according to building level - house = { - if = { - limit = { - house_head.domicile ?= { has_domicile_parameter = reception_hall_legitimacy_loss_04 } - } - change_variable = { - name = ep3_legacy_legitimacy_counter - multiply = 0.75 - } - } - else_if = { - limit = { - house_head.domicile ?= { has_domicile_parameter = reception_hall_legitimacy_loss_03 } - } - change_variable = { - name = ep3_legacy_legitimacy_counter - multiply = 0.5 - } - } - else_if = { - limit = { - house_head.domicile ?= { has_domicile_parameter = reception_hall_legitimacy_loss_02 } - } - change_variable = { - name = ep3_legacy_legitimacy_counter - multiply = 0.25 - } - } - else_if = { - limit = { - house_head.domicile ?= { has_domicile_parameter = reception_hall_legitimacy_loss_01 } - } - change_variable = { - name = ep3_legacy_legitimacy_counter - multiply = 0 - } - } - } - } -} diff --git a/events/dlc/ep3/ep3_camp_party_events.txt b/events/dlc/ep3/ep3_camp_party_events.txt deleted file mode 100644 index 53debc6da..000000000 --- a/events/dlc/ep3/ep3_camp_party_events.txt +++ /dev/null @@ -1,3727 +0,0 @@ -namespace = ep3_camp_party - -################################ -# Maintenance -################################ - -# START EVENT -ep3_camp_party.0001 = { - type = activity_event - title = ep3_camp_party.0001.t - desc = ep3_camp_party.0001.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - center_portrait = { - character = root - animation = drink - } - - option = { - name = ep3_camp_party.0001.a - ai_chance = { - base = 100 - } - } -} - -# CONCLUSION EVENT -ep3_camp_party.0009 = { - type = activity_event - title = ep3_camp_party.0009.t - desc = ep3_camp_party.0009.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - center_portrait = { - character = root - animation = ecstasy - } - - immediate = { - #Reward effects - camp_party_completed_log_entry_effect = yes - } - - option = { - name = ep3_camp_party.0009.a - ai_chance = { - base = 100 - } - } -} - -################################ -# Events -################################ -# ep3_camp_party.1000 - Listen to a story at the campfire -# ep3_camp_party.1005 - Someone wanders off and gets lost -# ep3_camp_party.1010 - Solve a riddle -# ep3_camp_party.1015 - An archery contest breaks out -# ep3_camp_party.1020 - A local turns up -# ep3_camp_party.1025 - Bond with your intent target -# ep3_camp_party.1030 - Relieve stress - intent event -# ep3_camp_party.1035 - Fell a tree for more firewood -# ep3_camp_party.1040 - Encounter a wandering merchant -# - -# Listen to a story at the campfire -ep3_camp_party.1000 = { - type = activity_event - title = ep3_camp_party.1000.t - desc = ep3_camp_party.1000.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = drink - } - right_portrait = { - character = scope:storyteller - animation = storyteller - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - any_attending_character = { - count > 3 #Make sure there's actually a 'crowd' to listen - this != root - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = storyteller - } - } - } - - #If we rip some of these tables apart... - option = { - name = ep3_camp_party.1000.a - - trigger = { - involved_activity = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - - add_internal_flag = special - - flavor = ep3_camp_party.1000.a.tt - - domicile = { - change_provisions = medium_provisions_loss - } - - create_artifact = { - name = ep3_makeshift_mace - description = ep3_makeshift_mace_description - type = mace - visuals = mace - modifier = artifact_prowess_4_modifier - modifier = artifact_mercenary_hire_cost_mult_2_modifier - modifier = artifact_men_at_arms_maintenance_8_modifier - modifier = artifact_monthly_prestige_penalty_modifier - creator = root - rarity = common - save_scope_as = makeshift_mace - } - - stress_impact = { - wrathful = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - ambitious = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - calm = minor_stress_impact_gain - content = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #Oh yeah? Well I have a story too! - option = { - name = ep3_camp_party.1000.b - - trigger = { - OR = { - has_trait = lifestyle_poet - has_trait = lifestyle_traveler - } - } - - duel = { - skill = diplomacy - value = medium_skill_rating - # Success: Your story is believed - 50 = { - desc = ep3_camp_party.1000.b.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1000.b.success - left_icon = root - - add_prestige = medium_prestige_gain - involved_activity = { - if = { - limit = { - any_attending_character = { - NOR = { - this = scope:storyteller - this = root - } - } - } - every_attending_character = { - custom = custom.every_attending_character - limit = { - NOR = { - this = scope:storyteller - this = root - } - } - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 10 - } - } - } - } - } - } - # Failure - 50 = { - desc = ep3_camp_party.1000.b.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1000.b.failure - left_icon = root - - add_prestige = medium_prestige_loss - } - } - } - - random = { - chance = 50 - - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_camp_party.1000.b.tt - left_icon = root - right_icon = scope:storyteller - - reverse_add_opinion = { - target = scope:storyteller - modifier = upstaged_opinion - opinion = -25 - } - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -0.5 - ai_compassion = -1 - } - } - } - - #Another! - option = { - name = ep3_camp_party.1000.c - - scope:storyteller = { - duel = { - skill = diplomacy - value = medium_skill_rating - # Success: Their next story is great - 50 = { - desc = ep3_camp_party.1000.c.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1000.c.success - left_icon = root - right_icon = scope:storyteller - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - progress_towards_friend_effect = { - REASON = friend_encouraged_tale - CHARACTER = root - OPINION = default_friend_opinion - } - } - } - # Failure: Their next story is a damp squib - 50 = { - desc = ep3_camp_party.1000.c.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1000.c.failure - left_icon = root - right_icon = scope:storyteller - - add_prestige = medium_prestige_loss - } - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - #A fine tale. - option = { - name = ep3_camp_party.1000.d - - scope:activity = { activity_special_type_progression_variable = { NUM = 10 } } - custom_tooltip = camp_party_tt_positive_tiny - - stress_impact = { - patient = minor_stress_impact_loss - impatient = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } -} - -# Someone wanders off and gets lost -ep3_camp_party.1005 = { - type = activity_event - title = ep3_camp_party.1005.t - desc = ep3_camp_party.1005.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:attendee - animation = worry - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - any_attending_character = { - count > 2 #Requires you plus two others - this != root - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = attendee - } - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:attendee - } - is_ai = yes - is_adult = yes - } - save_scope_as = wanderer - } - } - } - - #Chuck some more wood on the fire to guide them home - option = { - name = ep3_camp_party.1005.a - - trigger = { - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - - add_internal_flag = special - - domicile = { - change_provisions = minor_provisions_loss - } - - reverse_add_opinion = { - target = scope:wanderer - modifier = grateful_opinion - opinion = 20 - } - - if = { - limit = { - involved_activity = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - } - } - random = { - chance = 50 - - custom_tooltip = ep3_camp_party.1005.a.tt.positive - trigger_event = ep3_camp_party.1006 - } - } - if = { #Boost chance for lavish - limit = { - involved_activity = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - random = { - chance = 80 - - custom_tooltip = ep3_camp_party.1005.a.tt.positive - trigger_event = ep3_camp_party.1006 - } - } - - stress_impact = { - calm = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #Search for them - option = { - name = ep3_camp_party.1005.b - - duel = { - skills = { learning martial } - value = medium_skill_rating - - # You find them - 50 = { - desc = ep3_camp_party.1005.b.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1005.b.success - left_icon = root - right_icon = scope:wanderer - - if = { - limit = { - NOT = { - has_trait = lifestyle_hunter - } - } - add_trait = lifestyle_hunter - } - - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = { 3 8 } - } - - reverse_add_opinion = { - target = scope:wanderer - modifier = grateful_opinion - opinion = 15 - } - - scope:activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - } - } - # You find some berries - 50 = { - desc = ep3_camp_party.1005.b.neutral - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1005.b.neutral - left_icon = root - right_icon = scope:attendee - - domicile = { - change_provisions = microscopic_provisions_gain - } - - scope:wanderer = { - random = { - chance = 35 - add_trait = lifestyle_gardener - } - } - } - } - # You don't find them, and have a tangle with a wild animal - 50 = { - desc = ep3_camp_party.1005.b.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1005.b.failure - left_icon = root - right_icon = scope:wanderer - - add_prestige = miniscule_prestige_loss - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 1 - } - } - } - - #They'll come back, no worries - option = { - name = ep3_camp_party.1005.c - - random_list = { - #They find their way back - 50 = { - desc = ep3_camp_party.1005.c.success - - send_interface_toast = { - title = ep3_camp_party.1005.c.success - left_icon = root - right_icon = scope:wanderer - - scope:wanderer = { - add_stress = miniscule_stress_loss - } - - scope:activity = { activity_special_type_progression_variable = { NUM = 10 } } - custom_tooltip = camp_party_tt_positive_tiny - } - } - #They find their way back, wounded - 50 = { - desc = ep3_camp_party.1005.c.failure - - send_interface_toast = { - title = ep3_camp_party.1005.c.failure - left_icon = root - right_icon = scope:wanderer - - scope:wanderer = { - increase_wounds_no_death_effect = { REASON = wild_animal } - } - } - } - # They are lost forever - 10 = { - desc = ep3_camp_party.1005.c.critfailure - - send_interface_toast = { - title = ep3_camp_party.1005.c.critfailure - left_icon = root - right_icon = scope:attendee - - scope:wanderer = { - move_to_pool = yes - } - } - } - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_energy = -1 - } - } - } -} - -# Followup to 1005: some wanderers join! -ep3_camp_party.1006 = { - type = activity_event - title = ep3_camp_party.1006.t - desc = ep3_camp_party.1006.desc - theme = landless_adventurer - left_portrait = { - character = root - animation = ecstasy - } - right_portrait = { - character = scope:newcomer - animation = obsequious_bow - } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - } - if = { - limit = { - any_pool_character = { - province = root.location - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = root.location - limit = { - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = newcomer - } - } - else = { - create_character = { - template = bandit_character - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = newcomer - } - } - hidden_effect = { - scope:newcomer = { - add_trait = lifestyle_physician - add_trait_xp = { - trait = lifestyle_physician - value = { - integer_range = { - min = 50 - max = 100 - } - } - } - add_trait = lifestyle_traveler - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = { - integer_range = { - min = 25 - max = 75 - } - } - } - } - } - domicile = { - change_provisions = miniscule_provisions_gain - } - } - - #Join, and stay! - option = { - name = ep3_camp_party.1006.a - - scope:newcomer = { - add_to_activity = scope:activity - } - add_courtier = scope:newcomer - - scope:activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - stress_impact = { - calm = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #Come join the revelries, and teach me how you survive in the wilderness - option = { - name = ep3_camp_party.1006.b - - scope:newcomer = { - add_to_activity = scope:activity - } - - scope:activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - if = { - limit = { - NOT = { - has_trait = lifestyle_physician - } - } - add_trait = lifestyle_physician - } - - add_trait_xp = { - trait = lifestyle_physician - value = { 15 30 } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 1 - } - } - } -} - -# Solve a riddle -ep3_camp_party.1010 = { - type = activity_event - title = ep3_camp_party.1010.t - desc = { - desc = ep3_camp_party.1010.desc - random_valid = { - triggered_desc = { - trigger = { has_character_flag = 1010_first_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_01 - } - triggered_desc = { - trigger = { has_character_flag = 1010_second_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_02 - } - triggered_desc = { - trigger = { has_character_flag = 1010_third_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_03 - } - triggered_desc = { - trigger = { has_character_flag = 1010_fourth_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_04 - } - triggered_desc = { - trigger = { has_character_flag = 1010_fifth_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_05 - } - triggered_desc = { - trigger = { has_character_flag = 1010_sixth_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_06 - } - triggered_desc = { - trigger = { has_character_flag = 1010_seventh_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_07 - } - triggered_desc = { - trigger = { has_character_flag = 1010_eighth_riddle_answer } - desc = ep3_camp_party.1010.desc_riddle_08 - } - } - desc = ep3_camp_party.1010.desc_outro - } - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:riddler - animation = drink - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - any_attending_character = { - count > 1 - this != root - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = riddler - } - } - random_list = { - 1 = { add_character_flag = 1010_first_riddle_answer } - 1 = { add_character_flag = 1010_second_riddle_answer } - 1 = { add_character_flag = 1010_third_riddle_answer } - 1 = { add_character_flag = 1010_fourth_riddle_answer } - 1 = { add_character_flag = 1010_fifth_riddle_answer } - 1 = { add_character_flag = 1010_sixth_riddle_answer } - 1 = { add_character_flag = 1010_seventh_riddle_answer } - 1 = { add_character_flag = 1010_eighth_riddle_answer } - } - } - - #I'm big brained and know the answer - option = { - name = ep3_camp_party.1010.a - - trigger = { - OR = { - has_trait = intellect_good - has_trait = shrewd - } - } - - reverse_add_opinion = { - target = scope:riddler - modifier = disappointed_opinion - opinion = -5 - } - - add_prestige = medium_prestige_gain - - if = { - limit = { - has_trait = tourney_participant - } - add_trait_xp = { - trait = tourney_participant - track = wit - value = tournament_hastiludes_xp_gain_medium_value - } - } - else = { - add_trait = tourney_participant - add_trait_xp = { - trait = tourney_participant - track = wit - value = tournament_hastiludes_xp_gain_medium_value - } - } - - stress_impact = { - arrogant = medium_stress_impact_loss - impatient = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - patient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #Hmm, well, what about this guess? - option = { - name = ep3_camp_party.1010.b - - duel = { - skill = learning - value = medium_skill_rating - # Success: You guessed right - 50 = { - desc = ep3_camp_party.1010.b.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1010.b.success.title #Used for supplying the actual answer - left_icon = root - right_icon = scope:riddler - - add_prestige = medium_prestige_gain - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - add_opinion = { - target = root - modifier = impressed_opinion - opinion = 5 - } - } - } - } - } - # Failure: You guessed wrong - 50 = { - desc = ep3_camp_party.1010.b.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1010.b.failure - left_icon = root - right_icon = scope:riddler - - add_prestige = minor_prestige_loss - scope:riddler = { - add_stress = miniscule_stress_loss - } - } - } - } - - stress_impact = { - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - gregarious = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - } - } - } - - #No idea, want a drink? - option = { - name = ep3_camp_party.1010.c - - flavor = ep3_camp_party.1010.c.tt - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - stress_impact = { - arrogant = medium_stress_impact_gain - impatient = medium_stress_impact_gain - humble = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - after = { - remove_character_flag ?= 1010_first_riddle_answer - remove_character_flag ?= 1010_second_riddle_answer - remove_character_flag ?= 1010_third_riddle_answer - remove_character_flag ?= 1010_fourth_riddle_answer - remove_character_flag ?= 1010_fifth_riddle_answer - remove_character_flag ?= 1010_sixth_riddle_answer - remove_character_flag ?= 1010_seventh_riddle_answer - remove_character_flag ?= 1010_eighth_riddle_answer - } -} - -# An archery contest breaks out -ep3_camp_party.1015 = { - type = activity_event - title = ep3_camp_party.1015.t - desc = ep3_camp_party.1015.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = interested - } - right_portrait = { - character = scope:archer - animation = hunting_shortbow_rest_arrow_default - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - any_attending_character = { - count > 1 - this != root - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = archer - } - } - - if = { - limit = { - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - involved_activity = { - random_attending_character = { - limit = { - NOR = { - this = root - this = scope:archer - } - is_ai = yes - is_adult = yes - } - save_scope_as = apple_holder - } - } - } - } - - #Use apples as targets - option = { - name = ep3_camp_party.1015.a - - trigger = { - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - any_attending_character = { - count > 2 - this != root - is_ai = yes - is_adult = yes - } - } - } - - add_internal_flag = special - - flavor = ep3_camp_party.1015.a.tt - - domicile = { - change_provisions = microscopic_provisions_loss - } - - duel = { - skill = prowess - target = scope:archer - # Success: You hit - 30 = { - desc = ep3_camp_party.1015.a.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1015.a.success - left_icon = root - right_icon = scope:archer - - add_prestige = major_prestige_gain - if = { - limit = { - has_trait = tourney_participant - } - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - else = { - add_trait = tourney_participant - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - scope:archer = { - pay_short_term_gold = { - target = root - gold = tiny_gold_value - } - } - } - } - # Failure: You miss - 40 = { - desc = ep3_camp_party.1015.a.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1015.a.failure - left_icon = root - right_icon = scope:archer - - pay_short_term_gold = { - target = scope:archer - gold = tiny_gold_value - } - - scope:archer = { - add_prestige = medium_prestige_gain - if = { - limit = { - has_trait = tourney_participant - } - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - else = { - add_trait = tourney_participant - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - } - } - } - # Failure: You REALLY miss - 10 = { - desc = ep3_camp_party.1015.a.critfailure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1015.a.critfailure - left_icon = root - right_icon = scope:apple_holder - - scope:apple_holder = { - if = { - limit = { - NOT = { - has_trait = one_eyed - } - } - add_trait = one_eyed - } - else = { - increase_wounds_no_death_effect = { REASON = wounds } - } - add_opinion = { - target = root - modifier = maimed_me - opinion = -50 - } - } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = medium_stress_impact_gain - callous = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - } - } - - #Why don't we make this into a hunting competition? - option = { - name = ep3_camp_party.1015.b - - random_list = { - 10 = { - desc = ep3_camp_party.1015.b.success - modifier = { #If you're both good - add = 5 - AND = { - scope:archer = { - prowess > 10 - } - prowess > 10 - } - } - modifier = { #If at least one of you is good - add = 5 - OR = { - scope:archer = { - prowess > 10 - } - prowess > 10 - } - } - - send_interface_toast = { - title = ep3_camp_party.1015.b.success - left_icon = root - right_icon = scope:archer - - domicile = { - change_provisions = { miniscule_provisions_gain medium_provisions_gain } - } - if = { - limit = { - has_trait = lifestyle_hunter - } - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = tournament_hastiludes_xp_gain_major_value - } - } - else = { - add_trait = lifestyle_hunter - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = tournament_hastiludes_xp_gain_major_value - } - } - } - } - 10 = { - desc = ep3_camp_party.1015.b.failure - send_interface_toast = { - title = ep3_camp_party.1015.b.failure - left_icon = root - right_icon = scope:archer - - if = { - limit = { - has_trait = lifestyle_hunter - } - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = tournament_hastiludes_xp_gain_medium_value - } - } - else = { - add_trait = lifestyle_hunter - add_trait_xp = { - trait = lifestyle_hunter - track = hunter - value = tournament_hastiludes_xp_gain_medium_value - } - } - - add_prestige = minor_prestige_loss - add_stress = minor_stress_gain - } - } - 1 = { - desc = ep3_camp_party.1015.b.critfailure - send_interface_toast = { - title = ep3_camp_party.1015.b.critfailure - left_icon = root - right_icon = scope:archer - - increase_wounds_no_death_effect = { REASON = wounds } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #Come, then! - option = { - name = ep3_camp_party.1015.c - - trigger = { - involved_activity = { - NOR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - - duel = { - skill = prowess - target = scope:archer - # Success: You win - 50 = { - desc = ep3_camp_party.1015.c.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1015.c.success - left_icon = root - right_icon = scope:archer - - add_prestige = medium_prestige_gain - if = { - limit = { - has_trait = tourney_participant - } - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - else = { - add_trait = tourney_participant - add_trait_xp = { - trait = tourney_participant - track = bow - value = tournament_hastiludes_xp_gain_major_value - } - } - } - } - # Failure: You lose - 50 = { - desc = ep3_camp_party.1015.c.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1015.c.failure - left_icon = root - right_icon = scope:archer - - add_stress = miniscule_stress_gain - scope:archer = { - add_prestige = medium_prestige_gain - } - } - } - } - - stress_impact = { - patient = minor_stress_impact_gain - impatient = miniscule_stress_impact_loss - brave = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - - #Ah, you're better than me, let's just sit and talk shall we? - option = { - name = ep3_camp_party.1015.d - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - reverse_add_opinion = { - target = scope:archer - modifier = pleased_opinion - opinion = 25 - } - - stress_impact = { - arrogant = minor_stress_impact_gain - impatient = minor_stress_impact_gain - humble = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } -} - -# A local turns up -ep3_camp_party.1020 = { - type = activity_event - title = ep3_camp_party.1020.t - desc = { - desc = ep3_camp_party.1020.opening - first_valid = { - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = witch_flag - } - } - desc = ep3_camp_party.1020.witch - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = cannibal_flag - } - } - desc = ep3_camp_party.1020.cannibal - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = mangled_flag - } - } - desc = ep3_camp_party.1020.mangled - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = mystic_flag - } - } - desc = ep3_camp_party.1020.mystic - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = siblings_flag - } - } - desc = ep3_camp_party.1020.siblings - } - } - triggered_desc = { - trigger = { - scope:local = { - NOT = { - has_character_flag = siblings_flag - } - } - } - desc = ep3_camp_party.1020.ending - } - } - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = shock - } - center_portrait = { - trigger = { - exists = scope:local_sibling - } - character = scope:local_sibling - animation = sick - camera = camera_event_left_forward - } - right_portrait = { - character = scope:local - animation = beg - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - } - - random_list = { - 2 = { #Normal pool character - trigger = { - any_pool_character = { - province = root.location - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = root.location - limit = { - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local - } - } - 1 = { - create_character = { - template = bp1_yearly_2021_learning_witch_template - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = local - } - hidden_effect = { - scope:local = { - add_character_flag = witch_flag - } - } - } - 1 = { - create_character = { - template = generic_peasant_character - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = local - } - hidden_effect = { - scope:local = { - add_secret = { type = secret_cannibal } - add_character_flag = cannibal_flag - } - } - } - 1 = { - create_character = { - template = generic_peasant_character - culture = location.culture - faith = location.faith - location = root.location - age = { 20 30 } - save_scope_as = local - } - hidden_effect = { - scope:local = { - random_list = { - 1 = { #Cowhig Croft 'em - add_trait = one_eyed - add_trait = one_legged - add_trait = scarred - add_trait_xp = { - trait = scarred - value = { - integer_range = { - min = 50 - max = 100 - } - } - } - add_learning_skill = { 5 15 } - add_diplomacy_skill = { 5 15 } - add_character_flag = mangled_flag - } - 1 = { #'Yes it is', not 'that it be' - add_trait = lifestyle_mystic - add_trait_xp = { - trait = lifestyle_mystic - value = { - integer_range = { - min = 50 - max = 100 - } - } - } - add_trait = lifestyle_herbalist - set_age = { 35 60 } - add_character_flag = mystic_flag - } - 1 = { #Someone suspiciously close to their sibling, whose parents have mysteriously just died... - create_character = { #Make their dad - template = generic_peasant_character - gender = male - culture = location.culture - faith = location.faith - location = root.location - age = { 50 70 } - save_scope_as = local_dad - } - create_character = { #Make their mum - template = generic_female_peasant_character - gender = female - culture = location.culture - faith = location.faith - location = root.location - age = { 50 70 } - save_scope_as = local_mum - } - - scope:local_dad = { - death = { death_reason = death_mysterious } - } - scope:local_mum = { - death = { death_reason = death_mysterious } - } - - #Now back to the person at hand - set_sexuality = bisexual #No, this isn't a statement on the inherently incestuous nature of bisexuals, I just don't want to have to set up all the cascading checks for brother/brother, brother/sister, sister/sister for what is a throwaway part of an event. OK?! (ㆆ_ㆆ) - add_secret = { type = secret_incest } - set_father = scope:local_dad - set_mother = scope:local_mum - add_character_flag = siblings_flag - - #Make them a good character that you want to have, so giving us plenty of intrigue later on - random_list = { - 10 = { add_trait = beauty_good_1 } - 10 = { add_trait = beauty_good_2 } - 10 = { add_trait = physique_good_1 } - 10 = { add_trait = physique_good_2 } - 1 = { add_trait = fecund } - 5 = { add_trait = strong } - 5 = { add_trait = shrewd } - } - - #And now to their sibling - create_character = { - template = generic_peasant_character - culture = location.culture - faith = location.faith - location = root.location - age = { 20 30 } - save_scope_as = local_sibling - } - scope:local_sibling = { - set_sexuality = bisexual #Same goes here! - set_father = scope:local_dad - set_mother = scope:local_mum - set_relation_lover = { target = scope:local } - random_list = { #As above - 10 = { add_trait = beauty_good_1 } - 10 = { add_trait = beauty_good_2 } - 10 = { add_trait = physique_good_1 } - 10 = { add_trait = physique_good_2 } - 1 = { add_trait = fecund } - 5 = { add_trait = strong } - 5 = { add_trait = shrewd } - } - } - - random_list = { #Did they kill their parents? - 5 = { #First one did - add_trait = kinslayer_3 - } - 5 = { #Second one did - scope:local_sibling = { - add_trait = kinslayer_3 - } - } - 20 = { #They BOTH did! - add_trait = kinslayer_3 - scope:local_sibling = { - add_trait = kinslayer_3 - } - } - } - } - } - } - } - } - } - } - - #Invite them in - option = { - name = ep3_camp_party.1020.a - - domicile = { - change_provisions = minor_provisions_loss - } - - add_courtier = scope:local - reverse_add_opinion = { - target = scope:local - modifier = grateful_opinion - opinion = 50 - } - if = { - limit = { - exists = scope:local_sibling - } - add_courtier = scope:local_sibling - reverse_add_opinion = { - target = scope:local_sibling - modifier = grateful_opinion - opinion = 50 - } - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = medium_stress_impact_gain - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #Give them food - option = { - name = ep3_camp_party.1020.b - - domicile = { - change_provisions = miniscule_provisions_loss - } - - add_piety = medium_piety_gain - - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - add_opinion = { - target = root - modifier = charity_opinion - opinion = 15 - } - } - } - - stress_impact = { - just = miniscule_stress_impact_loss - generous = miniscule_stress_impact_loss - greedy = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - } - } - } - - #Something's off about them; turn them away - option = { - name = ep3_camp_party.1020.c - - domicile = { - change_provisions = miniscule_provisions_gain - } - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - trigger_event = ep3_camp_party.1021 - - stress_impact = { - paranoid = medium_stress_impact_loss - compassionate = medium_stress_impact_gain - trusting = minor_stress_impact_gain - callous = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -# Resolution event to the previous -ep3_camp_party.1021 = { - type = activity_event - title = ep3_camp_party.1021.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - has_trait = callous - has_trait = paranoid - } - } - desc = ep3_camp_party.1021.callous - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = witch_flag - } - } - desc = ep3_camp_party.1021.witch - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = cannibal_flag - } - } - desc = ep3_camp_party.1021.cannibal - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = mangled_flag - } - } - desc = ep3_camp_party.1021.mangled - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = mystic_flag - } - } - desc = ep3_camp_party.1021.mystic - } - triggered_desc = { - trigger = { - scope:local = { - has_character_flag = siblings_flag - } - } - desc = ep3_camp_party.1021.siblings - } - triggered_desc = { - desc = ep3_camp_party.1021.normal - } - } - } - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = paranoid - } - } - animation = dismissal - } - triggered_animation = { - trigger = { - scope:local = { - OR = { - has_character_flag = siblings_flag - has_character_flag = mystic_flag - } - } - } - animation = grief - } - triggered_animation = { - trigger = { - NOR = { - has_trait = callous - has_trait = paranoid - } - } - animation = worry - } - } - center_portrait = { - trigger = { - exists = scope:local_sibling - } - character = scope:local_sibling - animation = shock - camera = camera_event_left_forward - } - right_portrait = { - character = scope:local - animation = anger - } - cooldown = { months = 3 } - - option = { - name = { - trigger = { - scope:local = { - has_character_flag = siblings_flag - } - } - text = ep3_camp_party.1021.a.face - } - name = { - trigger = { - scope:local = { - has_character_flag = mystic_flag - } - } - text = ep3_camp_party.1021.a.ill - } - name = { - trigger = { - scope:local = { - NOR = { - has_character_flag = siblings_flag - has_character_flag = mystic_flag - } - } - } - text = ep3_camp_party.1021.a.sad - } - - trigger = { - NOR = { - has_trait = callous - has_trait = paranoid - } - } - - if = { #If you turn away the witch, they turn one of your people into one - limit = { - scope:local = { - has_character_flag = witch_flag - } - } - hidden_effect = { - involved_activity = { - random_attending_character = { - limit = { - this != root - } - add_secret = { type = secret_witch } - } - } - } - } - else_if = { #Or a cannibal - limit = { - scope:local = { - has_character_flag = cannibal_flag - } - } - hidden_effect = { - involved_activity = { - random_attending_character = { - limit = { - this != root - } - add_secret = { type = secret_cannibal } - } - } - } - } - else_if = { #If you turn away the mangled man, everyone just feels bad - limit = { - scope:local = { - has_character_flag = mangled_flag - } - } - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - add_opinion = { - target = root - modifier = guilty_opinion - opinion = -25 - } - add_stress = minor_stress_gain - } - random_attending_character = { - limit = { - NOR = { - this = root - has_trait = loyal - has_trait = sadistic - has_trait = callous - } - } - random = { - chance = 75 - add_trait = disloyal - } - } - } - } - else_if = { #The mystic poisons you - limit = { - scope:local = { - has_character_flag = mystic_flag - } - } - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - else_if = { #The siblings attack you - limit = { - scope:local = { - has_character_flag = siblings_flag - } - } - random_list = { - 10 = { - modifier = { - employs_court_position = court_physician_court_position - add = 5 - } - increase_wounds_no_death_effect = { REASON = fight } - } - 3 = { - add_trait = one_eyed - } - } - } - else = { - if = { - limit = { - NOT = { - has_character_modifier = ep3_uneasy_modifier - } - } - add_character_modifier = { - modifier = ep3_uneasy_modifier - years = 3 - } - } - } - - stress_impact = { - base = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - option = { - name = ep3_camp_party.1021.b - - trigger = { - OR = { - has_trait = callous - has_trait = paranoid - } - } - - add_stress = medium_stress_loss - } - - after = { - scope:local = { - remove_character_flag = witch_flag - remove_character_flag = cannibal_flag - remove_character_flag = mangled_flag - remove_character_flag = mystic_flag - remove_character_flag = siblings_flag - } - } -} - -# Bond with your intent target -ep3_camp_party.1025 = { - type = activity_event - title = ep3_camp_party.1025.t - desc = ep3_camp_party.1025.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = ecstasy - } - right_portrait = { - character = scope:friend - animation = storyteller - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - has_activity_intent = befriend_attendee_intent - intent_target ?= { - is_alive = yes - this != root - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - } - intent_target = { save_scope_as = friend } - } - - #No, no, tell me more! - option = { - name = ep3_camp_party.1025.a - - trigger = { - OR = { - has_relation_potential_friend = scope:friend - has_trait = diplomat - has_trait = gregarious - diplomacy > 15 - number_of_personality_traits_in_common = { - target = scope:friend - value >= 2 - } - number_of_traits_in_common = { - target = scope:friend - value >= 3 - } - } - } - - set_relation_friend = { - target = scope:friend - reason = friend_listened_to_story - } - complete_activity_intent = yes - - stress_impact = { - arrogant = minor_stress_impact_gain - humble = minor_stress_impact_loss - callous = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #I do! I did stuff like... - option = { - name = ep3_camp_party.1025.b - - duel = { - skill = diplomacy - value = medium_skill_rating - # Success: You pluck a memory out of thin air - 50 = { - desc = ep3_camp_party.1025.b.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1025.b.success - left_icon = root - right_icon = scope:friend - - progress_towards_friend_effect = { - REASON = friend_bonded_over_story - CHARACTER = scope:friend - OPINION = default_friend_opinion - } - if = { - limit = { - has_relation_friend = scope:friend - } - complete_activity_intent = yes - } - } - } - # Failure: You had a boring childhood, apparently - 50 = { - desc = ep3_camp_party.1025.b.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1025.b.failure - left_icon = root - right_icon = scope:friend - - reverse_add_opinion = { - target = scope:friend - modifier = disappointed_opinion - opinion = -20 - } - } - } - } - - stress_impact = { - impatient = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_loss - patient = miniscule_stress_impact_gain - honest = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #...how about a topic change? - option = { - name = ep3_camp_party.1025.c - - flavor = ep3_camp_party.1025.c.tt - - random = { - chance = 50 - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } -} - -# Relieve stress - intent event -ep3_camp_party.1030 = { - type = activity_event - title = ep3_camp_party.1030.t - desc = ep3_camp_party.1030.desc - theme = landless_adventurer - left_portrait = { - character = root - animation = drink - } - right_portrait = { - character = scope:reveler - animation = lantern - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - has_activity_intent = reduce_stress_intent - involved_activity = { - any_attending_character = { - count > 1 - this != root - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = reveler - } - } - } - - # Crack out all the reserves lads! - option = { - name = ep3_camp_party.1030.a - - trigger = { - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - - add_internal_flag = special - - if = { - limit = { - has_trait = lifestyle_reveler - } - add_trait_xp = { - trait = lifestyle_reveler - value = { 10 25 } - } - } - else = { - add_trait = lifestyle_reveler - add_trait_xp = { - trait = lifestyle_reveler - value = { 10 25 } - } - } - - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 20 - } - add_stress = medium_stress_loss - } - } - - domicile = { - change_provisions = medium_provisions_loss - } - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - stress_impact = { - base = major_stress_impact_loss - temperate = miniscule_stress_impact_gain - gluttonous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -1 - } - } - } - - # Let's live a little - downgraded version of option A - option = { - name = ep3_camp_party.1030.b - - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 5 - } - add_stress = miniscule_stress_loss - } - } - - domicile = { - change_provisions = minor_provisions_loss - } - - random = { - chance = 30 - send_interface_toast = { - title = ep3_camp_party.1030.b.success - left_icon = root - - add_character_modifier = { - modifier = ep3_life_of_the_party - years = 10 - } - } - } - - scope:activity = { activity_special_type_progression_variable = { NUM = 10 } } - custom_tooltip = camp_party_tt_positive_tiny - - stress_impact = { - base = minor_stress_impact_loss - gluttonous = miniscule_stress_impact_gain - temperate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - #We should be sensible - option = { - name = ep3_camp_party.1030.c - - add_character_modifier = { - modifier = ep3_sensible_provisions - years = 10 - } - - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - limit = { - this != root - } - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -5 - } - } - } - - stress_impact = { - temperate = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_loss - honest = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - -# Fell a tree for more firewood -ep3_camp_party.1035 = { - type = activity_event - title = ep3_camp_party.1035.t - desc = ep3_camp_party.1035.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:treefeller - animation = aggressive_axe - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - location = { - NOR = { - terrain = desert - terrain = desert_mountains - terrain = mountains - } - } - } - - immediate = { - location = { - save_scope_as = location - } - involved_activity = { - save_scope_as = activity - random_attending_character = { - limit = { - this != root - is_ai = yes - is_adult = yes - } - save_scope_as = treefeller - } - } - } - - # Burn some old barrels and crates - option = { - name = ep3_camp_party.1035.a - - trigger = { - involved_activity = { - OR = { - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_simple - } - has_activity_option = { - category = camp_party_option_food - option = camp_party_food_lavish - } - } - } - } - - add_internal_flag = special - - if = { - limit = { - NOT = { - has_trait = shrewd - } - } - random = { - chance = 25 - send_interface_toast = { - title = ep3_camp_party.1035.a.success - left_icon = root - - add_trait = shrewd - } - } - } - else = { - add_stewardship_lifestyle_perk_points = 1 - } - - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - add_character_modifier = { - modifier = ep3_warm_and_content - years = 3 - } - } - } - - domicile = { - change_provisions = medium_provisions_loss - } - - stress_impact = { - greedy = miniscule_stress_impact_gain - generous = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - callous = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -1 - } - } - } - - # Fell a tree - option = { - name = ep3_camp_party.1035.b - - duel = { - skill = prowess - value = medium_skill_rating - # Success: Your story is believed - 50 = { - desc = ep3_camp_party.1035.b.success - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1035.b.success - left_icon = root - right_icon = scope:treefeller - - add_prestige = medium_prestige_gain - involved_activity = { - every_attending_character = { - custom = custom.every_attending_character - add_character_modifier = { - modifier = ep3_warm_and_content - years = 1 - } - } - } - - domicile = { - change_provisions = miniscule_provisions_gain - } - } - } - # Failure - 50 = { - desc = ep3_camp_party.1035.b.failure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1035.b.failure - left_icon = root - right_icon = scope:treefeller - - add_prestige = minor_prestige_loss - } - } - # Crit Failure - 10 = { - desc = ep3_camp_party.1035.b.critfailure - show_chance = yes - - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - title = ep3_camp_party.1035.b.critfailure - left_icon = root - right_icon = scope:treefeller - - add_prestige = medium_prestige_loss - increase_wounds_no_death_effect = { REASON = accident } - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - paranoid = miniscule_stress_impact_gain - trusting = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - # Scrabble around in the brush for some twigs - option = { - name = ep3_camp_party.1035.c - - domicile = { - change_provisions = microscopic_provisions_gain - } - - reverse_add_opinion = { - target = scope:treefeller - modifier = disappointed_opinion - opinion = -20 - } - - stress_impact = { - temperate = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_loss - honest = miniscule_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - -# Encounter a wandering merchant -ep3_camp_party.1040 = { - type = activity_event - title = ep3_camp_party.1040.t - desc = ep3_camp_party.1040.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:merchant - animation = scheme - } - artifact = { - target = scope:big_artifact - position = lower_left_portrait - } - artifact = { - target = scope:small_artifact - position = lower_center_portrait - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - drinks_alcohol_trigger = yes - } - - immediate = { - location = { - save_scope_as = location - } - if = { - limit = { - any_pool_character = { - province = root.location - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = root.location - limit = { - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = merchant - } - } - else = { - create_character = { - template = merchant_template - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = merchant - } - } - scope:merchant = { - hidden_effect = { - random_list = { #Generate a big artifact - 10 = { - random_dummy_gender_effect = yes - create_artifact_weapon_effect = { - OWNER = scope:merchant - CREATOR = scope:dummy_gender - SET_WEAPON_TYPE = flag:artifact_weapon_type_sword - } - hidden_effect = { - scope:newly_created_artifact ?= { - save_scope_as = big_artifact - add_artifact_modifier = artifact_negate_prowess_penalty_add_3_modifier - set_artifact_rarity = famed - } - } - } - 10 = { - random_dummy_gender_effect = yes - create_artifact_regalia_effect = { - OWNER = scope:merchant - SMITH = scope:dummy_gender - } - hidden_effect = { - scope:newly_created_artifact ?= { - save_scope_as = big_artifact - add_artifact_modifier = artifact_monthly_prestige_add_3_modifier - set_artifact_rarity = famed - } - } - } - 2 = { #Chance of it being amazing - random_dummy_gender_effect = yes - create_artifact_armor_effect = { - OWNER = scope:merchant - CREATOR = scope:dummy_gender - SET_ARMOR_TYPE = flag:armor_type_scale - } - hidden_effect = { - scope:newly_created_artifact ?= { - save_scope_as = big_artifact - add_artifact_modifier = artifact_prowess_5_modifier - add_artifact_modifier = artifact_knight_effectiveness_5_modifier - add_artifact_modifier = artifact_hard_casualty_modifier_5_modifier - add_artifact_modifier = artifact_courtier_and_guest_opinion_5_modifier - set_artifact_rarity = illustrious - set_artifact_name = resplendent_armour_name - set_artifact_description = resplendent_armour_desc - } - } - } - } - random_list = { - 10 = { - random_dummy_gender_effect = yes - create_artifact_brooch_effect = { - OWNER = scope:owner - SMITH = scope:dummy_gender - } - scope:newly_created_artifact ?= { - save_scope_as = small_artifact - } - } - 10 = { - random_dummy_gender_effect = yes - create_artifact_book_effect = { - OWNER = scope:owner - CREATOR = scope:dummy_gender - SET_SUBJECT = flag:no - SET_TOPIC = flag:no - } - scope:newly_created_artifact ?= { - save_scope_as = small_artifact - } - } - } - } - } - } - - # Buy a big shiny thing - option = { - name = ep3_camp_party.1040.a - - pay_short_term_gold = { - target = scope:merchant - gold = major_gold_value - } - - scope:big_artifact = { - set_owner = root - } - - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - stress_impact = { - greedy = minor_stress_impact_gain - generous = minor_stress_impact_loss - temperate = miniscule_stress_impact_gain - profligate = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - # Buy a small item - option = { - name = ep3_camp_party.1040.b - - pay_short_term_gold = { - target = scope:merchant - gold = tiny_gold_value - } - - scope:small_artifact = { - set_owner = root - } - - scope:activity = { activity_special_type_progression_variable = { NUM = 10 } } - custom_tooltip = camp_party_tt_positive_tiny - - stress_impact = { - greedy = miniscule_stress_impact_gain - generous = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - } - } - } - - # Tell them to sod off - option = { - name = ep3_camp_party.1040.c - - add_character_modifier = { - modifier = ep3_responsible_with_money - years = 10 - } - - reverse_add_opinion = { - target = scope:merchant - modifier = disappointed_opinion - opinion = -20 - } - - stress_impact = { - temperate = miniscule_stress_impact_loss - greedy = minor_stress_impact_loss - generous = minor_stress_impact_gain - profligate = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - - -################################ -# Events -################################ -# ep3_camp_party.2000 - Choose which same-trait follower to chat with -# - -scripted_trigger 2000_adult_ai_follower_trigger = { - this != root - is_ai = yes - is_adult = yes -} - -scripted_trigger 2000_suitable_follower_for_conversation_trigger = { - 2000_adult_ai_follower_trigger = yes - NOR = { - has_relation_rival = root - has_relation_best_friend = root - } -} - -scripted_trigger 2000_has_same_personality_trait_as_root_trigger = { - has_trait_category = personality - root = { has_trait = prev } #The aforementioned trait -} - - -#Choose which same-trait follower to chat with -ep3_camp_party.2000 = { - type = activity_event - title = ep3_camp_party.2000.t - desc = ep3_camp_party.2000.desc - theme = landless_adventurer - override_background = { reference = ep3_campfire } - left_portrait = { - character = root - animation = thinking - } - center_portrait = { - character = scope:first_follower - animation = drink - } - right_portrait = { - character = scope:second_follower - animation = happiness - } - cooldown = { months = 3 } - - trigger = { - #Standard checks - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - involved_activity = { - #At least 3 peeps - any_attending_character = { count >= 3 } - #First person with a trait in common with ROOT - any_attending_character = { - 2000_suitable_follower_for_conversation_trigger = yes - any_character_trait = { - 2000_has_same_personality_trait_as_root_trigger = yes - save_temporary_scope_as = trait_check - } - save_temporary_scope_as = first_follower_check - } - #Second person with a trait in common with ROOT - any_attending_character = { - 2000_suitable_follower_for_conversation_trigger = yes - this != scope:first_follower_check - #NOT the same trait as the first person - custom_tooltip = { #This is an error suppression, known by Code already - text = ep3_camp_party.2000.t - any_character_trait = { - 2000_has_same_personality_trait_as_root_trigger = yes - this != scope:trait_check #the trait - } - } - save_temporary_scope_as = second_follower_check - } - #Random joe for loc in case we got the deceitful trait - any_attending_character = { - 2000_adult_ai_follower_trigger = yes - NOR = { - this = scope:first_follower_check - this = scope:second_follower_check - } - } - } - } - immediate = { - involved_activity = { - #First person with a trait in common with ROOT - random_attending_character = { - limit = { - 2000_suitable_follower_for_conversation_trigger = yes - any_character_trait = { 2000_has_same_personality_trait_as_root_trigger = yes } - } - save_scope_as = first_follower - random_character_trait = { - limit = { 2000_has_same_personality_trait_as_root_trigger = yes } - root = { - set_variable = { - name = first_follower_trait_var - value = prev #the trait - } - } - } - } - #Second person with a trait in common with ROOT - random_attending_character = { - limit = { - 2000_suitable_follower_for_conversation_trigger = yes - #NOT the same trait as the first person - any_character_trait = { - 2000_has_same_personality_trait_as_root_trigger = yes - NOT = { var:first_follower_trait_var ?= prev } #the trait - } - this != scope:first_follower - } - save_scope_as = second_follower - random_character_trait = { - limit = { - 2000_has_same_personality_trait_as_root_trigger = yes - NOT = { var:first_follower_trait_var ?= prev } #the trait - } - root = { - set_variable = { - name = second_follower_trait_var - value = prev #the trait - } - } - } - } - #Random joe for loc in case we got the deceitful trait - random_attending_character = { - limit = { - 2000_adult_ai_follower_trigger = yes - NOR = { - this = scope:first_follower - this = scope:second_follower - } - } - save_scope_as = other_follower - } - } - #For deceitful loc - random_dummy_gender_effect = yes - } - #Focus on first follower - option = { - name = ep3_camp_party.2000.a - reverse_add_opinion = { - target = scope:first_follower - modifier = camp_party_listened_to_me_opinion - opinion = 20 - } - random = { - chance = 40 - progress_towards_friend_effect = { - REASON = friend_bonded_over_personalities - CHARACTER = scope:first_follower - OPINION = 20 - } - } - ai_chance = { base = 100 } - } - #Focus on second follower - option = { - name = ep3_camp_party.2000.b - reverse_add_opinion = { - target = scope:second_follower - modifier = camp_party_listened_to_me_opinion - opinion = 20 - } - random = { - chance = 40 - progress_towards_friend_effect = { - REASON = friend_bonded_over_personalities - CHARACTER = scope:second_follower - OPINION = 20 - } - } - ai_chance = { base = 100 } - } - #Triggered option: Let's debate! - option = { - name = ep3_camp_party.2000.c - trigger = { - domicile ?= { has_domicile_building = camp_fire_nightly_debates } - } - show_as_unavailable = { always = yes } - reason = has_building_camp_fire_nightly_debates - reverse_add_opinion = { - target = scope:first_follower - modifier = camp_party_listened_to_me_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:second_follower - modifier = camp_party_listened_to_me_opinion - opinion = 20 - } - random = { - chance = 20 - progress_towards_friend_effect = { - REASON = friend_bonded_over_personalities - CHARACTER = scope:second_follower - OPINION = 20 - } - } - random = { - chance = 20 - progress_towards_friend_effect = { - REASON = friend_bonded_over_personalities - CHARACTER = scope:second_follower - OPINION = 20 - } - } - random = { - chance = 20 - add_learning_skill = 1 - } - ai_chance = { base = 100 } - } - #Triggered option: celebrate our companionship! - option = { - name = ep3_camp_party.2000.d - trigger = { - custom_tooltip = { - text = ep3_camp_party.2000.d.tt - domicile ?= { has_domicile_building_or_higher = mess_tent_03 } - } - } - show_as_unavailable = { always = yes } - reason = has_building_mess_tent_03_or_higher - reverse_add_opinion = { - target = scope:first_follower - modifier = camp_party_reveled_opinion - opinion = 40 - } - reverse_add_opinion = { - target = scope:second_follower - modifier = camp_party_reveled_opinion - opinion = 40 - } - if = { - limit = { - NOT = { has_trait = lifestyle_reveler } - } - add_trait = lifestyle_reveler - } - else_if = { - limit = { - has_trait = lifestyle_reveler - NOT = { - has_trait_xp = { - trait = lifestyle_reveler - value >= 100 #Max - } - } - } - add_trait_xp = { - trait = lifestyle_reveler - value = { - integer_range = { - min = medium_trait_xp - max = major_trait_xp - } - } - } - } - else_if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else = { add_prestige = medium_prestige_gain } - stress_impact = { - base = minor_stress_impact_loss - gluttonous = minor_stress_impact_loss - } - involved_activity = { activity_special_type_progression_variable = { NUM = 15 } } - custom_tooltip = camp_party_tt_positive_medium - - ai_chance = { base = 100 } - } - after = { - remove_variable ?= first_follower_trait_var - remove_variable ?= second_follower_trait_var - } -} - -ep3_camp_party.2100 = { - type = activity_event - title = ep3_camp_party.2100.t - desc = { - random_valid = { - triggered_desc = { - trigger = { scope:char_spawn_type = flag:porters } #porters - himbos - desc = ep3_laamps.8200.desc_1 - } - triggered_desc = { - trigger = { scope:char_spawn_type = flag:fools } #capering fools - fools - desc = ep3_laamps.8200.desc_2 - } - triggered_desc = { - trigger = { scope:char_spawn_type = flag:locals } #hangers on - local ethos people - desc = ep3_laamps.8200.desc_3 - } - } - } - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:porters - } - animation = admiration - } - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:fools - } - animation = laugh - } - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:locals - } - animation = personality_rational - } - } - right_portrait = { - character = scope:new_person - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:porters - } - animation = hero_flex - } - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:fools - } - animation = dancing - } - triggered_animation = { - trigger = { - scope:char_spawn_type = flag:locals - } - animation = beg - } - triggered_outfit = { - trigger = { scope:char_spawn_type = flag:porters } - outfit_tags = { beggar_rags } - } - triggered_outfit = { - trigger = { scope:char_spawn_type = flag:fools } - outfit_tags = { jester_outfit } - } - } - - override_background = { - reference = ep3_campfire - } - - trigger = { - has_ep3_dlc_trigger = yes - has_government = landless_adventurer_government - has_activity_intent = fireside_chat_intent - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.5 - domicile ?= { - has_domicile_parameter = camp_recruit_porters_events - } - } - modifier = { - add = 0.5 - domicile ?= { - has_domicile_parameter = camp_recruit_fool_events - } - } - modifier = { - add = 0.5 - domicile ?= { - has_domicile_parameter = camp_recruit_locals_events - } - } - } - - immediate = { - location = { - save_scope_as = location - } - location.county = { - save_scope_as = location_county - } - location.county.holder.top_liege = { - save_scope_as = location_top_liege - } - random_list = { - 1 = { - save_scope_value_as = { - name = char_spawn_type - value = flag:locals - } - } - 1 = { - save_scope_value_as = { - name = char_spawn_type - value = flag:porters - } - } - 1 = { - save_scope_value_as = { - name = char_spawn_type - value = flag:fools - } - } - } - - if = { - limit = { - scope:char_spawn_type = flag:porters - } - #create a porter himbo - create_character = { - location = scope:location - age = { 18 28 } - random_traits_list = { - count = 1 - education_martial_prowess_2 = {} - education_martial_prowess_3 = {} - } - random_traits_list = { - count = 1 - brave = {} - diligent = {} - humble = {} - } - random_traits_list = { - honest = {} - gregarious = {} - trusting = {} - compassionate = {} - generous = {} - calm = {} - } - random_traits_list = { - count = 1 - lustful = {} - chaste = {} - wrathful = {} - arrogant = {} - impatient = {} - patient = {} - impatient = {} - ambitious = {} - cynical = {} - zealous = {} - stubborn = {} - } - random_traits = no - martial = { - min_template_low_skill - max_template_low_skill - } - prowess = { - min_template_high_skill - max_template_high_skill - } - faith = location.faith - culture = location.culture - gender_female_chance = { - add = 25 - } - save_scope_as = new_person - } - - hidden_effect = { - scope:new_person = { - random_list = { - 2 = { - add_trait = intellect_bad_2 - add_trait = physique_good_1 - add_trait = strong - } - 2 = { - add_trait = strong - } - 2 = { - add_trait = strong - add_trait = giant - } - 2 = { - add_trait = intellect_bad_1 - add_trait = giant - } - 1 = { - add_trait = giant - add_trait = physique_good_2 - add_trait = strong - } - } - } - } - } - else_if = { - limit = { - scope:char_spawn_type = flag:fools - } - create_character = { - template = poet_template - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = new_person - } - hidden_effect = { - scope:new_person = { - add_trait = fecund - add_trait = lifestyle_traveler - add_trait = loyal - } - } - } - else_if = { - limit = { - scope:char_spawn_type = flag:locals - } - create_character = { - template = merchant_template - culture = location.culture - faith = location.faith - location = root.location - save_scope_as = new_person - } - hidden_effect = { - scope:new_person = { - random_list = { - 8 = { - add_trait = shrewd - } - 1 = { - add_trait = intellect_good_1 - } - 1 = { - add_trait = intellect_good_2 - } - } - } - } - } - } - - option = { #welcome, weary traveler - name = ep3_laamps.8200.a - add_courtier = scope:new_person - add_character_flag = { - flag = had_ep3_laamps_8200 - years = 4 - } - - ai_chance = 100 - - stress_impact = { - compassionate = minor_stress_loss - } - } - - option = { #please go away - name = ep3_laamps.8200.b - add_character_flag = { - flag = had_ep3_laamps_8200 - years = 2 - } - scope:new_person = { - silent_disappearance_effect = yes - } - - stress_impact = { - paranoid = medium_stress_loss - shy = medium_stress_loss - } - } -} diff --git a/events/dlc/ep3/ep3_camp_temperament_events.txt b/events/dlc/ep3/ep3_camp_temperament_events.txt deleted file mode 100644 index 67d203b34..000000000 --- a/events/dlc/ep3/ep3_camp_temperament_events.txt +++ /dev/null @@ -1,1528 +0,0 @@ -namespace = ep3_camp_temperament - -#### -# ep3_camp_temperament.0001-0009 - To Feed a Friend -# ep3_camp_temperament.0010-0019 - In Every Corner -# ep3_camp_temperament.0020-0029 - Hearsay -# ep3_camp_temperament.0030-0039 - Mutiny -# ep3_camp_temperament.0040-0049 - A Devoted Follower -#### - -################################################## -# To Feed a Friend -# by Veronica Pazos -################################################## - -# Your followers chip in with some Provisions if you're low -ep3_camp_temperament.0001 = { - type = character_event - title = ep3_camp_temperament.0001.t - desc = ep3_camp_temperament.0001.desc - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - has_trait = callous - } - animation = dismissal - } - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = trusting - has_trait = gregarious - } - } - animation = wedding_happy_cry - } - animation = happiness - } - right_portrait = { - character = scope:potential_friend - animation = toast_goblet - } - lower_center_portrait = scope:friend_2 - lower_right_portrait = scope:friend_3 - cooldown = { years = 10 } - override_background = { reference = corridor_day } - - trigger = { - has_domicile_temperament_high = yes - domicile = { provisions <= provisions_privation_threshold_start } - any_courtier = { - is_available_healthy_ai_adult = yes - has_good_opinion_of_root_trigger = yes - count >= 3 - } - } - - immediate = { - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - has_good_opinion_of_root_trigger = yes - } - weight = { - base = 1 - modifier = { - add = 5 - has_relation_potential_friend = root - } - modifier = { - add = 2 - has_relation_friend = root - } - modifier = { - add = 2 - is_knight_of = root - } - modifier = { - add = 2 - has_any_court_position = yes - } - } - save_scope_as = potential_friend - } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - this != scope:potential_friend - has_good_opinion_of_root_trigger = yes - } - save_scope_as = friend_2 - } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - this != scope:potential_friend - this != scope:friend_2 - has_good_opinion_of_root_trigger = yes - } - save_scope_as = friend_3 - } - } - - option = { # Let's eat all together! - name = ep3_camp_temperament.0001.a - trigger = { - has_trait = gregarious - NOR = { - has_trait = paranoid - has_trait = callous - } - } - every_courtier = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - stress_impact = { - gregarious = minor_stress_impact_loss - disloyal = major_stress_impact_gain - shy = major_stress_impact_gain - gluttonous = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = gluttonous - has_trait = disloyal - } - } - modifier = { - factor = 2 - has_trait = gregarious - } - } - } - - option = { # You're out to get me - name = ep3_camp_temperament.0001.b - trigger = { - OR = { - has_trait = paranoid - has_trait = callous - } - } - rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:potential_friend - IMPRISONER = root - } - add_dread = medium_dread_gain - - stress_impact = { - paranoid = major_stress_impact_loss - callous = major_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = paranoid - has_trait = callous - } - } - } - } - - option = { # Can we just sell them for some gold pls - name = ep3_camp_temperament.0001.c - add_gold = { - value = medium_provisions_gain - multiply = 0.1 - } - - stress_impact = { - greedy = medium_stress_impact_loss - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = paranoid - has_trait = gregarious - } - } - modifier = { - factor = 2 - has_trait = greedy - } - } - } - - option = { # I treasure _you_ the most - name = ep3_camp_temperament.0001.d - trigger = { - NOR = { - has_trait = paranoid - has_trait = callous - } - } - progress_towards_friend_effect = { - REASON = friend_treasured_more_than_food - CHARACTER = scope:potential_friend - OPINION = default_friend_opinion - } - - stress_impact = { - trusting = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - callous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - shy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = paranoid - has_trait = deceitful - has_trait = shy - } - } - modifier = { - factor = 2 - OR = { - has_trait = deceitful - has_trait = shy - } - } - } - } - - option = { # Thank you, amigos - name = ep3_camp_temperament.0001.e - domicile ?= { - change_provisions = medium_provisions_gain - } - - stress_impact = { - callous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - OR = { - has_trait = callous - has_trait = paranoid - has_trait = gregarious - } - } - modifier = { - factor = 3 - domicile = { - provisions <= provisions_privation_threshold_low - } - } - } - } -} - -################################################## -# In Every Corner -# by Veronica Pazos -################################################## - -# You suspect your enemies come from within your own camp -ep3_camp_temperament.0010 = { - type = character_event - title = ep3_camp_temperament.0010.t - desc = { - desc = ep3_camp_temperament.0010.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:enemy = { is_spouse_of = root } - } - desc = ep3_camp_temperament.0010.desc.spouse - } - triggered_desc = { - trigger = { - scope:enemy = { is_child_of = root } - } - desc = ep3_camp_temperament.0010.desc.child - } - triggered_desc = { - trigger = { - scope:enemy = { has_relation_friend = root } - } - desc = ep3_camp_temperament.0010.desc.friend - } - } - } - - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = disloyal - has_trait = wrathful - has_trait = vengeful - } - } - animation = anger - } - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = trusting - has_trait = gregarious - } - } - animation = crying - } - animation = stress - } - right_portrait = { - character = scope:enemy - animation = go_to_your_room - } - cooldown = { years = 10 } - override_background = { reference = corridor_night } - override_effect_2d = { - reference = rain - } - - trigger = { - has_domicile_temperament_low = yes - any_courtier = { - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - } - - immediate = { - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - weight = { # Let's grab someone interesting - base = 1 - modifier = { - add = 5 - is_spouse_of = root - } - modifier = { - add = 5 - is_child_of = root - } - modifier = { - add = 2 - has_relation_friend = root - } - modifier = { - add = 2 - has_really_bad_opinion_of_root_trigger = yes - } - } - save_scope_as = enemy - } - } - - option = { # Et tu, Brute? - name = ep3_camp_temperament.0010.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { # These people would know Latin - location = { geographical_region = world_europe } - } - desc = ep3_camp_temperament.0010.a.flavor - } - } - } - trigger = { - scope:enemy = { - OR = { - is_spouse_of = root - is_child_of = root - } - } - } - add_internal_flag = special - custom_tooltip = ep3_camp_temperament_0010_tt - set_variable = { - name = et_tu_brute_var - value = scope:enemy - } - add_character_modifier = { - modifier = ep3_heartbreak_modifier - years = 15 - } - stress_impact = { - base = minor_stress_impact_gain # Always stressful to be betrayed by a close family member - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = forgiving - } - } - modifier = { - factor = 2 - has_trait = vengeful - } - } - } - - option = { # I'll pay you and shut up - name = ep3_camp_temperament.0010.b - trigger = { - has_trait = ambitious - NOT = { has_trait = vengeful } - } - pay_short_term_gold = { - target = scope:enemy - gold = minor_gold_value - } - scope:enemy = { - add_opinion = { - target = root - modifier = bribed_opinion - opinion = 15 - } - } - every_courtier = { - limit = { - this != scope:enemy - } - add_opinion = { - target = root - modifier = reputation_opinion - opinion = 10 - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - greedy = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = generous - has_trait = callous - } - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = vengeful - gold <= medium_gold_value - } - } - } - } - - option = { # It's a PLOT - name = ep3_camp_temperament.0010.c - trigger = { - has_trait = vengeful - NOT = { has_trait = ambitious } - } - add_character_modifier = { - modifier = ep3_determined_modifier - years = 5 - } - stress_impact = { - calm = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = compassionate - has_trait = forgiving - } - } - modifier = { - factor = 2 - has_trait = vengeful - } - } - } - - option = { # I'll give them some food to placate them - name = ep3_camp_temperament.0010.d - trigger = { - NOT = { has_trait = vengeful } - } - domicile ?= { - change_provisions = minor_provisions_loss - } - every_courtier = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 10 - } - } - - stress_impact = { - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = vengeful - has_trait = greedy - has_trait = wrathful - } - } - modifier = { - factor = 2 - OR = { - has_trait = compassionate - has_trait = forgiving - domicile ?= { provisions <= provisions_privation_threshold_start } - } - } - } - } - - option = { # Opt out - name = ep3_camp_temperament.0010.e - - stress_impact = { - vengeful = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } -} - -################################################## -# Hearsay -# by Veronica Pazos -################################################## - -scripted_effect ep3_camp_temperament_0020_secret_effect = { - custom_tooltip = ep3_camp_temperament_0020_d_tt - hidden_effect = { - send_interface_toast = { - title = ep3_camp_temperament_0020_d_tt - left_icon = scope:secret_owner - scope:secret = { - reveal_to = root - } - } - } -} - -# Follower reveals secret from province holder or holder's liege -ep3_camp_temperament.0020 = { - type = character_event - title = ep3_camp_temperament.0020.t - desc = ep3_camp_temperament.0020.desc - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = deceitful - } - animation = schadenfreude - } - triggered_animation = { - trigger = { - OR = { - has_trait = journaller - has_trait = lifestyle_poet - has_trait = violet_poet - } - } - animation = happiness - } - animation = interested - } - right_portrait = { - character = scope:secret_giver - animation = throne_room_bow_1 - } - lower_right_portrait = scope:secret_owner - cooldown = { years = 10 } - - trigger = { - has_domicile_temperament_high = yes - any_courtier = { - is_available_healthy_ai_adult = yes - } - OR = { # Holder or holder's liege have a secret - domicile.domicile_location.county.holder ?= { - any_secret = { - NOT = { is_known_by = root } - } - } - domicile.domicile_location.county.holder.top_liege ?= { - any_secret = { - NOT = { is_known_by = root } - } - } - } - } - - immediate = { - random_list = { - 1 = { - trigger = { - domicile.domicile_location.county.holder ?= { - any_secret = { - NOT = { is_known_by = root } - } - } - } - domicile.domicile_location.county.holder = { - save_scope_as = secret_owner - random_secret = { - limit = { - NOT = { is_known_by = root } - } - save_scope_as = secret - } - } - } - 1 = { - trigger = { - domicile.domicile_location.county.holder.top_liege ?= { - any_secret = { - NOT = { is_known_by = root } - } - } - } - domicile.domicile_location.county.holder.top_liege = { - save_scope_as = secret_owner - random_secret = { - limit = { - NOT = { is_known_by = root } - } - save_scope_as = secret - } - } - } - } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - weight = { # Find someone relevant - base = 1 - modifier = { - add = 2 - intrigue > medium_skill_rating - } - modifier = { - add = 2 - has_any_court_position = yes - } - modifier = { - add = 1 - OR = { - has_trait = lustful - has_trait = rakish - } - } - } - save_scope_as = secret_giver - } - } - - option = { # I need to write this down - name = ep3_camp_temperament.0020.a - trigger = { - OR = { - has_trait = journaller - has_trait = lifestyle_poet - has_trait = violet_poet - } - } - ep3_camp_temperament_0020_secret_effect = yes - add_character_modifier = { - modifier = ep3_inspired_by_life - years = 15 - } - stress_impact = { - journaller = medium_stress_impact_loss - lifestyle_poet = medium_stress_impact_loss - violet_poet = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = deceitful - } - modifier = { - factor = 2 - OR = { - has_trait = journaller - has_trait = lifestyle_poet - has_trait = violet_poet - } - } - } - } - - option = { # Yummy yummy tasty gossip - name = ep3_camp_temperament.0020.b - trigger = { - has_trait = deceitful - } - ep3_camp_temperament_0020_secret_effect = yes - random_list = { - 1 = { - scope:secret_giver = { - add_intrigue_skill = 1 - } - } - 1 = { - scope:secret_giver = { - add_intrigue_skill = 2 - } - } - 1 = { - scope:secret_giver = { - add_intrigue_skill = 3 - } - } - } - - stress_impact = { - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = callous - } - } - } - - option = { # What were you doing slacking around huh - name = ep3_camp_temperament.0020.c - trigger = { - can_add_hook = { - target = scope:secret_giver - type = strong_prostitute_blackmail_hook - } - } - add_hook = { - target = scope:secret_giver - type = strong_prostitute_blackmail_hook - } - - stress_impact = { - diligent = medium_stress_impact_loss - lustful = medium_stress_impact_gain - rakish = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = rakish - has_trait = trusting - } - } - modifier = { - factor = 2 - has_trait = diligent - } - } - } - - option = { # Tell me at once! - name = ep3_camp_temperament.0020.d - trigger = { # You have access to a better version of this option - NOR = { - has_trait = journaller - has_trait = lifestyle_poet - has_trait = violet_poet - has_trait = deceitful - } - } - ep3_camp_temperament_0020_secret_effect = yes - - stress_impact = { - compassionate = medium_stress_impact_loss - patient = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = patient - } - modifier = { - factor = 2 - has_trait = compassionate - } - } - } - - option = { # Secrets are evil - name = ep3_camp_temperament.0020.e - add_piety = minor_piety_gain - - stress_impact = { - zealous = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = deceitful - has_trait = callous - } - } - modifier = { - factor = 2 - has_trait = zealous - } - } - } -} - -################################################## -# Mutiny! -# by Veronica Pazos -################################################## - -# A follower tries to lead a mutiny against you -ep3_camp_temperament.0030 = { - type = character_event - title = ep3_camp_temperament.0030.t - desc = { - desc = ep3_camp_temperament.0030.desc.intro - first_valid = { - triggered_desc = { - trigger = { - domicile ?= { - provisions <= provisions_privation_threshold_low - } - } - desc = ep3_camp_temperament.0030.desc.no_food - } - desc = ep3_camp_temperament.0030.desc.other - } - desc = ep3_camp_temperament.0030.desc.outro - } - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = craven - } - } - animation = worry - } - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = wrathful - has_trait = vengeful - has_trait = callous - } - } - animation = anger - } - animation = stress - } - right_portrait = { - character = scope:cocky_follower - animation = chess_cocky - } - lower_left_portrait = { - trigger = { - has_trait = craven - NOR = { - has_trait = vengeful - has_trait = wrathful - has_trait = callous - } - exists = scope:bus_follower - } - character = scope:bus_follower - } - cooldown = { years = 10 } - override_background = { reference = bp1_bonfire } - - trigger = { - has_domicile_temperament_low = yes - any_courtier = { - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - } - - weight_multiplier = { #More likely to happen if they're starving - base = 1 - modifier = { - factor = 2 - domicile ?= { - provisions <= provisions_privation_threshold_low - } - } - } - - immediate = { - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - weight = { # Let's grab someone interesting - base = 1 - modifier = { - add = 5 - OR = { - has_trait = gluttonous - has_trait = comfort_eater - } - root.domicile ?= { - provisions <= provisions_privation_threshold_low - } - } - modifier = { - add = 2 - is_spouse_of = root - } - modifier = { - add = 2 - is_child_of = root - } - modifier = { - add = 2 - has_really_bad_opinion_of_root_trigger = yes - } - } - save_scope_as = cocky_follower - } - every_courtier = { - limit = { # Including the cocky guy - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - add_to_list = mutiniers - } - if = { - limit = { - any_courtier = { - is_available_healthy_ai_adult = yes - this != scope:cocky_follower - } - } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - this != scope:cocky_follower - } - weight = { - base = 1 - modifier = { - add = 5 - has_court_position = second_camp_officer - } - modifier = { - add = 2 - has_any_court_position = yes - } - } - save_scope_as = bus_follower - } - } - } - - option = { # It was actually this guy's fault - name = ep3_camp_temperament.0030.a - trigger = { - has_trait = craven - NOR = { - has_trait = vengeful - has_trait = wrathful - has_trait = callous - } - exists = scope:bus_follower # If there's someone to actually throw under the bus - } - scope:bus_follower = { - increase_wounds_effect = { REASON = beaten } - } - stress_impact = { - craven = minor_stress_impact_loss - deceitful = minor_stress_impact_loss - brave = major_stress_impact_gain - wrathful = major_stress_impact_gain - } - ai_chance = { - base = 0 # Don't get people beaten up for no reason - modifier = { - add = 200 - has_trait = craven - } - } - } - - option = { # I'm gonna beat you up - name = ep3_camp_temperament.0030.b - trigger = { - has_trait = wrathful - NOR = { - has_trait = craven - has_trait = calm - has_trait = temperate - } - } - duel = { - skill = prowess - target = scope:cocky_follower - 50 = { - desc = ep3_camp_temperament.0030.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep3_camp_temperament.0030.b.success - left_icon = root - right_icon = scope:cocky_follower - scope:cocky_follower = { - death = { death_reason = death_beaten } - } - } - } - 50 = { - desc = ep3_camp_temperament.0030.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - send_interface_toast = { - title = ep3_camp_temperament.0030.b.failure - left_icon = root - right_icon = scope:cocky_follower - increase_wounds_no_death_effect = { REASON = beaten } - } - } - } - stress_impact = { - base = medium_stress_impact_gain - wrathful = major_stress_impact_loss - compassionate = major_stress_impact_gain - calm = major_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - add = 200 - has_trait = wrathful - } - } - } - - option = { # You said what - name = ep3_camp_temperament.0030.c - reason = dread - trigger = { - dread >= 75 - NOT = { has_trait = craven } - } - # This should be enough reward - scope:cocky_follower = { - give_nickname = nick_brown_cheeks - add_character_modifier = { #Forever - modifier = ep3_poopy_pants - } - } - # But we'll give you something else, I guess - every_courtier = { - limit = { - this != scope:cocky_follower - NOR = { - has_trait = brave - has_trait = callous - } - } - add_opinion = { - target = root - opinion = 5 - modifier = respect_opinion - } - } - add_dread = minor_dread_gain - stress_impact = { - vengeful = medium_stress_impact_loss - calm = major_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 - has_trait = vengeful - } - } - } - - option = { # You can go if you want to - name = ep3_camp_temperament.0030.d - every_in_list = { - list = mutiniers - save_temporary_scope_as = followers_to_leave - root = { remove_courtier_or_guest = scope:followers_to_leave } - } - every_courtier = { - limit = { - is_available_healthy_ai_adult = yes - NOT = { is_in_list = mutiniers } - } - add_opinion = { - target = root - opinion = 10 - modifier = benevolent_to_mutiniers_opinion - } - } - stress_impact = { - calm = medium_stress_impact_loss - temperate = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - trusting = medium_stress_impact_loss - callous = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - vengeful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = wrathful - has_trait = vengeful - } - } - modifier = { - factor = 2 - OR = { - has_trait = calm - has_trait = temperate - has_trait = compassionate - has_trait = trusting - } - } - } - } - - option = { # Take the money and shut up - name = ep3_camp_temperament.0030.e - pay_short_term_gold = { - target = scope:cocky_follower - gold = medium_gold_value - } - every_courtier = { - limit = { - is_available_healthy_ai_adult = yes - has_bad_opinion_of_root_trigger = yes - } - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - stress_impact = { - greedy = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - OR = { - has_trait = greedy - has_trait = wrathful - gold <= medium_gold_value - } - } - } - } -} - -################################################## -# A Devoted Follower -# by Veronica Pazos -################################################## - -scripted_trigger ep3_camp_temperament_0040_valid_scheme_trigger = { - scheme_owner = root - exists = scheme_target_character - any_scheme_agent_slot = { } - NOR = { - scheme_target_character = $FOLLOWER$ - any_scheme_agent_character = { this = $FOLLOWER$ } - } -} - -# Your follower offers themselves as an agent for your scheme -ep3_camp_temperament.0040 = { - type = character_event - title = ep3_camp_temperament.0040.t - desc = ep3_camp_temperament.0040.desc - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = arrogant - } - animation = hero_flex - } - triggered_animation = { - trigger = { - has_trait = humble - } - animation = shame - } - triggered_animation = { - trigger = { - OR = { - intrigue >= high_skill_rating - has_focus = intrigue_skulduggery_focus - has_trait = deceitful - } - } - animation = scheme - } - animation = interested - } - right_portrait = { - character = scope:follower - animation = admiration - } - lower_right_portrait = scope:target - cooldown = { years = 10 } - override_background = { reference = corridor_day } - - trigger = { - has_domicile_temperament_high = yes - any_courtier = { - is_available_healthy_ai_adult = yes - has_good_opinion_of_root_trigger = yes - save_temporary_scope_as = follower_temp - root = { - any_scheme = { - ep3_camp_temperament_0040_valid_scheme_trigger = { FOLLOWER = scope:follower_temp } - } - } - } - } - - immediate = { - random_dummy_gender_soldier_effect = { SCOPE_NAME = dummy_gender } - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - has_good_opinion_of_root_trigger = yes - save_temporary_scope_as = follower_temp - root = { - any_scheme = { - ep3_camp_temperament_0040_valid_scheme_trigger = { FOLLOWER = scope:follower_temp } - save_temporary_scope_as = scheme_temp - } - } - } - weight = { - base = 2 - modifier = { - add = 2 - has_trait = eccentric - } - modifier = { - add = 1 - has_trait = gregarious - } - modifier = { - add = 1 - diplomacy >= medium_skill_rating - } - modifier = { - add = -1 - is_close_family_of = root - } - } - save_scope_as = follower - assign_quirk_effect = yes - set_variable = { - name = devotee_agent_var - value = root - } - } - scope:scheme_temp = { - save_scope_as = my_scheme - scheme_target_character = { save_scope_as = target } - } - } - - option = { # You're right, I'm great - name = ep3_camp_temperament.0040.a - trigger = { - prestige_level >= 3 - NOR = { - intrigue >= high_skill_rating - has_focus = intrigue_skulduggery_focus - } - } - add_character_modifier = { - modifier = ep3_arrogant_schemer_modifier - years = 15 - } - stress_impact = { - arrogant = major_stress_impact_loss - gregarious = medium_stress_impact_loss - humble = major_stress_impact_gain - shy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = gregarious - } - } - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = shy - } - } - } - } - - option = { # I'll do the job myself - name = ep3_camp_temperament.0040.b - trigger = { - OR = { - intrigue >= high_skill_rating - has_focus = intrigue_skulduggery_focus - } - } - scope:my_scheme = { - if = { - limit = { scheme_agent_charges < opportunity_cap_value } - change_opportunities = 1 - } - add_scheme_modifier = { - type = ep3_self_employed_scheme_modifier - } - } - - stress_impact = { - arrogant = major_stress_impact_loss - deceitful = medium_stress_impact_loss - calm = medium_stress_impact_gain - temperate = medium_stress_impact_gain - humble = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = calm - has_trait = temperate - has_trait = humble - } - } - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = deceitful - } - } - } - } - - option = { # What a great friend you are - name = ep3_camp_temperament.0040.c - progress_towards_friend_effect = { - REASON = friend_my_biggest_fan - CHARACTER = scope:follower - OPINION = default_friend_opinion - } - - stress_impact = { - gregarious = medium_stress_impact_loss - trusting = medium_stress_impact_loss - callous = medium_stress_impact_gain - shy = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = shy - } - } - modifier = { - factor = 2 - OR = { - has_trait = gregarious - has_trait = trusting - } - } - } - } - - option = { # Sure, join in! - name = ep3_camp_temperament.0040.d - custom_tooltip = { - text = ep3_camp_temperament.0040.d.tt - scope:my_scheme = { - add_agent_slot = agent_devotee - random_scheme_agent_slot = { - limit = { - is_agent_slot_type = agent_devotee - is_filled = no - } - save_scope_as = slot - scope:follower = { add_to_agent_slot = scope:slot } - } - } - } - ai_chance = { - base = 200 # Best option for the AI - } - } - - option = { # Just stay there and admire me - name = ep3_camp_temperament.0040.e - add_prestige = minor_prestige_gain - - stress_impact = { - arrogant = major_stress_impact_loss - humble = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = humble - } - modifier = { # If AI is running low on Prestige - factor = 2 - prestige <= medium_prestige_value - } - } - } -} diff --git a/events/dlc/ep3/ep3_contract_events.txt b/events/dlc/ep3/ep3_contract_events.txt deleted file mode 100644 index 4bf641c6a..000000000 --- a/events/dlc/ep3/ep3_contract_events.txt +++ /dev/null @@ -1,10220 +0,0 @@ -################################################### -## EP3 Contract Events -## -################################################### - -namespace = ep3_contract_event - -scripted_effect set_contract_scopes_effect = { - scope:task_contract.task_contract_taker ?= { - save_scope_as = task_contract_taker - } - scope:task_contract.task_contract_employer ?= { - save_scope_as = task_contract_employer - } - if = { - limit = { - exists = scope:task_contract.task_contract_destination - } - scope:task_contract.task_contract_destination = { - save_scope_as = task_contract_destination - } - } - else = { - scope:task_contract.var:task_contract_destination ?= { - save_scope_as = task_contract_destination - } - } - if = { - limit = { - exists = scope:task_contract.task_contract_target - } - scope:task_contract.task_contract_target ?= { - save_scope_as = task_contract_target - } - } - else = { - scope:task_contract.var:task_contract_target ?= { - save_scope_as = task_contract_target - } - } - scope:task_contract.var:task_contract_war ?= { - save_scope_as = task_contract_war - } - if = { - limit = { - exists = scope:task_contract.var:task_contract_object - } - scope:task_contract.var:task_contract_object = { - save_scope_as = task_contract_object - } - } - if = { - limit = { - exists = scope:task_contract.var:escorted_artifact - } - scope:task_contract.var:escorted_artifact = { - save_scope_as = escorted_artifact - } - } - if = { - limit = { - exists = scope:task_contract.var:escorted_gold - } - scope:task_contract.var:escorted_gold = { - save_scope_as = escorted_gold - } - } - if = { - limit = { - exists = scope:task_contract.var:escorted_story - } - scope:task_contract.var:escorted_story = { - save_scope_as = escorted_story - } - } -} - -scripted_effect start_contract_travel_without_domicile = { - start_travel_plan = { - destination = scope:task_contract_destination - on_arrival_destinations = all - } -} -scripted_effect start_contract_travel_with_domicile = { - start_travel_plan = { - destination = scope:task_contract_destination - travel_with_domicile = yes - return_trip = no - on_arrival_destinations = all - } -} - -#taking a transport contract - triggered after you take a transport contract -ep3_contract_event.0001 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - desc = ep3_contract_event.0001.t_vip - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - desc = ep3_contract_event.0001.t_child - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - desc = ep3_contract_event.0001.t_explorer - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - desc = ep3_contract_event.0001.t_artifact - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - desc = ep3_contract_event.0001.t_gold - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - desc = ep3_contract_event.0001.t_animal - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - desc = ep3_contract_event.0001.t_construction - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - desc = ep3_contract_event.0001.desc_intro_explorer - } - desc = ep3_contract_event.0001.desc - } - #desc for the explorer contract type for differrent point of interests types - first_valid = { - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_martial } - desc = ep3_contract_event.0001.desc_special_buildings_martial - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_learning } - desc = ep3_contract_event.0001.desc_special_buildings_learning - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_religious } - desc = ep3_contract_event.0001.desc_special_buildings_religious - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_diplomatic } - desc = ep3_contract_event.0001.desc_special_buildings_diplomatic - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:grand_city } - desc = ep3_contract_event.0001.desc_grand_city - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_wonder } - desc = ep3_contract_event.0001.desc_special_buildings_wonder - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:special_buildings_economic } - desc = ep3_contract_event.0001.desc_special_buildings_economic - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:mausoleum_at_halicarnassus } - desc = ep3_contract_event.0001.desc_mausoleum_at_halicarnassus - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:lighthouse_of_alexandria } - desc = ep3_contract_event.0001.desc_lighthouse_of_alexandria - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:natural_feature } - desc = ep3_contract_event.0001.desc_natural_feature - } - triggered_desc = { - trigger = { scope:task_contract.var:travel_reason ?= flag:capitals } - desc = ep3_contract_event.0001.desc_capitals - } - } - first_valid = { - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - desc = ep3_contract_event.0001.desc_vip - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - desc = ep3_contract_event.0001.desc_child - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - desc = ep3_contract_event.0001.desc_explorer - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - desc = ep3_contract_event.0001.desc_artifact - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - desc = ep3_contract_event.0001.desc_gold - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - desc = ep3_contract_event.0001.desc_animal - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - desc = ep3_contract_event.0001.desc_construction - } - } - } - theme = landless_adventurer - override_background = { reference = terrain } - #task_contract_taker, you - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - animation = personality_honorable - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - animation = personality_compassionate - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - animation = interested_left - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - animation = personality_bold - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - animation = stunned - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - animation = love - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - animation = personality_rational - } - } - #character you have to escort, if exists - right_portrait = { - character = scope:right_portrait - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - animation = personality_rational - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - animation = clutching_toy - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - animation = eccentric - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - animation = personality_compassionate - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - animation = personality_compassionate - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - animation = personality_compassionate - } - triggered_animation = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - animation = personality_bold - } - } - #character giving you the contract, if it's not the chracter you have to escort - lower_right_portrait = { - trigger = { - NOR = { - scope:task_contract_object ?= scope:task_contract_target - scope:task_contract_object ?= scope:task_contract_employer - } - } - character = scope:task_contract_employer - } - #character you have to go to, if exists - lower_left_portrait = { - trigger = { - exists = scope:task_contract_target - scope:task_contract_target != scope:task_contract_employer - } - character = scope:task_contract_target - } - #artifact you have to escort, if exists - artifact = { - trigger = { exists = scope:escorted_artifact } - target = scope:escorted_artifact - position = lower_center_portrait - } - - immediate = { - set_contract_scopes_effect = yes - if = { - limit = { - exists = scope:task_contract_object - } - scope:task_contract_object = { - save_scope_as = right_portrait - } - } - else = { - scope:task_contract_employer = { - save_scope_as = right_portrait - } - } - } - - #take the contract and start the travel without domicile - option = { - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - text = ep3_contract_event.0001.vip - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - text = ep3_contract_event.0001.child - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - text = ep3_contract_event.0001.explorer - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - text = ep3_contract_event.0001.artifact - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - text = ep3_contract_event.0001.gold - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - text = ep3_contract_event.0001.animal - } - name = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - text = ep3_contract_event.0001.construction - } - scope:task_contract = { - switch = { - trigger = has_task_contract_type - #escorting a VIP - laamp_transport_vip = { - custom_tooltip = ep3_contract_event.0001.tt_vip - scope:task_contract_object = { - visit_court_of = root - add_character_flag = blocked_from_leaving - } - root = { - start_contract_travel_without_domicile = yes - } - } - #escorting a ward to guardian - laamp_transport_ward = { - custom_tooltip = ep3_contract_event.0001.tt_ward - scope:task_contract_object = { - visit_court_of = root - add_character_flag = blocked_from_leaving - } - root = { - start_contract_travel_without_domicile = yes - } - } - #escorting a random pool character to a random point of interest - laamp_transport_explorer = { - custom_tooltip = ep3_contract_event.0001.tt_explorer - scope:task_contract_object = { - if = { - limit = { - is_landed = no - } - visit_court_of = root - add_character_flag = blocked_from_leaving - } - } - root = { - start_contract_travel_without_domicile = yes - } - } - #escorting an artifact - laamp_transport_artifact = { - custom_tooltip = ep3_contract_event.0001.tt_artifact - scope:escorted_artifact = { - set_owner = root - set_variable = { - name = ungiftable - } - } - root = { - start_contract_travel_without_domicile = yes - } - } - #escorting a large sum of money - laamp_transport_gold = { - custom_tooltip = ep3_contract_event.0001.tt_gold - scope:task_contract_employer = { - pay_treasury_or_gold = { - target = root - value = scope:escorted_gold - } - } - root = { - start_contract_travel_without_domicile = yes - } - } - #escorting a dog or a cat - laamp_transport_animal = { - custom_tooltip = ep3_contract_event.0001.tt_animal - scope:task_contract_employer = { - if = { - limit = { - scope:escorted_story ?= { story_type = story_cycle_pet_dog } - } - transfer_dog_story_cycle_to_effect = { - CHARACTER = root - STORY = scope:escorted_story - } - } - else = { - transfer_cat_story_cycle_to_effect = { - CHARACTER = root - STORY = scope:escorted_story - } - } - } - root = { - start_contract_travel_without_domicile = yes - } - } - #delivering materials for holding construcion - laamp_construction_contract = { - custom_tooltip = ep3_contract_event.0001.tt_construction - root = { - start_contract_travel_without_domicile = yes - } - } - } - } - #AI should always try to complete the contract - ai_chance = { - base = 1 - } - } - #take the contract and start the travel with domicile - option = { - name = ep3_contract_event.0001.with_domicile - scope:task_contract = { - switch = { - trigger = has_task_contract_type - #escorting a VIP - laamp_transport_vip = { - custom_tooltip = ep3_contract_event.0001.tt_vip - scope:task_contract_object = { - visit_court_of = root - add_character_flag = blocked_from_leaving - } - root = { - start_contract_travel_with_domicile = yes - } - } - #escorting a ward to guardian - laamp_transport_ward = { - custom_tooltip = ep3_contract_event.0001.tt_ward - scope:task_contract_object = { - visit_court_of = root - add_character_flag = blocked_from_leaving - } - root = { - start_contract_travel_with_domicile = yes - } - } - #escorting a random pool character to a random point of interest - laamp_transport_explorer = { - custom_tooltip = ep3_contract_event.0001.tt_explorer - scope:task_contract_object = { - if = { - limit = { - is_landed = no - } - visit_court_of = root - add_character_flag = blocked_from_leaving - } - } - root = { - start_contract_travel_with_domicile = yes - } - } - #escorting an artifact - laamp_transport_artifact = { - custom_tooltip = ep3_contract_event.0001.tt_artifact - scope:escorted_artifact = { - set_owner = root - set_variable = { - name = ungiftable - } - } - root = { - start_contract_travel_with_domicile = yes - } - } - #escorting a large sum of money - laamp_transport_gold = { - custom_tooltip = ep3_contract_event.0001.tt_gold - scope:task_contract_employer = { - pay_treasury_or_gold = { - target = root - value = scope:escorted_gold - } - } - root = { - start_contract_travel_with_domicile = yes - } - } - #escorting a dog or a cat - laamp_transport_animal = { - custom_tooltip = ep3_contract_event.0001.tt_animal - scope:task_contract_employer = { - if = { - limit = { - scope:escorted_story ?= { story_type = story_cycle_pet_dog } - } - transfer_dog_story_cycle_to_effect = { - CHARACTER = root - STORY = scope:escorted_story - } - } - else = { - transfer_cat_story_cycle_to_effect = { - CHARACTER = root - STORY = scope:escorted_story - } - } - } - root = { - start_contract_travel_with_domicile = yes - } - } - #delivering materials for holding construcion - laamp_construction_contract = { - custom_tooltip = ep3_contract_event.0001.tt_construction - root = { - start_contract_travel_with_domicile = yes - } - } - } - } - custom_tooltip = ep3_contract_event.0001.with_domicile.tt - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -scripted_trigger 0002_is_applicable_contract_trigger = { - OR = { - has_task_contract_group = laamp_contracts_transport_group - #Treasure Map Contract - AND = { - root = { has_variable = ep3_laamp_decision_1000_is_excavating } - exists = var:contract_treasure_location - } - } -} - -#Event adding relevant characters to your travel entourage if you have an active transport contract -ep3_contract_event.0002 = { - hidden = yes - trigger = { - has_government = landless_adventurer_government - } - immediate = { - every_character_active_contract = { - limit = { - 0002_is_applicable_contract_trigger = yes - save_temporary_scope_as = temp_contract - #task_contract_taker ?= root - root.current_travel_plan = { - #Treasure Map Contract - trigger_if = { - limit = { - scope:temp_contract = { exists = var:contract_treasure_location } - } - OR = { - final_destination_province ?= scope:temp_contract.var:contract_treasure_location - next_destination_province = scope:temp_contract.var:contract_treasure_location - any_future_path_location = { - this = scope:temp_contract.var:contract_treasure_location - } - } - } - trigger_else = { - OR = { - final_destination_province ?= scope:temp_contract.var:task_contract_destination - next_destination_province = scope:temp_contract.var:task_contract_destination - any_future_path_location = { - this = scope:temp_contract.var:task_contract_destination - } - } - } - } - } - var:task_contract_object ?= { add_to_list = task_contract_companions } - #Treasure Map Contract, add the scraggly old employer - if = { - limit = { has_task_contract_type = laamp_treasure_map_contract } - task_contract_employer = { add_to_list = task_contract_companions } - } - } - every_courtier_or_guest = { - limit = { - is_travelling = no - } - add_to_list = task_contract_companions - } - every_in_list = { - list = task_contract_companions - root.current_travel_plan = { add_companion = prev } - } - } -} - -#Raid for Captives contract starting a war -ep3_contract_event.0003 = { - type = character_event - title = ep3_contract_event.0003.t - desc = ep3_contract_event.0003.desc - theme = war - #task_contract_taker, you - left_portrait = { - character = root - animation = personality_compassionate - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - } - - #take the contract and start raiding - option = { - name = ep3_contract_event.0003.a - start_war = { - cb = ep3_laamp_raid_contract_cb - target = scope:task_contract_target - } - random_character_war = { - limit = { - using_cb = ep3_laamp_raid_contract_cb - primary_attacker = root - primary_defender = scope:task_contract_target - } - save_scope_as = new_war - } - scope:task_contract = { - set_variable = { - name = task_contract_war - value = scope:new_war - } - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -#Raid for Captives - complete contract letter event, triggered in the cb on war end -ep3_contract_event.0004 = { - type = letter_event - sender = scope:task_contract_employer - opening = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract_outcome ?= flag:failure } - desc = ep3_contract_event.0004.opening_failure - } - desc = ep3_contract_event.0004.opening - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract_outcome ?= flag:failure } - desc = ep3_contract_event.0004.desc_failure - } - desc = ep3_contract_event.0004.desc - } - } - - immediate = { - if = { - limit = { - scope:task_contract_outcome ?= flag:failure - } - add_prestige = task_contract_failure_prestige_loss_full_value - reverse_add_opinion = { - opinion = -50 - modifier = hate_opinion - target = scope:task_contract_employer - } - } - else = { - scope:task_contract_employer = { - custom_tooltip = ep3_contract_event.0004.success - every_prisoner = { - limit = { - has_character_flag = captured_in_ep3_laamp_raid_contract_cb - } - #doing this here instead of in the war effects to show a neat list of the prisoners in the tooltip - add_opinion = { - modifier = abductor_opinion - target = root - years = 5 - } - root = { - if = { - limit = { NOT = { exists = local_var:temp_ransom } } - set_local_variable = { - name = temp_ransom - value = prev.ransom_cost - } - } - else = { - change_local_variable = { - name = temp_ransom - add = prev.ransom_cost - } - } - } - remove_character_flag = captured_in_ep3_laamp_raid_contract_cb - } - } - } - } - - option = { - name = { - trigger = { scope:task_contract_outcome ?= flag:failure } - text = ep3_contract_event.0004.b - } - name = { - trigger = { NOT = { exists = scope:task_contract_outcome } } - text = ep3_contract_event.0004.a - } - if = { - limit = { - scope:task_contract_outcome ?= flag:failure - } - } - else = { - add_gold = { - value = local_var:temp_ransom - if = { - limit = { - domicile = { has_domicile_parameter = camp_improved_mercenary_contract_rewards } - } - multiply = camp_improved_mercenary_contract_rewards_value - } - if = { - limit = { - has_perk = hard_rule_perk - } - multiply = adventurer_hard_rule_contract_rewards_value - } - } - if = { - limit = { - faith != scope:defender.faith - } - add_piety = minor_piety_gain - } - } - } -} - -#Treasure Hunting Contract - start event -ep3_contract_event.0005 = { - type = character_event - title = ep3_contract_event.0005.t - desc = ep3_contract_event.0005.desc - theme = travel - - left_portrait = { - character = root - animation = personality_compassionate - } - lower_right_portrait = { - character = scope:task_contract_employer - } - - immediate = { - } - - #go on a treasure hunting travel, opens decision to set target location - option = { - name = ep3_contract_event.0005.a - custom_tooltip = ep3_contract_event.0005.a_tt - decision:treasure_hunting_contract_decision = { - open_view_data = { - view = decision_detail - player = root - } - } - #AI should always try to complete the contract - ai_chance = { - base = 1 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -#Treasure Hunting Contract - event triggered when you reach a location chosen in the decision -ep3_contract_event.0006 = { - type = character_event - title = ep3_contract_event.0006.t - desc = { - desc = ep3_contract_event.0006.desc - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - desc = ep3_contract_event.0006.desc_locals_temple - } - triggered_desc = { - trigger = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - desc = ep3_contract_event.0006.desc_locals_city - } - triggered_desc = { - trigger = { - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - desc = ep3_contract_event.0006.desc_locals_castle - } - desc = ep3_contract_event.0006.desc_locals - } - } - theme = travel - left_portrait = { - character = root - animation = eavesdrop - } - right_portrait = { - character = scope:local_1 - animation = debating - } - lower_left_portrait = { - character = scope:local_ruler - } - lower_right_portrait = { - trigger = { exists = scope:local_2 } - character = scope:local_2 - } - #artifact you find - artifact = { - target = scope:newly_created_artifact - position = lower_center_portrait - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - reference = corridor_night - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - reference = market - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - reference = temple - } - override_background = { - trigger = { - scope:task_contract_destination = { - NOR = { - has_holding_type = castle_holding - has_holding_type = city_holding - has_holding_type = church_holding - } - } - } - reference = tavern - } - - trigger = { - any_character_task_contract = { - task_contract_type = laamp_treasure_hunting_contract - var:task_contract_destination ?= root.location - } - } - - immediate = { - random_character_task_contract = { - task_contract_type = laamp_treasure_hunting_contract - limit = { - var:task_contract_destination ?= root.location - } - save_scope_as = task_contract - } - scope:task_contract.var:task_contract_destination = { - save_scope_as = task_contract_destination - county.holder = { - save_scope_as = local_ruler - } - } - scope:task_contract.task_contract_employer = { - save_scope_as = inspiration_owner - save_scope_as = task_contract_employer - } - if = { - limit = { - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - if = { - limit = { - any_pool_character = { - province = scope:task_contract_destination - is_available_healthy_ai_adult = yes - } - } - random_pool_character = { - province = scope:task_contract_destination - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = local_1 - } - } - else = { - create_character = { - template = fp1_trade_partner_priest - location = scope:task_contract_destination - culture = scope:task_contract_destination.county.culture - faith = scope:task_contract_destination.county.faith - #Set up the scope - save_scope_as = local_1 - } - } - inspiration_adventure_create_artifact_effect = { - OWNER = scope:local_1 - CREATOR = scope:local_1 - } - } - else_if = { - limit = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - if = { - limit = { - any_pool_character = { - province = scope:task_contract_destination - is_available_healthy_ai_adult = yes - } - } - random_pool_character = { - province = scope:task_contract_destination - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = local_1 - } - } - else = { - create_character = { - template = merchant_template - location = scope:task_contract_destination - culture = scope:task_contract_destination.county.culture - faith = scope:task_contract_destination.county.faith - #Set up the scope - save_scope_as = local_1 - } - } - inspiration_adventure_create_artifact_effect = { - OWNER = scope:local_1 - CREATOR = scope:local_1 - } - } - else = { - if = { - limit = { - any_pool_character = { - province = scope:task_contract_destination - is_available_healthy_ai_adult = yes - } - } - random_pool_character = { - province = scope:task_contract_destination - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = local_1 - } - } - else = { - create_character = { - template = fp3_tomb_raider - location = scope:task_contract_destination - culture = scope:task_contract_destination.county.culture - faith = scope:task_contract_destination.county.faith - #Set up the scope - save_scope_as = local_1 - } - } - if = { - limit = { - any_pool_character = { - province = scope:task_contract_destination - is_available_healthy_ai_adult = yes - this != scope:local_1 - } - } - random_pool_character = { - province = scope:task_contract_destination - limit = { - is_available_healthy_ai_adult = yes - this != scope:local_1 - } - save_scope_as = local_2 - } - } - else = { - create_character = { - template = fp3_tomb_raider - location = scope:task_contract_destination - culture = scope:task_contract_destination.county.culture - faith = scope:task_contract_destination.county.faith - #Set up the scope - save_scope_as = local_2 - } - } - if = { - limit = { - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - inspiration_adventure_create_artifact_effect = { - OWNER = scope:local_ruler - CREATOR = scope:local_ruler - } - } - else = { - inspiration_adventure_create_artifact_effect = { - OWNER = scope:local_1 - CREATOR = scope:local_1 - } - } - } - #Don't need no "Lost Court Artifact to [...]" errors for this - scope:newly_created_artifact = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 2 - } - } - } - - #go with the locals - castle only - option = { - name = ep3_contract_event.0006.castle - trigger = { - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - reason = castle_holding - duel = { - skills = { diplomacy intrigue } - target = scope:local_1 - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 50 - } - desc = ep3_contract_event.0006.castle_won - save_scope_value_as = { - name = success_reason - value = flag:castle - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - min = -49 - } - modifier = { - exists = scope:local_2 - add = scope:local_2.intrigue - add = scope:local_2.diplomacy - } - desc = ep3_contract_event.0006.castle_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.castle_lost - desc = ep3_contract_event.0006.castle_lost_desc - left_icon = root - right_icon = scope:local_1 - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #prove you're pious - church only - option = { - name = ep3_contract_event.0006.church - trigger = { - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - reason = church_holding - random_list = { - 4 = { - modifier = { - add = root.piety_level - } - modifier = { - add = root.num_virtuous_traits - } - modifier = { - add = { - value = root.num_sinful_traits - multiply = -1 - } - } - modifier = { - add = root.learning - } - desc = ep3_contract_event.0006.church_won - save_scope_value_as = { - name = success_reason - value = flag:church - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - 4 = { - modifier = { - add = scope:local_1.piety_level - } - modifier = { - add = scope:local_1.num_virtuous_traits - } - modifier = { - add = { - value = scope:local_1.num_sinful_traits - multiply = -1 - } - } - desc = ep3_contract_event.0006.church_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.church_lost - desc = ep3_contract_event.0006.church_lost_desc - left_icon = root - right_icon = scope:local_1 - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - } - } - } - stress_impact = { - cynical = minor_stress_impact_gain - zealous = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #barter for lower price - city only - option = { - name = ep3_contract_event.0006.city - trigger = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - reason = city_holding - random_list = { - 1 = { - modifier = { - add = root.prestige_level - } - modifier = { - add = root.dynasty.dynasty_prestige_level - } - modifier = { - add = root.stewardship - } - desc = ep3_contract_event.0006.city_won - save_scope_value_as = { - name = success_reason - value = flag:city - } - pay_short_term_gold = { - target = scope:local_1 - gold = minor_gold_value - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - 1 = { - modifier = { - add = scope:local_1.prestige_level - } - modifier = { - add = scope:local_1.dynasty.dynasty_prestige_level - } - desc = ep3_contract_event.0006.city_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.city_lost - desc = ep3_contract_event.0006.city_lost_desc - left_icon = root - right_icon = scope:local_1 - } - } - } - stress_impact = { - generous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - modifier = { - factor = 0 - short_term_gold < minor_gold_value - } - } - } - #try to buy it - always - option = { - name = ep3_contract_event.0006.buy - if = { - limit = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - pay_short_term_gold = { - target = scope:local_1 - gold = major_gold_value - } - save_scope_value_as = { - name = success_reason - value = flag:buy - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - else = { - duel = { - skill = stewardship - target = scope:local_1 - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - max = 50 - } - desc = ep3_contract_event.0006.buy_won - pay_short_term_gold = { - target = scope:local_1 - gold = major_gold_value - } - save_scope_value_as = { - name = success_reason - value = flag:buy - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - min = -49 - } - modifier = { - exists = scope:local_2 - add = scope:local_2.stewardship - } - desc = ep3_contract_event.0006.buy_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.buy_lost - desc = ep3_contract_event.0006.buy_lost_desc - left_icon = root - right_icon = scope:local_1 - pay_short_term_gold = { - target = scope:local_1 - gold = major_gold_value - } - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - } - } - } - } - stress_impact = { - greedy = minor_stress_impact_gain - generous = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - modifier = { - factor = 0 - short_term_gold < major_gold_value - } - } - } - #intimidate them - freebooters and swords-for-hire only - option = { - name = ep3_contract_event.0006.intimidate - trigger = { - OR = { - has_realm_law = camp_purpose_brigands - has_realm_law = camp_purpose_mercenaries - } - } - reason = purpose_brigands_and_mercenaries - duel = { - skills = { intrigue prowess } - target = scope:local_1 - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 50 - } - desc = ep3_contract_event.0006.intimidate_won - save_scope_value_as = { - name = success_reason - value = flag:intimidate - } - trigger_event = ep3_contract_event.0007 - show_as_tooltip = { - scope:newly_created_artifact = { - set_owner = root - } - } - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - min = -49 - } - modifier = { - exists = scope:local_2 - add = scope:local_2.intrigue - add = scope:local_2.prowess - } - desc = ep3_contract_event.0006.intimidate_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.intimidate_lost - desc = ep3_contract_event.0006.intimidate_lost_desc - left_icon = root - right_icon = scope:local_1 - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - wrathful = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #hit the local library - scholars and legitimists only - option = { - name = ep3_contract_event.0006.library - trigger = { - OR = { - has_realm_law = camp_purpose_scholars - has_realm_law = camp_purpose_legitimists - } - } - reason = purpose_legitimists_and_scholars - duel = { - skill = learning - value = decent_skill_rating - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 50 - } - desc = ep3_contract_event.0006.library_won - save_scope_value_as = { - name = success_reason - value = flag:library - } - hidden_effect = { - destroy_artifact = scope:newly_created_artifact - } - custom_tooltip = ep3_contract_event.0006.library.tt - trigger_event = ep3_contract_event.0007 - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep3_contract_event.0006.library_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.library_lost - desc = ep3_contract_event.0006.library_lost_desc - left_icon = root - hidden_effect = { - if = { - limit = { - exists = scope:newly_created_artifact - } - destroy_artifact = scope:newly_created_artifact - } - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - patient = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #go on your own - wanderers and explorers only - option = { - name = ep3_contract_event.0006.explore - trigger = { - OR = { - has_realm_law = camp_purpose_wanderers - has_realm_law = camp_purpose_explorers - } - } - reason = purpose_explorers_and_wanderers - duel = { - skills = { diplomacy martial } - value = decent_skill_rating - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 50 - } - desc = ep3_contract_event.0006.explore_won - save_scope_value_as = { - name = success_reason - value = flag:explore - } - hidden_effect = { - destroy_artifact = scope:newly_created_artifact - } - custom_tooltip = ep3_contract_event.0006.explore.tt - trigger_event = ep3_contract_event.0007 - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep3_contract_event.0006.explore_lost_desc - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0006.explore_lost - desc = ep3_contract_event.0006.explore_lost_desc - left_icon = root - hidden_effect = { - if = { - limit = { - exists = scope:newly_created_artifact - } - destroy_artifact = scope:newly_created_artifact - } - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - patient = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } -} - -scripted_effect change_treasure_type = { - scope:newly_created_artifact = { - if = { - limit = { - OR = { - exists = scope:cupboard - exists = scope:ark_covenant - exists = scope:throne - exists = scope:necklace_artifact - exists = scope:armor_artifact - exists = scope:weapon_artifact - exists = scope:regalia_artifact - #exists = scope:box - #exists = scope:skull - #exists = scope:goblet - #exists = scope:animal_hide_size - exists = scope:tapestry - } - } - #do nothing, as they should already have the correct type - } - else_if = { - limit = { - OR = { - has_variable = ascalon - has_variable = staff_kakusandha - has_variable = zomorrodnegar - has_variable = aruval - has_variable = sword_cid - has_variable = sword_of_muhammad - has_variable = mmaagha_kamalu - has_variable = sword_attila - } - } - reforge_artifact = { type = regalia } - } - else_if = { - limit = { has_variable = iron_crown } - reforge_artifact = { type = helmet } - } - else_if = { - limit = { artifact_type = pedestal } - reforge_artifact = { type = miscellaneous } - } - set_owner = root - } -} - -#Treasure Hunting Contract - event triggered if you find an artifact in previous event ep3_contract_event.0006 to decide if you want to keep the artifact for yourself or complete the contract -ep3_contract_event.0007 = { - type = character_event - title = ep3_contract_event.0007.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:success_reason = flag:castle - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - desc = ep3_contract_event.0007.desc_castle_castle - } - triggered_desc = { - trigger = { - scope:success_reason = flag:church - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - desc = ep3_contract_event.0007.desc_church_church - } - triggered_desc = { - trigger = { - scope:success_reason = flag:city - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - desc = ep3_contract_event.0007.desc_city_city - } - triggered_desc = { - trigger = { - scope:success_reason = flag:buy - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - desc = ep3_contract_event.0007.desc_castle_buy - } - triggered_desc = { - trigger = { - scope:success_reason = flag:buy - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - desc = ep3_contract_event.0007.desc_city_buy - } - triggered_desc = { - trigger = { - scope:success_reason = flag:buy - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - desc = ep3_contract_event.0007.desc_church_buy - } - triggered_desc = { - trigger = { - scope:success_reason = flag:intimidate - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - desc = ep3_contract_event.0007.desc_castle_intimidate - } - triggered_desc = { - trigger = { - scope:success_reason = flag:intimidate - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - desc = ep3_contract_event.0007.desc_city_intimidate - } - triggered_desc = { - trigger = { - scope:success_reason = flag:intimidate - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - desc = ep3_contract_event.0007.desc_church_intimidate - } - triggered_desc = { - trigger = { scope:success_reason = flag:library } - desc = ep3_contract_event.0007.desc_library - } - triggered_desc = { - trigger = { scope:success_reason = flag:explore } - desc = ep3_contract_event.0007.desc_explore - } - } - } - theme = travel - - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:local_1 - trigger = { - NOR = { - scope:success_reason = flag:library - scope:success_reason = flag:explore - } - } - animation = rage - } - lower_left_portrait = { - character = scope:task_contract_employer - } - lower_right_portrait = { - trigger = { - exists = scope:local_2 - NOR = { - scope:success_reason = flag:library - scope:success_reason = flag:explore - } - } - character = scope:local_2 - } - #artifact you find - artifact = { - target = scope:newly_created_artifact - position = lower_center_portrait - } - - override_background = { - trigger = { - OR = { - scope:success_reason = flag:library - scope:success_reason = flag:explore - } - } - reference = wilderness - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = castle_holding - } - } - reference = corridor_night - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - reference = market - } - override_background = { - trigger = { - scope:task_contract_destination = { - has_holding_type = church_holding - } - } - reference = temple - } - override_background = { - trigger = { - scope:task_contract_destination = { - NOR = { - has_holding_type = castle_holding - has_holding_type = city_holding - has_holding_type = church_holding - } - } - } - reference = tavern - } - - immediate = { - random_courtier = { - limit = { - is_adult = yes - } - save_scope_as = follower - } - if = { - limit = { - OR = { - scope:success_reason = flag:library - scope:success_reason = flag:explore - } - } - inspiration_adventure_create_artifact_effect = { - OWNER = root - CREATOR = root - } - add_gold = major_gold_value - } - if = { - limit = { - scope:success_reason = flag:city - } - change_treasure_type = yes - scope:newly_created_artifact = { - set_owner = root - } - inspiration_adventure_create_artifact_effect = { - OWNER = scope:local_1 - CREATOR = scope:local_1 - } - } - } - - #give it back to locals so they join you - option = { - name = ep3_contract_event.0007.castle - trigger = { - scope:success_reason = flag:castle - } - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - add_courtier = scope:local_1 - add_courtier = scope:local_2 - - stress_impact = { - greedy = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - #AI should always complete the contract - ai_chance = { - base = 0 - } - } - #pay them more so they join you - option = { - name = ep3_contract_event.0007.castle_buy - trigger = { - scope:success_reason = flag:buy - scope:task_contract_destination = { - has_holding_type = city_holding - } - } - pay_short_term_gold = { - target = scope:local_2 - gold = major_gold_value - } - add_courtier = scope:local_1 - add_courtier = scope:local_2 - - stress_impact = { - greedy = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - #AI should always complete the contract - ai_chance = { - base = 0 - } - } - #Buy everything for yourself - option = { - name = ep3_contract_event.0007.city_city - trigger = { - scope:success_reason = flag:city - } - pay_short_term_gold = { - target = scope:local_1 - gold = major_gold_value - } - change_treasure_type = yes - scope:newly_created_artifact = { - set_owner = scope:local_1 - } - - stress_impact = { - content = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - #AI should always complete the contract - ai_chance = { - base = 0 - } - } - #after all, why wouldn't I take it for myself? - option = { - name = ep3_contract_event.0007.a - if = { - limit = { - NOT = { scope:success_reason = flag:city } - } - change_treasure_type = yes - } - if = { - limit = { - scope:success_reason = flag:castle - } - set_relation_rival = { - target = scope:local_1 - reason = rival_stole_artifact - } - set_relation_rival = { - target = scope:local_2 - reason = rival_stole_artifact - } - } - - stress_impact = { - content = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - #AI should always complete the contract - ai_chance = { - base = 0 - } - } - #give it back to task_contract_employer to complete the contract - option = { - name = ep3_contract_event.0007.b - scope:newly_created_artifact = { - set_owner = scope:task_contract_employer - } - scope:task_contract = { - complete_task_contract = success_standard - } - if = { - limit = { - scope:success_reason = flag:castle - } - set_relation_rival = { - target = scope:local_1 - reason = rival_stole_artifact - } - set_relation_rival = { - target = scope:local_2 - reason = rival_stole_artifact - } - } - #AI should always complete the contract - ai_chance = { - base = 10 - } - } - after = { - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:local_ruler } - scope:success_reason = flag:castle - } - progress_towards_rival_effect = { - REASON = rival_stole_artifact - CHARACTER = scope:local_ruler - OPINION = default_rival_opinion - } - } - } -} - -#Join war contract - joining the war -ep3_contract_event.0008 = { - type = character_event - title = ep3_contract_event.0008.t - desc = ep3_contract_event.0008.desc - theme = war - #task_contract_taker, you - left_portrait = { - character = root - animation = inspect_weapon - } - right_portrait = { - character = scope:commander - animation = personality_callous - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - random_knight = { - save_scope_as = commander - } - } - scope:commander = { - add_character_flag = need_military_outfit - } - } - - #take the contract and join the war - option = { - name = ep3_contract_event.0008.a - highlight_portrait = scope:task_contract_employer - scope:task_contract_war = { - hidden_effect = { set_called_to = root } - if = { - limit = { - is_attacker = scope:task_contract_employer - } - add_attacker = root - } - else = { - add_defender = root - } - } - custom_tooltip = join_war_contract.employer_military_strength - custom_tooltip = join_war_contract.target_military_strength - #AI should always complete the contract - ai_chance = { - base = 10 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - after = { - scope:commander = { - remove_character_flag = need_military_outfit - } - } -} - -#Reclaim Artifact contract - start event -ep3_contract_event.0009 = { - type = character_event - title = ep3_contract_event.0009.t - desc = ep3_contract_event.0009.desc - theme = intrigue - #task_contract_taker, you - left_portrait = { - character = root - animation = scheme - } - #character giving you the contract - right_portrait = { - character = scope:task_contract_employer - animation = bribing - } - #character you have to steal from - lower_right_portrait = { - character = scope:task_contract_target - } - #artifact you have to steal - artifact = { - target = scope:task_contract_object - position = lower_center_portrait - } - - immediate = { - set_contract_scopes_effect = yes - } - #take the contract and start scheme to steal the artifact - option = { - name = ep3_contract_event.0009.a - custom_tooltip = ep3_contract_event.0009.open_start_stealing_back_artifact - if = { - limit = { - is_ai = yes - } - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = steal_back_artifact - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_thief - AGENT_2 = agent_thief - # Speed. - AGENT_3 = agent_infiltrator - AGENT_4 = agent_infiltrator - # Secrecy. - AGENT_5 = agent_lookout - } - scope:new_scheme ?= { - set_variable = { - name = target_artifact - value = scope:task_contract_object - } - } - } - else = { - open_interaction_window = { - interaction = start_stealing_back_artifact - actor = root - recipient = scope:task_contract_target - } - } - #AI should always complete the contract - ai_chance = { - base = 10 - } - } - #take the contract, but only unlock the steal artifact interaction - option = { - name = ep3_contract_event.0009.b - #AI should always complete the contract - ai_chance = { - base = 0 - } - } -} - -#transport contract completion event - triggered whenever you have an active transport contract and pass through a contract location -ep3_contract_event.0011 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - desc = ep3_contract_event.0011.t_vip - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - desc = ep3_contract_event.0011.t_child - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - desc = ep3_contract_event.0011.t_explorer - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - desc = ep3_contract_event.0011.t_artifact - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - desc = ep3_contract_event.0011.t_gold - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - desc = ep3_contract_event.0011.t_animal - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - desc = ep3_contract_event.0011.t_construction - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_vip } } - desc = ep3_contract_event.0011.desc_vip - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_ward } } - desc = { - desc = ep3_contract_event.0011.desc_ward - first_valid = { - triggered_desc = { - trigger = { scope:ward_too_old ?= yes } - desc = ep3_contract_event.0011.desc_ward_too_old - } - triggered_desc = { - trigger = { scope:ward_limit ?= yes } - desc = ep3_contract_event.0011.desc_ward_limit - } - desc = ep3_contract_event.0011.desc_ward_accepted - } - } - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_explorer } } - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract.var:travel_reason = { - OR = { - flag:capitals ?= this - flag:grand_city ?= this - flag:mausoleum_at_halicarnassus ?= this - flag:lighthouse_of_alexandria ?= this - } - } - } - desc = ep3_contract_event.0011.desc_explorer_other - } - desc = ep3_contract_event.0011.desc_explorer_building - } - } - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_artifact } } - desc = ep3_contract_event.0011.desc_artifact - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_gold } } - desc = ep3_contract_event.0011.desc_gold - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_transport_animal } } - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract.var:escorted_story ?= { story_type = story_cycle_pet_dog } - scope:hates_pets ?= yes - } - desc = ep3_contract_event.0011.desc_animal_dog_hate - } - triggered_desc = { - trigger = { scope:task_contract.var:escorted_story ?= { story_type = story_cycle_pet_dog } } - desc = ep3_contract_event.0011.desc_animal_dog_love - } - triggered_desc = { - trigger = { - scope:task_contract.var:escorted_story ?= { story_type = story_cycle_pet_cat } - scope:hates_pets ?= yes - } - desc = ep3_contract_event.0011.desc_animal_cat_hate - } - triggered_desc = { - trigger = { scope:task_contract.var:escorted_story ?= { story_type = story_cycle_pet_cat } } - desc = ep3_contract_event.0011.desc_animal_cat_love - } - } - } - } - triggered_desc = { - trigger = { scope:task_contract = { has_task_contract_type = laamp_construction_contract } } - desc = ep3_contract_event.0011.desc_construction - } - } - } - theme = landless_adventurer - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = war_over_win - } - right_portrait = { - trigger = { exists = scope:task_contract_target } - character = scope:task_contract_target - animation = personality_compassionate - } - lower_right_portrait = { - trigger = { - exists = scope:task_contract_employer - NOT = { scope:task_contract_target ?= scope:task_contract_employer } - } - character = scope:task_contract_employer - } - lower_left_portrait = { - trigger = { - exists = scope:task_contract_object - NOR = { - scope:task_contract_target = scope:task_contract_object - scope:task_contract_employer = scope:task_contract_object - } - } - character = scope:task_contract_object - } - artifact = { - trigger = { exists = scope:escorted_artifact } - target = scope:escorted_artifact - position = lower_center_portrait - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract = { - switch = { - trigger = has_task_contract_type - laamp_transport_vip = { - root.current_travel_plan = { remove_character = scope:task_contract_object } - scope:task_contract_object = { - remove_variable = blocked_from_leaving - visit_court_of = scope:task_contract_target - } - } - laamp_transport_ward = { - root.current_travel_plan = { remove_character = scope:task_contract_object } - if = { - limit = { - scope:task_contract_object = { - is_adult = yes - } - } - save_scope_value_as = { - name = ward_too_old - value = yes - } - } - else_if = { - limit = { - scope:task_contract_target = { - num_of_relation_ward > 1 - } - } - save_scope_value_as = { - name = ward_limit - value = yes - } - } - else = { - scope:task_contract_object = { - if = { - limit = { - any_relation = { - type = guardian - } - } - random_relation = { - type = guardian - save_scope_as = old_guardian - } - remove_guardian_effect = { - GUARDIAN = scope:old_guardian - WARD = scope:task_contract_object - RETURN_WARD = no - HIDE_OPINION = no - } - } - remove_variable = blocked_from_leaving - visit_court_of = scope:task_contract_target - set_relation_guardian = scope:task_contract_target - save_scope_as = ward - scope:task_contract_target = { - save_scope_as = guardian - } - scope:task_contract_employer = { - save_scope_as = ward_liege - } - trigger_event = { on_action = on_ward_arrive_at_guardian } - } - } - scope:task_contract_object = { - progress_towards_friend_effect = { - REASON = friend_random_fallback - CHARACTER = root - OPINION = default_friend_opinion - } - } - } - laamp_transport_explorer = { - root.current_travel_plan = { remove_character = scope:task_contract_object } - scope:task_contract_object = { - remove_variable = blocked_from_leaving - save_scope_as = task_contract_target - } - } - laamp_transport_artifact = { - scope:escorted_artifact = { - set_owner = scope:task_contract_target - set_variable = { - name = ungiftable - } - } - } - laamp_transport_gold = { - root = { - pay_treasury_or_gold = { - target = scope:task_contract_target - value = scope:task_contract.var:escorted_gold - } - } - scope:task_contract_employer = { - if = { - limit = { - can_add_hook = { - target = scope:task_contract_target - type = indebted_hook - } - } - add_hook = { - target = scope:task_contract_target - type = indebted_hook - } - } - } - } - laamp_transport_animal = { - #give them the whole story cycle for pets - if = { - limit = { - scope:escorted_story = { story_type = story_cycle_pet_dog } - } - root = { - transfer_dog_story_cycle_to_effect = { - CHARACTER = scope:task_contract_target - STORY = scope:escorted_story - } - } - } - else = { - root = { - transfer_cat_story_cycle_to_effect = { - CHARACTER = scope:task_contract_target - STORY = scope:escorted_story - } - } - scope:escorted_story = { - set_variable = { - name = gifted_pet_story - value = scope:task_contract_employer - } - } - } - scope:task_contract_target = { - if = { - limit = { #"What am I supposed to do with this??" - OR = { - has_personality_malicious_trigger = yes - AND = { - scope:escorted_story = { story_type = story_cycle_pet_cat } - has_character_modifier = cat_story_allergy_modifier - } - AND = { - scope:escorted_story = { story_type = story_cycle_pet_dog } - faith = { religion_tag = islam_religion } - } - } - } - save_scope_value_as = { - name = hates_pets - value = yes - } - add_opinion = { - target = scope:task_contract_employer - modifier = dumped_animal_on_me_opinion - } - } - else = { - add_opinion = { - target = scope:task_contract_employer - modifier = grateful_opinion - opinion = 15 - } - } - } - } - laamp_construction_contract = { - scope:task_contract_destination = { - county = { - add_county_modifier = { - modifier = massive_construction_efforts_modifier - years = 5 - } - } - } - } - } - } - } - - option = { - name = ep3_contract_event.0011.a - trigger = { - scope:task_contract = { - has_task_contract_type = laamp_construction_contract - } - } - add_character_modifier = ep3_construction_contract_modifier - custom_tooltip = ep3_contract_event.0011.construction_invalidation - show_as_tooltip = { - custom_tooltip = ep3_contract_event.0011.construction_reward - scope:task_contract = { complete_task_contract = success_critical } - } - if = { - limit = { - current_travel_plan ?= { - is_travel_with_domicile = no - } - } - current_travel_plan ?= { - abort_travel_plan = yes - } - save_scope_value_as = { - name = provision_to_gold_conversion_value - value = { - value = root.domicile.provision_cost_to_owner - add = root.domicile.provisions - } - } - if = { - limit = { - scope:provision_to_gold_conversion_value < 0 - } - domicile = { - change_provisions = { - value = 0 - subtract = root.domicile.provisions - } - } - add_gold = { - value = scope:provision_to_gold_conversion_value - multiply = 0.1 - } - } - else = { - domicile = { - change_provisions = root.domicile.provision_cost_to_owner - } - } - } - #AI should have a small chance to move the domicile - ai_chance = { - base = 2 - } - } - - option = { - name = ep3_contract_event.0011.b - trigger = { - scope:task_contract = { - has_task_contract_type = laamp_transport_explorer - task_contract_employer = { - is_landed = no - } - } - } - add_courtier = scope:task_contract_object - current_travel_plan = { - add_companion = scope:task_contract_object - } - #AI should be willing to take more people, as it's probably their best bet to get them - ai_chance = { - base = 20 - } - } - - option = { - name = ep3_contract_event.0011.c - trigger = { scope:ward_limit ?= yes } - duel = { - skill = diplomacy - value = scope:task_contract_target.diplomacy - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:task_contract_target = { - random_relation = { - type = ward - save_scope_as = current_ward - } - remove_guardian_effect = { - GUARDIAN = scope:task_contract_target - WARD = scope:current_ward - RETURN_WARD = yes - HIDE_OPINION = yes - } - } - scope:task_contract_object = { - remove_variable = blocked_from_leaving - visit_court_of = scope:task_contract.var:task_contract_target - set_relation_guardian = scope:task_contract.var:task_contract_target - save_scope_as = ward - scope:task_contract.var:task_contract_target = { - save_scope_as = guardian - } - scope:task_contract.var:task_contract_employer = { - save_scope_as = ward_liege - } - trigger_event = { on_action = on_ward_arrive_at_guardian } - } - save_scope_value_as = { - name = ward_limit - value = no - } - } - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - scope:task_contract_target = { - add_opinion = { - target = root - modifier = insulted_opinion - opinion = -20 - } - } - } - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - option = { - name = { - trigger = { - any_task_contract = { - save_temporary_scope_as = temp_contract - task_contract_taker ?= { - this = root - } - root.current_travel_plan = { - any_future_path_location = { - this = scope:temp_contract.task_contract_destination - } - } - } - } - text = ep3_contract_event.0011.d_continue - } - name = { - trigger = { - always = yes - } - text = ep3_contract_event.0011.d_end - } - if = { - limit = { - scope:task_contract = { - has_task_contract_type = laamp_construction_contract - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - #AI should always complete the contract - ai_chance = { - base = 1 - modifier = { - add = 1000 - #AI should keep going if other contracts are on the travel path - any_task_contract = { - save_temporary_scope_as = temp_contract - task_contract_taker ?= { - this = root - } - root.current_travel_plan = { - any_future_path_location = { - this = scope:temp_contract.task_contract_destination - } - } - } - } - } - } - - after = { - scope:task_contract = { - switch = { - trigger = has_task_contract_type - laamp_transport_vip = { - if = { - limit = { - var:task_contract_object ?= { - is_alive = no - } - } - complete_task_contract = failure_standard - } - else_if = { - limit = { - time_since_contract_taken > 360 - } - complete_task_contract = success_standard - } - else = { - complete_task_contract = success_critical - } - } - laamp_transport_artifact = { - if = { - limit = { - OR = { - NOT = { exists = scope:task_contract.var:escorted_artifact } - scope:task_contract.var:escorted_artifact ?= { - artifact_durability < 1 - } - } - } - complete_task_contract = transport_destroyed - } - else_if = { - limit = { - time_since_contract_taken > 360 - } - complete_task_contract = success_standard - } - else = { - complete_task_contract = success_critical - } - } - laamp_transport_gold = { - complete_task_contract = success_standard - } - laamp_transport_ward = { - if = { - limit = { - OR = { - scope:ward_limit ?= yes - scope:ward_too_old ?= yes - } - } - complete_task_contract = failure_standard - } - else = { - complete_task_contract = success_standard - } - } - laamp_transport_explorer = { - if = { - limit = { - time_since_contract_taken > 360 - } - complete_task_contract = success_standard - } - else = { - complete_task_contract = success_critical - } - } - laamp_transport_animal = { - complete_task_contract = success_standard - } - } - } - } -} - -#transport contract invalidated - triggered whenever a transport contract is invalidated for any reason -#on_invalidation has to specify scope:task_contract_invalidation_reason -ep3_contract_event.0012 = { - type = letter_event - opening = { - triggered_desc = { - trigger = { - OR = { - scope:task_contract_invalidation_reason = flag:escortee_dead - scope:task_contract_invalidation_reason = flag:pet_dead - } - } - desc = ep3_contract_event.0012.opening_angry - } - triggered_desc = { - trigger = { - OR = { - scope:task_contract_invalidation_reason = flag:employer_dead - scope:task_contract_invalidation_reason = flag:target_dead - scope:task_contract_invalidation_reason = flag:prisoner_free - scope:task_contract_invalidation_reason = flag:not_vassal - scope:task_contract_invalidation_reason = flag:unlanded_employer_is_imprisoned - scope:task_contract_invalidation_reason = flag:faction_disbanded - } - } - desc = ep3_contract_event.0012.opening - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:employer_dead } - desc = ep3_contract_event.0012.desc_employer_dead - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:target_dead } - desc = ep3_contract_event.0012.desc_target_dead - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:escortee_dead } - desc = ep3_contract_event.0012.desc_escortee_dead - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:pet_dead } - desc = ep3_contract_event.0012.desc_pet_dead - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:prisoner_free } - desc = ep3_contract_event.0012.desc_prisoner_free - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:not_vassal } - desc = ep3_contract_event.0012.desc_not_vassal - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:unlanded_employer_is_imprisoned } - desc = ep3_contract_event.0012.desc_unlanded_employer_is_imprisoned - } - triggered_desc = { - trigger = { scope:task_contract_invalidation_reason = flag:faction_disbanded } - desc = ep3_contract_event.0012.desc_faction_disbanded - } - } - } - sender = scope:sender - immediate = { - if = { - limit = { - exists = current_travel_plan - NOT = { exists = scope:travel_destination } - } - current_travel_plan.final_destination_province = { - save_scope_as = travel_destination - } - } - #For those with heirs - if = { - limit = { exists = scope:employer_heir } - scope:employer_heir = { save_scope_as = sender } - } - #Or just the employer, straight up - else = { - scope:task_contract_employer = { save_scope_as = sender } - } - #Remove the treasure map - if = { - limit = { - var:invalidated_task_contract_type = flag:laamp_treasure_map_contract - } - random_character_artifact = { - limit = { has_variable = 1025_treasure_map } - hidden_effect = { destroy_artifact = this } - } - #Remove the employer from your camp - if = { - limit = { - scope:task_contract_employer = { is_courtier_of = root } - } - remove_courtier_or_guest = scope:task_contract_employer - } - #Mysterious - custom_tooltip = treasure_map_disappeared.tt - } - #stuff that would be nice to see in tooltip, but is already executed in on_invalidation - show_as_tooltip = { - if = { - limit = { - scope:task_contract_object ?= { is_alive = yes } - } - scope:task_contract_object = { return_to_court = yes } - } - } - switch = { - trigger = scope:task_contract_invalidation_reason - #employer or target died, get gold compensation - flag:employer_dead = { add_gold = task_contract_invalidated_gold_gain_value } - flag:target_dead = { add_gold = task_contract_invalidated_gold_gain_value } - #character or pet you were suppose to escort died - flag:escortee_dead = { - add_prestige = task_contract_failure_prestige_loss_full_value - scope:task_contract_employer = { - progress_towards_rival_effect = { - REASON = rival_escortee_died - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - flag:pet_dead = { - add_prestige = task_contract_failure_prestige_loss_full_value - scope:task_contract_employer = { - progress_towards_rival_effect = { - REASON = rival_escortee_died - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - flag:prisoner_free = { add_gold = task_contract_invalidated_gold_gain_value } - flag:unlanded_employer_is_imprisoned = { - #Nothing for you. They're unlanded. - } - flag:not_vassal = { - add_gold = task_contract_invalidated_gold_gain_value - } - flag:faction_disbanded = { - add_gold = task_contract_invalidated_gold_gain_value - } - } - } - #Let's head home - option = { - name = { - trigger = { - OR = { - scope:task_contract_invalidation_reason = flag:employer_dead - scope:task_contract_invalidation_reason = flag:target_dead - scope:task_contract_invalidation_reason = flag:prisoner_free - scope:task_contract_invalidation_reason = flag:not_vassal - scope:task_contract_invalidation_reason = flag:faction_disbanded - } - } - text = ep3_contract_event.0012.a - } - name = { - trigger = { - OR = { - scope:task_contract_invalidation_reason = flag:escortee_dead - scope:task_contract_invalidation_reason = flag:pet_dead - scope:task_contract_invalidation_reason = flag:unlanded_employer_is_imprisoned - } - } - text = ep3_contract_event.0012.b - } - return_home = yes - ai_chance = { - base = 10 - } - } - #Keep going - option = { - name = ep3_contract_event.0012.c - trigger = { exists = scope:travel_destination } - ai_chance = { - base = 0 - } - } - after = { - remove_variable = invalidated_task_contract_type - } -} - -#Join war contract success/failure = triggered when war ends in war_on_actions -ep3_contract_event.0013 = { - type = letter_event - sender = scope:task_contract_employer - opening = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract_reward = flag:success_standard } - desc = ep3_contract_event.0013.opening_success - } - triggered_desc = { - trigger = { scope:task_contract_reward = flag:failure_standard } - desc = ep3_contract_event.0013.opening_failure - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:task_contract_reward = flag:success_standard } - desc = ep3_contract_event.0013.desc_success - } - triggered_desc = { - trigger = { scope:task_contract_reward = flag:failure_standard } - desc = ep3_contract_event.0013.desc_failure - } - } - } - - immediate = { - #save scopes for ep3_hire_laamp_mercs_payment_value scripted value to work - save_scope_as = laamp_temp - scope:task_contract_employer = { - save_scope_as = employer - } - save_scope_value_as = { - name = war_contribution_value - value = "scope:war.war_contribution(scope:laamp_temp)" - } - } - option = { - name = ep3_contract_event.0013.a - trigger = { scope:task_contract_reward = flag:success_standard } - scope:task_contract_employer = { - pay_treasury_or_gold = { - target = scope:task_contract_taker - value = scope:laamp_temp.ep3_hire_laamp_mercs_payment_value - } - } - scope:laamp_temp = { - if = { - limit = { - faith != scope:task_contract.var:task_contract_target.faith - } - add_piety = { - value = "scope:war.war_contribution(scope:laamp_temp)" - divide = 100 - min = minor_piety_gain - max = massive_piety_gain - } - } - } - ai_chance = { - base = 1 - } - } - option = { - name = ep3_contract_event.0013.b - trigger = { scope:task_contract_reward = flag:failure_standard } - - ai_chance = { - base = 1 - } - } -} - -#Protect Heritage - start event to help getting a title revocation rights vassal contract -ep3_contract_event.0020 = { - type = character_event - title = ep3_contract_event.0020.t - desc = ep3_contract_event.0020.desc - theme = intrigue - #contract_taker, you - left_portrait = { - character = root - animation = personality_compassionate - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - } - - #use hook - option = { - name = ep3_contract_event.0020.a - trigger = { - has_hook = scope:task_contract_target - } - show_as_unavailable = { - NOT = { has_hook = scope:task_contract_target } - } - reason = hook - remove_hook = { target = scope:task_contract_target } - scope:task_contract_employer = { - vassal_contract_set_obligation_level = { - type = title_revocation_rights - level = 1 - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - #intrigue - option = { - name = ep3_contract_event.0020.b - trigger = { - OR = { - has_realm_law = camp_purpose_wanderers - has_realm_law = camp_purpose_explorers - } - } - reason = purpose_explorers_and_wanderers - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_intrigue_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_thug - AGENT_2 = agent_shill - AGENT_3 = agent_wrangler - # Speed. - AGENT_4 = agent_infiltrator - AGENT_5 = agent_socialite - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0020.agents_intrigue - custom_tooltip = ep3_contract_event.0020.tt - } - #martial - option = { - name = ep3_contract_event.0020.c - trigger = { - OR = { - has_realm_law = camp_purpose_brigands - has_realm_law = camp_purpose_mercenaries - } - } - reason = purpose_brigands_and_mercenaries - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_martial_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_muscle - AGENT_2 = agent_thug - AGENT_3 = agent_bodyguard - # Speed. - AGENT_4 = agent_footpad - AGENT_5 = agent_tracker - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0020.agents_martial - custom_tooltip = ep3_contract_event.0020.tt - } - #learning - option = { - name = ep3_contract_event.0020.d - trigger = { - OR = { - has_realm_law = camp_purpose_scholars - has_realm_law = camp_purpose_legitimists - } - } - reason = purpose_legitimists_and_scholars - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_learning_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_bailiff - AGENT_2 = agent_scribe - AGENT_3 = agent_diplomat - # Speed. - AGENT_4 = agent_theologian - AGENT_5 = agent_justiciar_speed - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0020.agents_learning - custom_tooltip = ep3_contract_event.0020.tt - } - #diplomacy - always - option = { - name = ep3_contract_event.0020.e - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_diplomacy_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_diplomat - AGENT_2 = agent_shill - AGENT_3 = agent_scribe - # Speed. - AGENT_4 = agent_socialite - AGENT_5 = agent_herald - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0020.agents_diplomacy - custom_tooltip = ep3_contract_event.0020.tt - } -} - -#Reward the Faithful - start event to help getting a religious rights vassal contract -ep3_contract_event.0021 = { - type = character_event - title = ep3_contract_event.0021.t - desc = ep3_contract_event.0021.desc - theme = intrigue - #contract_taker, you - left_portrait = { - character = root - animation = personality_compassionate - } - #character giving you the contract - right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_right_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - } - - #use hook - option = { - name = ep3_contract_event.0021.a - trigger = { - has_hook = scope:task_contract_target - } - show_as_unavailable = { - NOT = { has_hook = scope:task_contract_target } - } - reason = hook - remove_hook = { target = scope:task_contract_target } - scope:task_contract_employer = { - vassal_contract_set_obligation_level = { - type = religious_rights - level = 1 - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - #intrigue - option = { - name = ep3_contract_event.0021.b - trigger = { - OR = { - has_realm_law = camp_purpose_wanderers - has_realm_law = camp_purpose_explorers - } - } - reason = purpose_explorers_and_wanderers - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_intrigue_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_thug - AGENT_2 = agent_shill - AGENT_3 = agent_wrangler - # Speed. - AGENT_4 = agent_infiltrator - AGENT_5 = agent_socialite - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0021.agents_intrigue - custom_tooltip = ep3_contract_event.0021.tt - } - #martial - option = { - name = ep3_contract_event.0021.c - trigger = { - OR = { - has_realm_law = camp_purpose_brigands - has_realm_law = camp_purpose_mercenaries - } - } - reason = purpose_brigands_and_mercenaries - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_martial_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_muscle - AGENT_2 = agent_thug - AGENT_3 = agent_bodyguard - # Speed. - AGENT_4 = agent_footpad - AGENT_5 = agent_tracker - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0021.agents_martial - custom_tooltip = ep3_contract_event.0021.tt - } - #learning - option = { - name = ep3_contract_event.0021.d - trigger = { - OR = { - has_realm_law = camp_purpose_scholars - has_realm_law = camp_purpose_legitimists - } - } - reason = purpose_legitimists_and_scholars - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_learning_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_bailiff - AGENT_2 = agent_scribe - AGENT_3 = agent_diplomat - # Speed. - AGENT_4 = agent_theologian - AGENT_5 = agent_justiciar_speed - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0021.agents_learning - custom_tooltip = ep3_contract_event.0021.tt - } - #diplomacy - always - option = { - name = ep3_contract_event.0021.e - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = protect_minority_vassal_contract_diplomacy_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_diplomat - AGENT_2 = agent_shill - AGENT_3 = agent_scribe - # Speed. - AGENT_4 = agent_socialite - AGENT_5 = agent_herald - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - trigger_event = laamp_extra_contract_schemes.0001 - custom_tooltip = ep3_contract_event.0021.agents_diplomacy - custom_tooltip = ep3_contract_event.0021.tt - } -} - -#Contract to scheme a Prison Break - starting event -ep3_contract_event.0030 = { - type = character_event - title = ep3_contract_event.0030.t - desc = ep3_contract_event.0030.desc - theme = intrigue - #contract_taker, you - left_portrait = { - character = root - animation = eyeroll - } - #contract_object, character to rescue from prison - right_portrait = { - character = scope:task_contract_employer - animation = bribing - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_object - } - #the imprisoner - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - } - - #use hook - option = { - name = ep3_contract_event.0030.a - trigger = { - has_hook = scope:task_contract_target - } - show_as_unavailable = { - NOT = { has_hook = scope:task_contract_target } - } - reason = hook - remove_hook = { target = scope:task_contract_target } - scope:task_contract = { - complete_task_contract = success_standard - } - #AI should always try to complete the contract - ai_chance = { - base = 100 - } - } - #prison break - option = { - name = ep3_contract_event.0030.b - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = laamp_prison_break_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_thief - AGENT_2 = agent_thug - # Speed. - AGENT_3 = agent_infiltrator - # Secrecy. - AGENT_4 = agent_lookout - AGENT_5 = agent_decoy - } - scope:task_contract.scheme = { - save_scope_as = scheme - } - custom_tooltip = ep3_contract_event.0030.agents - trigger_event = laamp_extra_contract_schemes.0011 - #AI should always try to complete the contract - ai_chance = { - base = 1 - } - } - #prison break - option = { - name = ep3_contract_event.0030.c - custom_tooltip = ep3_contract_event.0030.c.tt - reverse_add_opinion = { - modifier = angry_opinion - opinion = -10 - target = scope:task_contract_employer - } - - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -#Are we actually traveling towards the treasure now? -scripted_trigger 0040_traveling_towards_treasure_with_domicile_trigger = { - has_variable = ep3_laamp_decision_1000_is_excavating - current_travel_plan ?= { - is_travel_with_domicile = yes - OR = { - next_destination_province = scope:task_contract_destination - final_destination_province = scope:task_contract_destination - } - } -} - -#Your Treasure Map broke! -ep3_contract_event.0040 = { - type = character_event - title = ep3_contract_event.0040.t - desc = ep3_contract_event.0040.desc - theme = travel - left_portrait = { - character = root - animation = shock - } - immediate = { - #Save scopes - random_character_task_contract = { - task_contract_type = laamp_treasure_map_contract - save_scope_as = task_contract - } - scope:task_contract = { - task_contract_employer = { save_scope_as = task_contract_employer } - var:contract_treasure_location = { save_scope_as = treasure_map_contract_destination } - } - #Remove treasure map - destroy_artifact = scope:decayed_artifact - #Don't need you anymore, go away - #move_to_pool = scope:task_contract_employer - scope:task_contract_employer = { select_and_move_to_pool_effect = yes } - } - #Back home we go - option = { - name = { - trigger = { exists = current_travel_plan } - text = ep3_contract_event.0040.a_travel - } - name = ep3_contract_event.0040.a - #Haven't paid up? - if = { - limit = { 0040_traveling_towards_treasure_with_domicile_trigger = no } - #Then back home we go - return_home = yes - } - else = { - #Keep doing what you're doing - } - ai_chance = { - base = 10 - } - } - #Otherwise possibly stay in place - option = { - name = ep3_contract_event.0040.b - trigger = { 0040_traveling_towards_treasure_with_domicile_trigger = yes } - #Show 'em what happened - show_as_tooltip = { - domicile ?= { move_domicile = root.location } - } - #No point in traveling without the map - current_travel_plan ?= { abort_travel_plan = yes } - ai_chance = { - base = 2 - } - } -} - -#Employer died or became incapable while in your camp -ep3_contract_event.0041 = { - type = character_event - title = { - first_valid = { - #Dead - triggered_desc = { - trigger = { - scope:task_contract_employer = { is_alive = no } - } - desc = ep3_contract_event.0041.t_dead - } - #Incapable - triggered_desc = { - trigger = { - scope:task_contract_employer = { has_trait = incapable } - } - desc = ep3_contract_event.0041.t_incapable - } - } - } - desc = { - first_valid = { - #Dead - triggered_desc = { - trigger = { - scope:task_contract_employer = { is_alive = no } - } - desc = ep3_contract_event.0041.desc_dead - } - #Incapable - triggered_desc = { - trigger = { - scope:task_contract_employer = { has_trait = incapable } - } - desc = ep3_contract_event.0041.desc_incapable - } - } - desc = ep3_contract_event.0041.desc_outro - } - theme = travel - override_background = { reference = ep3_relaxing_tent } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:task_contract_employer - #Dead - triggered_animation = { - trigger = { is_alive = no } - animation = dead - } - #Incapable - animation = shiver - } - immediate = { - #Scopes are carried over from when the event triggers in the invalidation block of the laamp_treasure_map_contract - scope:task_contract_destination = { save_scope_as = travel_destination } - #Wait, what just happened? - scope:task_contract_employer = { - if = { - limit = { is_alive = no } - #Repurposing old loc strings... - save_scope_as = target - custom_tooltip = seize_realm_target_died_tt - } - else = { custom_tooltip = treasure_map_employer_is_incapable.tt } - } - #Remove the treasure map - random_character_artifact = { - limit = { has_variable = 1025_treasure_map } - save_scope_as = 0041_treasure_map - hidden_effect = { destroy_artifact = this } - } - #Very mysterious - custom_tooltip = treasure_map_disappeared.tt - #Mention that it invalidated - custom_tooltip = contract_invalidated_desc - } - #Staying. Here. - option = { - name = ep3_contract_event.0041.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_employer = { is_alive = no } - } - desc = ep3_contract_event.0041.a.flavor_dead - } - triggered_desc = { - trigger = { - scope:task_contract_employer = { has_trait = incapable } - } - desc = ep3_contract_event.0041.a.flavor_incapable - } - } - } - #No point in traveling without the map - return_home = yes - } - #Already paid for my domicile to travel. We're continuing! - option = { - name = travel_danger_events.1011.c - trigger = { 0040_traveling_towards_treasure_with_domicile_trigger = yes } - } - after = { remove_variable ?= ep3_laamp_decision_1000_is_excavating } -} - -scripted_trigger 0045_artifact_will_be_reforged_trigger = { - OR = { - #Variables - has_variable = ascalon - has_variable = staff_kakusandha - has_variable = zomorrodnegar - has_variable = aruval - has_variable = sword_cid - has_variable = sword_of_muhammad - has_variable = mmaagha_kamalu - has_variable = sword_attila - has_variable = iron_crown - has_variable = crown_of_justinian - has_variable = angelica_ring - #Types - artifact_type = scepter_pedestal - artifact_type = brooch_pedestal - artifact_type = necklace_pedestal - artifact_type = pedestal - artifact_type = sculpture - artifact_type = goblet - artifact_type = jug - artifact_type = urn - } -} - -#You have accepted the Treasure Map contract - the employer tags along - starting event -ep3_contract_event.0043 = { - type = character_event - title = ep3_contract_event.0043.t - desc = ep3_contract_event.0043.desc - theme = travel - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = gallowsbait - has_trait = greedy - } - animation = personality_dishonorable - } - animation = personality_rational - } - right_portrait = { - character = scope:task_contract_employer - animation = ecstasy - } - artifact = { - trigger = { exists = scope:0043_treasure_map } - target = scope:0043_treasure_map - position = lower_center_portrait - } - immediate = { - #Save scopes - random_character_task_contract = { - task_contract_type = laamp_treasure_map_contract - save_scope_as = task_contract - } - scope:task_contract.task_contract_employer = { save_scope_as = task_contract_employer } - show_as_tooltip = { add_courtier = scope:task_contract_employer } - scope:task_contract_employer = { - reverse_add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - #This should always exist - random_character_artifact = { - limit = { has_variable = 1025_treasure_map } - save_scope_as = 0043_treasure_map - } - } - #Do it now - open Decisions screen - option = { - name = ep3_contract_event.0043.a - custom_tooltip = ep3_contract_event.0043.a.tt - #Decisions!! - decision:treasure_map_contract_decision = { - open_view_data = { - view = decision_detail - player = root - } - } - } - #Yeah, yeah, I'll get to it... - option = { - name = ep3_contract_event.0043.b - } -} - -#Pre-filter because on_arrival_event doesn't respect event triggers :scree: -ep3_contract_event.0044 = { - hidden = yes - - immediate = { - if = { - limit = { - has_variable = ep3_laamp_decision_1000_is_excavating - any_character_task_contract = { task_contract_type = laamp_treasure_map_contract } - } - trigger_event = ep3_contract_event.0045 - } - else = { - #Nothing. Zilch. Zip. Nada. - } - } -} - -#You find the Treasure. Do you keep it? -ep3_contract_event.0045 = { - type = character_event - title = ep3_contract_event.0045.t - desc = { - first_valid = { - #Historical artifact - triggered_desc = { - trigger = { exists = scope:treasure_artifact_historical } - desc = ep3_contract_event.0045.desc_artifact_historical - } - #jewelry - triggered_desc = { - trigger = { exists = scope:treasure_artifact_jewelry } - desc = ep3_contract_event.0045.desc_artifact_jewelry - } - #Great amount of gold - triggered_desc = { - trigger = { exists = scope:treasure_gold_great } - desc = ep3_contract_event.0045.desc_gold_great - } - #Mediocre amount of gold - triggered_desc = { - trigger = { exists = scope:treasure_gold_mediocre } - desc = ep3_contract_event.0045.desc_gold_mediocre - } - #Poor amount of gold - triggered_desc = { - trigger = { exists = scope:treasure_gold_poor } - desc = ep3_contract_event.0045.desc_gold_poor - } - #Nice view - oasis - triggered_desc = { - trigger = { - exists = scope:treasure_riches_in_scenery - exists = scope:is_dry_region - } - desc = ep3_contract_event.0045.desc_riches_in_scenery_dry - } - #Nice view - spring - triggered_desc = { - trigger = { - exists = scope:treasure_riches_in_scenery - NOT = { exists = scope:is_dry_region } - } - desc = ep3_contract_event.0045.desc_riches_in_scenery - } - #Fallback - desc = ep3_contract_event.0045.desc_pillaged - } - } - theme = landless_adventurer - #Literally anything else but that adventurer tent - override_background = { reference = terrain } - #The treasure of beautiful nature - override_background = { - trigger = { - exists = scope:treasure_riches_in_scenery - NOT = { exists = scope:is_dry_region } - } - reference = ce1_legendary_spring - } - #The desert version - override_background = { - trigger = { - exists = scope:treasure_riches_in_scenery - exists = scope:is_dry_region - } - reference = ce1_legendary_oasis - } - #A cave! - override_background = { - trigger = { - OR = { - exists = scope:treasure_gold_great - exists = scope:treasure_gold_mediocre - exists = scope:treasure_gold_poor - } - } - reference = fp3_cave - } - left_portrait = { - character = root - #Nice view - triggered_animation = { - trigger = { exists = scope:treasure_riches_in_scenery } - animation = shock - } - #Poor amount of gold - triggered_animation = { - trigger = { - has_trait = greedy - exists = scope:treasure_gold_poor - } - animation = personality_cynical - } - triggered_animation = { - trigger = { exists = scope:treasure_pillaged } - animation = disapproval - } - triggered_animation = { - trigger = { has_trait = gallowsbait } - animation = personality_dishonorable - } - animation = thinking - } - artifact = { - trigger = { exists = scope:0045_display_artifact } - target = scope:0045_display_artifact - position = lower_center_portrait - } - trigger = { - has_variable = ep3_laamp_decision_1000_is_excavating - any_character_task_contract = { task_contract_type = laamp_treasure_map_contract } - } - immediate = { - #Save scopes - random_character_task_contract = { - task_contract_type = laamp_treasure_map_contract - save_scope_as = task_contract - } - scope:task_contract.task_contract_employer = { save_scope_as = task_contract_employer } - scope:task_contract.var:contract_treasure_location = { save_scope_as = excavation_location } - #This should always exist - random_character_artifact = { - limit = { has_variable = 1025_treasure_map } - save_scope_as = 0045_treasure_map - } - #What did we find? - random_list = { - #Historical artifact - 1 = { - trigger = { is_ai = no } - #What artifact? - hidden_effect_new_object = { - generate_historical_artifact_based_on_location_effect = { LOCATION = scope:excavation_location } - scope:newly_created_artifact = { save_scope_as = treasure_artifact_historical } - } - create_character_memory = { type = treasure_map_memory } - scope:new_memory ?= { - set_variable = { - name = treasure_map_historical_artifact - value = scope:treasure_artifact_historical - } - set_variable = { - name = treasure_map_historical_artifact_location - value = scope:excavation_location - } - if = { - limit = { - exists = var:treasure_map_historical_artifact - exists = var:treasure_map_historical_artifact_location - } - #To prevent 'unused except in loc' errors :catto: - } - } - #Note that it has a historical artifact, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = has_unique_historical_artifact - value = scope:treasure_artifact_historical - } - } - } - #Jewelry - 5 = { - #Generate jewelry - hidden_effect_new_object = { - random_pool_character = { - province = root.location - limit = { is_available_adult = yes } - save_scope_as = 0045_smith - } - if = { - limit = { - NOT = { exists = scope:0045_smith } - } - create_character = { - template = generic_peasant_character - location = root.location - dynasty = none - culture = root.location.culture - faith = root.location.faith - save_scope_as = 0045_smith - } - } - random_list = { - 10 = { set_artifact_rarity_illustrious = yes } - 20 = { set_artifact_rarity_famed = yes } - 40 = { set_artifact_rarity_masterwork = yes } - } - random_list = { - 50 = { - create_artifact_brooch_effect = { - OWNER = scope:0045_smith - SMITH = scope:0045_smith - } - } - 50 = { - create_artifact_ring_effect = { - OWNER = scope:0045_smith - SMITH = scope:0045_smith - } - } - 50 = { - create_artifact_necklace_effect = { - OWNER = scope:0045_smith - SMITH = scope:0045_smith - } - } - } - #Finalization - scope:newly_created_artifact ?= { - add_scaled_artifact_modifier_prestige_effect = yes - #Don't need no notification about this - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 2 - } - save_scope_as = treasure_artifact_jewelry - set_owner = root - } - } - #Note that it is jewelry, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = has_jewelry_artifact - value = scope:treasure_artifact_jewelry - } - } - } - #Great amount of gold - 20 = { - save_scope_as = treasure_gold_great - save_scope_value_as = { - name = 0045_gold_gained - value = { - value = major_gold_laamps_value - multiply = 2 - } - } - #Note that it is Great, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = treasure_gold_great - value = scope:0045_gold_gained - } - } - } - #Mediocre amount of gold - 20 = { - save_scope_as = treasure_gold_mediocre - save_scope_value_as = { - name = 0045_gold_gained - value = major_gold_laamps_value - } - #Note that it is Mediocre, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = treasure_gold_mediocre - value = scope:0045_gold_gained - } - } - } - #Poor amount of gold - 30 = { - save_scope_as = treasure_gold_poor - save_scope_value_as = { - name = 0045_gold_gained - value = { - value = medium_gold_laamps_value - divide = 2 - } - } - #Note that it is Poor, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = treasure_gold_poor - value = scope:0045_gold_gained - } - } - } - #Nice view - 30 = { - trigger = { - NOT = { has_character_modifier = divine_springs_modifier } - } - #Pretty divine, innit - if = { - limit = { - has_trait = pilgrim - has_trait_xp = { - trait = pilgrim - value < 100 - } - } - add_trait_xp = { - trait = pilgrim - value = { - integer_range = { - min = small_lifestyle_random_xp_mid - max = small_lifestyle_random_xp_high - } - } - } - } - else = { - stress_impact = { - base = medium_stress_impact_loss - zealous = minor_stress_impact_loss - } - } - save_scope_as = treasure_riches_in_scenery - create_character_memory = { type = treasure_map_memory } - scope:new_memory ?= { - set_variable = { - name = treasure_map_divine_scenery - value = scope:excavation_location - } - if = { - limit = { exists = var:treasure_map_divine_scenery } - #To prevent 'unused except in loc' errors :catto: - } - } - #Note that it is scenic, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = has_scenic_riches - value = flag:yes - } - } - } - #Someone beat you to it - 20 = { - save_scope_as = treasure_pillaged - save_scope_value_as = { - name = 0045_gold_gained - value = minor_gold_laamps_value - } - #Note that it is Pillaged, for the Contract Success Reward - scope:task_contract = { - set_variable = { - name = treasure_pillaged - value = scope:0045_gold_gained - } - } - } - } - #Oasis, not spring - if = { - limit = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - terrain = drylands - } - } - } - save_scope_as = is_dry_region - } - #Display the artifact - scope:treasure_artifact_historical ?= { save_scope_as = 0045_display_artifact } - scope:treasure_artifact_jewelry ?= { save_scope_as = 0045_display_artifact } - } - #Let Employer know - option = { - name = { - text = { - first_valid = { - #Historical Artifact - triggered_desc = { - trigger = { exists = scope:treasure_artifact_historical } - desc = ep3_contract_event.0045.a_artifact_historical - } - #Alright - triggered_desc = { - trigger = { - OR = { - exists = scope:treasure_artifact_jewelry - exists = scope:treasure_gold_great - exists = scope:treasure_gold_mediocre - exists = scope:treasure_riches_in_scenery - } - } - desc = ep3_contract_event.0045.a - } - #Meh - triggered_desc = { - trigger = { - OR = { - exists = scope:treasure_gold_poor - exists = scope:treasure_pillaged - } - } - desc = ep3_contract_event.0045.a_pillaged - } - } - } - } - #We don't really care if the map breaks at this point - scope:task_contract = { set_variable = 0045_used_map } - #Trigger the concluding event - trigger_event = ep3_contract_event.0050 - #You're doing the right thing - stress_impact = { - base = minor_stress_impact_loss - honest = medium_stress_impact_loss - greedy = minor_stress_impact_gain - } - } - #Keep it for yourself - option = { - name = { - text = { - first_valid = { - #Historical Artifact - triggered_desc = { - trigger = { exists = scope:treasure_artifact_historical } - desc = ep3_contract_event.0045.b_artifact_historical - } - #Alright - triggered_desc = { - trigger = { - OR = { - exists = scope:treasure_artifact_jewelry - exists = scope:treasure_gold_great - exists = scope:treasure_gold_mediocre - } - } - desc = ep3_contract_event.0045.b - } - #Meh - triggered_desc = { - trigger = { - OR = { - exists = scope:treasure_gold_poor - exists = scope:treasure_pillaged - } - } - desc = ep3_contract_event.0045.b_pillaged - } - } - } - } - #... just... doesn't make sense - trigger = { - NOT = { exists = scope:treasure_riches_in_scenery } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - scope:treasure_artifact_historical ?= { 0045_artifact_will_be_reforged_trigger = yes } - } - desc = ep3_contract_event.0045.b.flavor_reforged - } - desc = ep3_contract_event.0045.b.flavor - } - } - #Historical artifact: Change it to something useful. - if = { - limit = { exists = scope:treasure_artifact_historical } - scope:treasure_artifact_historical = { - if = { - limit = { - OR = { - has_variable = ascalon - has_variable = staff_kakusandha - has_variable = zomorrodnegar - has_variable = aruval - has_variable = sword_cid - has_variable = sword_of_muhammad - has_variable = mmaagha_kamalu - has_variable = sword_attila - artifact_type = scepter_pedestal - } - } - reforge_artifact = { type = regalia } - } - else_if = { - limit = { - OR = { - has_variable = iron_crown - has_variable = crown_of_justinian - } - } - reforge_artifact = { type = helmet } - } - else_if = { - limit = { has_variable = angelica_ring } - reforge_artifact = { type = ring } - } - else_if = { - limit = { artifact_type = brooch_pedestal } - reforge_artifact = { type = brooch } - } - else_if = { - limit = { artifact_type = necklace_pedestal } - reforge_artifact = { type = necklace } - } - else_if = { - limit = { - OR = { - artifact_type = pedestal - artifact_type = sculpture - artifact_type = goblet - artifact_type = jug - artifact_type = urn - } - } - reforge_artifact = { type = miscellaneous } - } - } - show_as_tooltip = { - scope:treasure_artifact_historical = { set_owner = root } - } - } - else_if = { - limit = { exists = scope:treasure_artifact_jewelry } - show_as_tooltip = { - scope:treasure_artifact_jewelry = { set_owner = root } - } - } - else = { add_short_term_gold = scope:0045_gold_gained } - #Get rid of the contract - scope:task_contract = { complete_task_contract = failure_standard } - #Off ye go - remove_courtier_or_guest = scope:task_contract_employer - #You stole a historical treasure - if = { - limit = { exists = scope:treasure_artifact_historical } - #Shame on you - laamp_rewards_apply_criminal_xp_effect = { - TRACK = thief - XP_MIN = gallowsbait_xp_major_gain - XP_MAX = gallowsbait_xp_massive_gain - } - stress_impact = { - base = major_stress_impact_gain - honest = minor_stress_impact_gain - greedy = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - } - #You stole something significant - else_if = { - limit = { - OR = { - exists = scope:treasure_artifact_jewelry - exists = scope:treasure_gold_great - } - } - #Shame on you - laamp_rewards_apply_criminal_xp_effect = { - TRACK = thief - XP_MIN = gallowsbait_xp_minor_gain - XP_MAX = gallowsbait_xp_major_gain - } - stress_impact = { - base = medium_stress_impact_gain - honest = minor_stress_impact_gain - greedy = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - } - #Or not - else = { - #Ehh petty theft - laamp_rewards_apply_criminal_xp_effect = { - TRACK = thief - XP_MIN = gallowsbait_xp_minor_gain - XP_MAX = gallowsbait_xp_minor_gain - } - stress_impact = { - base = minor_stress_impact_gain - honest = minor_stress_impact_gain - greedy = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - } - ai_chance = { - base = 0 - } - } -} - -#Back at the employer. Fork over the treasure -ep3_contract_event.0050 = { - type = character_event - title = ep3_contract_event.0050.t - desc = { - first_valid = { - #Historical artifact - triggered_desc = { - trigger = { exists = scope:treasure_artifact_historical } - desc = ep3_contract_event.0050.desc_artifact_historical - } - #jewelry artifact - triggered_desc = { - trigger = { exists = scope:treasure_artifact_jewelry } - desc = ep3_contract_event.0050.desc_artifact_jewelry - } - #Gold - triggered_desc = { - trigger = { - OR = { - exists = scope:treasure_gold_great - exists = scope:treasure_gold_mediocre - exists = scope:treasure_gold_poor - } - } - desc = ep3_contract_event.0050.desc_gold - } - #Scenic - triggered_desc = { - trigger = { exists = scope:treasure_riches_in_scenery } - desc = ep3_contract_event.0050.desc_scenic - } - #Pillaged - desc = ep3_contract_event.0050.desc_pillaged - } - } - theme = inspiration_complete - override_background = { reference = ep3_relaxing_tent } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = greedy } - animation = personality_cynical - } - animation = flirtation - } - right_portrait = { - character = scope:task_contract_employer - #Historical artifact - triggered_animation = { - trigger = { exists = scope:treasure_artifact_historical } - animation = disbelief - } - #Scenic - triggered_animation = { - trigger = { exists = scope:treasure_riches_in_scenery } - animation = wedding_happy_cry - } - #Pillaged - triggered_animation = { - trigger = { exists = scope:treasure_pillaged } - animation = sadness - } - animation = happiness - } - artifact = { - trigger = { exists = scope:0045_display_artifact } - target = scope:0045_display_artifact - position = lower_center_portrait - } - immediate = { - - } - #Fork it over - option = { - name = ep3_contract_event.0050.a - scope:task_contract = { complete_task_contract = success_standard } - if = { - limit = { exists = scope:treasure_riches_in_scenery } - #Perma modifier - add_character_modifier = { modifier = divine_springs_modifier } - } - #Ya did the right thing, son - stress_impact = { honest = minor_stress_impact_loss } - ai_chance = { - base = 10 - } - } - after = { - #Off ye go - remove_courtier_or_guest = scope:task_contract_employer - } -} - -#To remove the variable for those who go into the travel planner but then decide not to travel to the Excavation Site -ep3_contract_event.0055 = { - hidden = yes - - trigger = { has_variable = ep3_laamp_decision_1000_is_planning_excavation_trip } - - immediate = { - remove_variable ?= ep3_laamp_decision_1000_is_planning_excavation_trip - #Is it our active contract? - random_character_task_contract = { - limit = { has_variable = contract_treasure_location } - save_scope_as = task_contract - } - #Are we going to the destination? - if = { - limit = { - any_character_active_contract = { task_contract_type = laamp_treasure_map_contract } - current_travel_plan ?= { - any_future_path_location = { this = scope:task_contract.var:contract_treasure_location } - } - } - set_variable = ep3_laamp_decision_1000_is_excavating - } - } -} - -#Help Claimant start a war contract -ep3_contract_event.0060 = { - type = character_event - title = ep3_contract_event.0060.t - desc = ep3_contract_event.0060.desc - theme = war - #task_contract_taker, you - left_portrait = { - character = root - animation = personality_bold - } - #commander, an envoy from employer - right_portrait = { - character = scope:commander - animation = storyteller - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - random_knight = { - save_scope_as = commander - } - } - } - - #take the contract and start the claim war - option = { - name = ep3_contract_event.0060.a - scope:task_contract_employer = { - start_war = { - cb = claim_cb - target = scope:task_contract_target - claimant = scope:task_contract_employer - target_title = scope:task_contract.var:task_contract_title - } - #needs a custom tooltip as the war doesn't exist yet - custom_tooltip = ep3_contract_event.0060.join_war - random_character_war = { - limit = { - using_cb = claim_cb - primary_attacker = scope:task_contract_employer - primary_defender = scope:task_contract_target - } - save_scope_as = task_contract_war - } - } - scope:task_contract = { - set_variable = { - name = task_contract_war - value = scope:task_contract_war - } - } - scope:task_contract_war ?= { - hidden_effect = { set_called_to = root } - add_attacker = root - } - - - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -#Join Faction - intro -ep3_contract_event.0070 = { - type = character_event - title = ep3_contract_event.0070.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_faction = { - faction_is_type = nation_fracturing_faction - } - } - desc = ep3_contract_event.0070.desc_nation_fracturing_faction - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_faction = { - faction_is_type = liberty_faction - } - } - desc = ep3_contract_event.0070.desc_liberty_faction - } - triggered_desc = { - trigger = { - scope:task_contract_faction = { - faction_is_type = independence_faction - } - } - desc = ep3_contract_event.0070.desc_independence_faction - } - triggered_desc = { - trigger = { - scope:task_contract_faction = { - faction_is_type = claimant_faction - } - } - desc = ep3_contract_event.0070.desc_claimant_faction - } - desc = ep3_contract_event.0070.desc_fallback_faction - } - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_employer = { - vassal_contract_has_flag = obligation_high_taxes - } - } - desc = ep3_contract_event.0070.desc_liege_taxes - } - triggered_desc = { - trigger = { - scope:task_contract_employer = { - vassal_contract_has_flag = obligation_high_levies - } - } - desc = ep3_contract_event.0070.desc_liege_levies - } - triggered_desc = { - trigger = { - scope:task_contract_target.culture != scope:task_contract_employer.culture - } - desc = ep3_contract_event.0070.desc_liege_culture - } - triggered_desc = { - trigger = { - scope:task_contract_target.faith != scope:task_contract_employer.faith - } - desc = ep3_contract_event.0070.desc_liege_faith - } - desc = ep3_contract_event.0070.desc_liege_fallback - } - } - } - desc = ep3_contract_event.0070.desc_outro - } - theme = war - #task_contract_taker, you - left_portrait = { - character = root - animation = inspect_weapon - } - #commander, an envoy from employer - right_portrait = { - character = scope:commander - animation = storyteller - } - #character giving you the contract - lower_right_portrait = { - character = scope:task_contract_employer - } - #character you have to fight in a war - lower_left_portrait = { - character = scope:task_contract_target - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - random_knight = { - save_scope_as = commander - } - } - scope:task_contract_target = { - random_held_title = { - title_tier < kingdom - limit = { - trigger_if = { - limit = { - root.prestige_level > 3 - } - tier >= tier_duchy - } - tier >= tier_county - this != scope:task_contract_target.primary_title - this != scope:task_contract_target.primary_title.title_capital_county - } - weight = { - base = 1 - modifier = { - add = 100 - root = { - has_claim_on = prev - } - } - } - save_scope_as = promised_title - } - } - scope:task_contract.var:task_contract_faction = { - save_scope_as = task_contract_faction - } - } - - #take the contract and start the claim war, if they promise you land afterwards - option = { - name = ep3_contract_event.0070.a - trigger = { - custom_description = { - text = adventurer_not_famous_trigger_tt - value = 3 - prestige_level >= 3 - } - exists = scope:promised_title - } - show_as_unavailable = { - exists = scope:promised_title - } - join_faction_forced = { - faction = scope:task_contract.var:task_contract_faction - forced_by = scope:task_contract.task_contract_employer - years = 1 - } - # Give me land - scope:task_contract = { - set_variable = { - name = task_contract_title - value = scope:promised_title - } - } - show_as_tooltip = { - custom_tooltip = task_contract_tab_success - - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change_vassal - } - scope:promised_title = { - change_title_holder = { - holder = scope:task_contract.task_contract_taker - change = scope:title_change_vassal - take_baronies = no - } - } - resolve_title_and_vassal_change = scope:title_change_vassal - } - open_view = { - view = factions_window - player = root - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - modifier = { - add = 1000 - has_claim_on = scope:promised_title - } - modifier = { - add = 20 - has_realm_law = camp_purpose_legitimists - } - } - } - #take the contract and start the claim war - option = { - name = ep3_contract_event.0070.b - join_faction_forced = { - faction = scope:task_contract.var:task_contract_faction - forced_by = scope:task_contract.task_contract_employer - years = 1 - } - open_view = { - view = factions_window - player = root - } - - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - set_variable = { - name = suppress_invalidation_event - value = yes - } - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -### Help out in a council task contract - -scripted_effect set_council_scopes_effect = { - scope:task_contract = { - var:task_contract_councillor = { - save_scope_as = task_contract_councillor - } - var:task_contract_councillor_liege = { - save_scope_as = task_contract_councillor_liege - } - } -} - -## Court Chaplain -# Fabricate claim - intro -ep3_contract_event.0080 = { - type = character_event - title = ep3_contract_event.0080.t - desc = ep3_contract_event.0080.desc - theme = faith - left_portrait = { - character = root - animation = interested_left - } - right_portrait = { - character = scope:task_contract_councillor - animation = storyteller - } - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - - trigger = { - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #Open intetactin to fabricate claim - option = { - name = ep3_contract_event.0080.a - custom_tooltip = ep3_contract_event.0080.open_start_generate_claim_interaction - open_interaction_window = { - interaction = start_generate_claim_interaction - actor = root - recipient = scope:task_contract_target - } - if = { - limit = { - is_ai = yes - } - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = generate_claim - TARGET_TYPE = target_title - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_scribe - AGENT_2 = agent_diplomat - # Speed. - AGENT_3 = agent_justiciar - AGENT_4 = agent_socialite - # Secrecy. - AGENT_5 = agent_decoy - } - } - ai_chance = { - base = 100 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Fight Faith conversion - intro -ep3_contract_event.0082 = { - type = character_event - title = ep3_contract_event.0082.t - desc = ep3_contract_event.0082.desc - theme = faith - left_portrait = { - character = root - animation = menacing - } - lower_left_portrait = { - character = scope:task_contract_councillor_liege - } - lower_right_portrait = { - character = scope:task_contract_employer - } - - trigger = { - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #help at the location - option = { - name = ep3_contract_event.0082.a - custom_tooltip = ep3_contract_event.0082.to_destination - if = { - limit = { - location = scope:task_contract_destination - } - trigger_event = ep3_contract_event.0083 - } - else = { - start_travel_plan = { - destination = scope:task_contract_destination - on_arrival_destinations = all - on_arrival_event = ep3_contract_event.0083 - } - } - ai_chance = { - base = 100 - } - } - #talk to the liege - option = { - name = ep3_contract_event.0082.b - custom_tooltip = ep3_contract_event.0082.to_liege - if = { - limit = { - location = scope:task_contract_councillor_liege.capital_province - } - trigger_event = ep3_contract_event.0084 - } - else = { - start_travel_plan = { - destination = scope:task_contract_councillor_liege.capital_province - on_arrival_destinations = all - on_arrival_event = ep3_contract_event.0084 - } - } - ai_chance = { - base = 100 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -scripted_effect protect_county_from_conversion_effect = { - scope:task_contract_councillor_liege = { - set_variable = { - name = hold_court_8120_religion_block - value = scope:task_contract_destination.faith - years = 15 - } - add_character_modifier = { - modifier = hold_court_8120_tolerance_modifier - years = 10 - } - } - scope:task_contract_destination.county = { - add_county_modifier = { - modifier = hold_court_8120_stopped_modifier - years = 15 - } - } - scope:task_contract_councillor = { - start_default_task = yes - } -} - -# Fight Faith conversion - deal with it at location -ep3_contract_event.0083 = { - type = character_event - title = ep3_contract_event.0083.t - desc = ep3_contract_event.0083.desc - theme = faith - override_background = { - reference = temple_scope - } - override_effect_2d = { - reference = smoke - } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:task_contract_employer - animation = rage - } - lower_left_portrait = { - character = scope:task_contract_councillor - } - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - - trigger = { - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #capture the chaplain - option = { - name = ep3_contract_event.0083.a - duel = { - skill = intrigue - target = scope:task_contract_councillor - 25 = { - desc = ep3_contract_event.0083.a_win - send_interface_toast = { - title = ep3_contract_event.0083.a_win - left_icon = root - right_icon = scope:task_contract_employer - prisoner_of_war_capture_effect = { - TARGET = scope:task_contract_councillor - IMPRISONER = root - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0083.a_lose - send_interface_toast = { - title = ep3_contract_event.0083.a_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - callous = minor_stress_impact_loss - just = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - lazy = minor_stress_impact_gain - calm = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - #force it through - option = { - name = ep3_contract_event.0083.b - duel = { - skills = { martial prowess } - target = scope:task_contract_councillor - 25 = { - desc = ep3_contract_event.0083.b_win - send_interface_toast = { - title = ep3_contract_event.0083.b_win - left_icon = root - right_icon = scope:task_contract_employer - protect_county_from_conversion_effect = yes - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp2_questioned_my_faith_opinion - target = root - } - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0083.b_lose - send_interface_toast = { - title = ep3_contract_event.0083.b_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - wrathful = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = martial - prowess > scope:task_contract_councillor.prowess - } - } - } - } - #talk it through - option = { - name = ep3_contract_event.0083.c - duel = { - skills = { diplomacy learning } - target = scope:task_contract_councillor - 25 = { - desc = ep3_contract_event.0083.c_win - send_interface_toast = { - title = ep3_contract_event.0083.c_win - left_icon = root - right_icon = scope:task_contract_employer - protect_county_from_conversion_effect = yes - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp2_questioned_my_faith_opinion - target = root - } - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0083.c_lose - send_interface_toast = { - title = ep3_contract_event.0083.c_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - gregarious = minor_stress_impact_loss - zealous = minor_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = diplomacy - highest_skill = learning - } - } - } - } - #come with me - option = { - name = ep3_contract_event.0083.d - scope:task_contract = { - complete_task_contract = failure_standard - } - if = { - limit = { - scope:task_contract_employer = { - is_landed = yes - } - } - random_list = { - 110 = { - modifier = { - add = scope:task_contract_employer.ai_rationality - } - hidden_effect = { - scope:task_contract_employer = { - depose = yes - if = { - limit = { - any_traveling_family_member = { } - } - every_traveling_family_member = { - save_temporary_scope_as = family_to_move - root = { add_courtier = scope:family_to_move } - } - } - } - } - add_courtier = scope:task_contract_employer - reverse_add_opinion = { - modifier = helped_me_in_time_of_need - target = scope:task_contract_employer - } - } - 110 = { - modifier = { - add = scope:task_contract_employer.ai_honor - } - reverse_add_opinion = { - modifier = mocked_me_in_time_of_need - target = scope:task_contract_employer - } - } - } - } - else = { - add_courtier = scope:task_contract_employer - reverse_add_opinion = { - modifier = helped_me_in_time_of_need - target = scope:task_contract_employer - } - hidden_effect = { - if = { - limit = { - any_traveling_family_member = { } - } - every_traveling_family_member = { - save_temporary_scope_as = family_to_move - root = { add_courtier = scope:family_to_move } - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - just = minor_stress_impact_gain - zealous = minor_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - add = 10 - scope:task_contract_employer = { - is_landed = no - } - } - } - } -} - -# Fight Faith conversion - deal with it at liege -ep3_contract_event.0084 = { - type = character_event - title = ep3_contract_event.0084.t - desc = ep3_contract_event.0084.desc - theme = faith - override_background = { - reference = throne_room - } - left_portrait = { - character = root - animation = debating - } - right_portrait = { - character = scope:task_contract_councillor_liege - animation = thinking - } - lower_left_portrait = { - character = scope:task_contract_employer - } - lower_right_portrait = { - character = scope:task_contract_councillor - } - - trigger = { - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #suggest new management - option = { - name = ep3_contract_event.0084.a - duel = { - skills = { intrigue prowess } - target = scope:task_contract_target - 0 = { - desc = ep3_contract_event.0084.a_win_rights - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - modifier = { - factor = root.prestige_level - } - send_interface_toast = { - title = ep3_contract_event.0084.a_win_rights - left_icon = root - right_icon = scope:task_contract_employer - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change_vassal - } - scope:task_contract.var:task_contract_destination.county = { - change_title_holder = { - holder = scope:task_contract_employer - change = scope:title_change_vassal - take_baronies = no - } - } - resolve_title_and_vassal_change = scope:title_change_vassal - scope:task_contract_employer = { - custom_tooltip = ep3_contract_event.0084.a_win_rights.tt - if = { - limit = { - is_vassal_of = scope:task_contract_target - } - vassal_contract_set_obligation_level = { - type = religious_rights - level = 1 - } - } - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - 25 = { - desc = ep3_contract_event.0084.a_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - send_interface_toast = { - title = ep3_contract_event.0084.a_win - left_icon = root - right_icon = scope:task_contract_employer - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change_vassal - } - scope:task_contract.var:task_contract_destination.county = { - change_title_holder = { - holder = scope:task_contract_employer - change = scope:title_change_vassal - take_baronies = no - } - } - resolve_title_and_vassal_change = scope:title_change_vassal - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - 25 = { - desc = ep3_contract_event.0084.a_lost - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - send_interface_toast = { - title = ep3_contract_event.0084.a_lost - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp2_questioned_my_faith_opinion - opinion = -30 - target = root - } - } - } - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - impatient = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = intrigue - prowess > scope:task_contract_target.prowess - } - } - } - } - - #talk it through - option = { - name = ep3_contract_event.0084.b - duel = { - skills = { diplomacy learning } - target = scope:task_contract_target - 25 = { - desc = ep3_contract_event.0084.b_win - send_interface_toast = { - title = ep3_contract_event.0084.b_win - left_icon = root - right_icon = scope:task_contract_employer - protect_county_from_conversion_effect = yes - } - scope:task_contract = { - complete_task_contract = success_standard - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0084.b_lost - scope:task_contract = { - complete_task_contract = failure_standard - } - send_interface_toast = { - title = ep3_contract_event.0084.b_lost - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp2_questioned_my_faith_opinion - opinion = -30 - target = root - } - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - gregarious = minor_stress_impact_loss - zealous = minor_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = diplomacy - highest_skill = learning - } - } - } - } -} - -# Help Faith conversion - intro -ep3_contract_event.0085 = { - type = character_event - title = ep3_contract_event.0085.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = yes - } - } - desc = ep3_contract_event.0085.desc_bad - } - desc = ep3_contract_event.0085.desc_good - } - } - theme = faith - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = yes - } - } - animation = stunned - } - animation = prayer - } - right_portrait = { - character = scope:task_contract_councillor - animation = storyteller - } - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - - trigger = { - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #you condemn the evil chaplain methods - option = { - name = ep3_contract_event.0085.a - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = yes - } - } - duel = { - skills = { prowess diplomacy } - target = scope:task_contract_councillor - 0 = { - desc = ep3_contract_event.0085.a_win_critical - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - modifier = { - factor = root.prestige_level - } - send_interface_toast = { - title = ep3_contract_event.0085.a_win_critical - left_icon = root - right_icon = scope:task_contract_employer - prisoner_of_war_capture_effect = { - TARGET = scope:task_contract_councillor - IMPRISONER = root - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - 25 = { - desc = ep3_contract_event.0085.a_win - send_interface_toast = { - title = ep3_contract_event.0085.a_win - left_icon = root - right_icon = scope:task_contract_employer - protect_county_from_conversion_effect = yes - scope:task_contract = { - complete_task_contract = failure_standard - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0085.a_lose - send_interface_toast = { - title = ep3_contract_event.0085.a_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - honest = minor_stress_impact_loss - zealous = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = diplomacy - prowess > scope:task_contract_councillor.prowess - } - } - } - } - - #you agree with the evil chaplain methods - option = { - name = ep3_contract_event.0085.b - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = yes - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - stress_impact = { - honest = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - sadistic = major_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = diplomacy - prowess > scope:task_contract_councillor.prowess - } - } - } - } - - #you tell a story about the good gods - option = { - name = ep3_contract_event.0085.c - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = no - } - } - duel = { - skill = learning - value = high_skill_rating - 25 = { - desc = ep3_contract_event.0085.c_win - send_interface_toast = { - title = ep3_contract_event.0085.c_win - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = success_standard - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0085.c_lose - send_interface_toast = { - title = ep3_contract_event.0085.a_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - gregarious = minor_stress_impact_loss - zealous = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - shy = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = learning - } - } - } - - #you tell a story about the evil gods - option = { - name = ep3_contract_event.0085.d - trigger = { - scope:task_contract_councillor = { - has_personality_malicious_trigger = no - } - } - duel = { - skill = intrigue - value = high_skill_rating - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = ep3_contract_event.0085.d_win - send_interface_toast = { - title = ep3_contract_event.0085.d_win - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = success_standard - } - } - } - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - desc = ep3_contract_event.0085.d_lose - send_interface_toast = { - title = ep3_contract_event.0085.d_lose - left_icon = root - right_icon = scope:task_contract_employer - scope:task_contract = { - complete_task_contract = failure_standard - } - } - } - } - stress_impact = { - gregarious = minor_stress_impact_loss - zealous = minor_stress_impact_gain - shy = minor_stress_impact_gain - cynical = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = intrigue - } - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -## Marshal -# train commanders - intro -ep3_contract_event.0090 = { - type = character_event - title = ep3_contract_event.0090.t - desc = ep3_contract_event.0090.desc - theme = landless_adventurer - #task_contract_taker, you - left_portrait = { - character = root - animation = inspect_weapon - } - #marshal - right_portrait = { - character = scope:task_contract_councillor - animation = storyteller - } - #marshal's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - option = { - name = ep3_contract_event.0090.a - custom_tooltip = ep3_contract_event.0090.opens_task_contract_train_knight_interaction - open_interaction_window = { - interaction = task_contract_train_knight_interaction - actor = root - recipient = scope:task_contract_employer - } - if = { - limit = { - is_ai = yes - } - run_interaction = { - interaction = task_contract_train_knight_interaction - actor = root - recipient = scope:task_contract_employer - execute_threshold = decline - } - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -scripted_effect count_knights_trained_effect = { - scope:task_contract = { - if = { - limit = { - $RESULT$ = yes - } - change_variable = { - name = knights_trained - add = 1 - } - if = { - limit = { - NOT = { - scope:task_contract = { - has_variable_list = knights_to_train - any_in_list = { - variable = knights_to_train - is_alive = yes - is_knight = yes - } - } - } - } - scope:task_contract = { - if = { - limit = { - scope:task_contract.var:knights_trained >= scope:task_contract.var:knights_limit - } - complete_task_contract = success_critical - } - else_if = { - limit = { - scope:task_contract.var:knights_trained >= scope:task_contract.var:knights_failed - } - complete_task_contract = success_standard - } - else = { - complete_task_contract = failure_standard - } - } - } - } - if = { - limit = { - $RESULT$ = no - } - change_variable = { - name = knights_failed - add = 1 - } - if = { - limit = { - NOT = { - scope:task_contract = { - has_variable_list = knights_to_train - any_in_list = { - variable = knights_to_train - is_alive = yes - is_knight = yes - } - } - } - } - scope:task_contract = { - if = { - limit = { - NOT = { scope:task_contract.var:knights_trained = 0 } - scope:task_contract.var:knights_trained >= scope:task_contract.var:knights_failed - } - complete_task_contract = success_standard - } - else = { - complete_task_contract = failure_standard - } - } - } - } - } -} - -# train commanders - interaction event -ep3_contract_event.0091 = { - type = character_event - title = ep3_contract_event.0091.t - desc = { - desc = ep3_contract_event.0091.desc - first_valid = { - triggered_desc = { - trigger = { scope:helper = root } - desc = { - desc = ep3_contract_event.0091.desc_me - first_valid = { - triggered_desc = { - trigger = {root.prowess < high_skill_rating } - desc = ep3_contract_event.0091.desc_me_high_prowess - } - desc = ep3_contract_event.0091.desc_me_low_prowess - } - } - } - desc = { - desc = ep3_contract_event.0091.desc_helper - first_valid = { - triggered_desc = { - trigger = {scope:helper.prowess < high_skill_rating } - desc = ep3_contract_event.0091.desc_high_prowess - } - desc = ep3_contract_event.0091.desc_low_prowess - } - } - } - desc = ep3_contract_event.0091.desc_outro - } - theme = war - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:helper = root - root.prowess < high_skill_rating - } - animation = random_weapon_yield - } - triggered_animation = { - trigger = { - scope:helper = root - root.prowess >= high_skill_rating - } - animation = inspect_weapon - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess < high_skill_rating - } - animation = stunned - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess >= high_skill_rating - } - animation = disappointed - } - } - right_portrait = { - character = scope:knight - triggered_animation = { - trigger = { - scope:helper = root - root.prowess < high_skill_rating - } - animation = random_weapon_celebrate - } - triggered_animation = { - trigger = { - scope:helper = root - root.prowess >= high_skill_rating - } - animation = random_weapon_yield - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess < high_skill_rating - } - animation = random_weapon_celebrate - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess >= high_skill_rating - } - animation = random_weapon_yield - } - } - lower_left_portrait = { - trigger = { scope:helper != root } - character = scope:helper - } - lower_right_portrait = { - character = scope:task_contract_councillor - } - lower_center_portrait = { - character = scope:task_contract_councillor_liege - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - # search for anyone that could help you train them - random_court_position_holder = { - type = second_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = master_of_arms_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = light_cavalry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = camelry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = elephantry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = heavy_cavalry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = horse_archer_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = archer_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = heavy_infantry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = light_infantry_captain_camp_officer - add_to_list = helpers_list - } - random_court_position_holder = { - type = pike_captain_camp_officer - add_to_list = helpers_list - } - random_in_list = { - list = helpers_list - save_scope_as = helper - } - if = { - limit = { - exists = scope:helper - } - scope:helper = { - every_character_trait = { - limit = { - has_trait_category = commander - } - scope:task_contract = { - add_to_variable_list = { - name = takers_commander_traits - target = prev - } - } - } - } - } - else = { - save_scope_as = helper - } - scope:task_contract = { - random_in_list = { - variable = takers_commander_traits - save_scope_as = trait_to_teach - } - } - scope:helper = { - set_signature_weapon_effect = yes - } - scope:knight = { - set_signature_weapon_effect = yes - } - scope:task_contract = { - remove_list_variable = { - name = knights_to_train - target = scope:knight - } - } - } - - # steal the knight - option = { - name = ep3_contract_event.0091.a - trigger = { scope:knight = { is_landed = no } } - duel = { - skill = diplomacy - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_recruit - modifier = { - add = root.prestige_level - factor = 5 - } - send_interface_toast = { - title = ep3_contract_event.0091_won_recruit - left_icon = root - right_icon = scope:knight - add_courtier = scope:knight - domicile = { - change_provisions = { - value = scope:knight.prowess - multiply = -4 - } - } - pay_short_term_gold = { - target = scope:task_contract_employer - gold = { - value = scope:knight.prowess - multiply = 5 - } - } - } - count_knights_trained_effect = { RESULT = no } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0091_lost_recruit - send_interface_toast = { - title = ep3_contract_event.0091_lost_recruit - left_icon = root - right_icon = scope:knight - } - count_knights_trained_effect = { RESULT = no } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - impatient = minor_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - callous = minor_stress_impact_loss - deceitful = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = diplomacy - } - } - } - - # teach them a trait you know - option = { - name = ep3_contract_event.0091.b - trigger = { - exists = scope:trait_to_teach - scope:knight = { - NOT = { has_trait = scope:trait_to_teach } - } - } - duel = { - skill = martial - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_trait - modifier = { - add = root.learning - } - send_interface_toast = { - title = ep3_contract_event.0091_won_trait - left_icon = root - right_icon = scope:knight - scope:knight = { - add_trait = scope:trait_to_teach - } - } - count_knights_trained_effect = { RESULT = yes } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0091_lost - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - count_knights_trained_effect = { RESULT = no } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - arrogant = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = martial - } - } - } - - # let helper teach them some prowess - option = { - name = ep3_contract_event.0091.c - trigger = { - exists = scope:helper - scope:helper != root - } - scope:helper = { - duel = { - skill = prowess - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_helper - send_interface_toast = { - title = ep3_contract_event.0091_won_helper - left_icon = root - right_icon = scope:knight - scope:knight = { - add_prowess_skill = { - value = scope:helper.prowess - subtract = scope:knight.prowess - divide = 4 - add = { - value = scope:knight.ai_boldness - divide = 10 - } - add = { - value = scope:helper.ai_boldness - divide = 10 - } - min = 2 - max = 5 - } - force_character_skill_recalculation = yes - } - } - count_knights_trained_effect = { RESULT = yes } - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - } - 25 = { - desc = ep3_contract_event.0091_lost - count_knights_trained_effect = { RESULT = no } - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - } - stress_impact = { - arrogant = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - humble = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - scope:helper.prowess > scope:knight.prowess - } - } - } - - # teach them some prowess yourself - option = { - name = ep3_contract_event.0091.d - duel = { - skill = prowess - target = scope:knight - 50 = { - desc = ep3_contract_event.0091_won - send_interface_toast = { - title = ep3_contract_event.0091_won - left_icon = root - right_icon = scope:knight - scope:knight = { - add_prowess_skill = { - value = root.prowess - subtract = scope:knight.prowess - divide = 4 - add = { - value = scope:knight.ai_boldness - divide = 10 - } - add = { - value = root.ai_boldness - divide = 10 - } - min = 1 - max = 4 - } - force_character_skill_recalculation = yes - } - } - count_knights_trained_effect = { RESULT = yes } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - add = { - value = scope:knight.ai_energy - divide = -10 - } - } - modifier = { - add = { - value = root.ai_energy - divide = -10 - } - } - } - 50 = { - desc = ep3_contract_event.0091_lost - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - count_knights_trained_effect = { RESULT = no } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - modifier = { - add = { - value = scope:knight.ai_energy - divide = 10 - } - } - modifier = { - add = { - value = root.ai_energy - divide = 10 - } - } - } - } - stress_impact = { - arrogant = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - humble = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - prowess > scope:knight.prowess - } - } - } - - after = { - hidden_effect = { - if = { - limit = { - exists = scope:trait_to_teach - } - scope:task_contract = { - remove_list_variable = { - name = takers_commander_traits - target = scope:trait_to_teach - } - } - } - if = { - limit = { - scope:task_contract = { - has_variable_list = knights_to_train - any_in_list = { - variable = knights_to_train - is_alive = yes - is_knight = yes - } - } - } - if = { - limit = { - is_ai = yes - } - #save new knight for the ai, as they can't use the interaction to do it - ordered_in_list = { - variable = knights_to_train - order_by = { - value = prowess - multiply = -1 - } - save_scope_as = knight - } - #run the event directly - root = { - trigger_event = { - id = ep3_contract_event.0091 - days = 1 - } - } - } - #open the interaction for human players - else = { - open_interaction_window = { - interaction = task_contract_train_knight_interaction - actor = root - recipient = scope:task_contract_employer - } - } - } - } - } -} - -scripted_effect set_corruption_reason_effect = { - scope:corrupt_province.county = { - switch = { - trigger = has_county_modifier - county_corruption_inefficient_tax_collection_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:taxes - } - } - county_corruption_deserting_levies_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:riots - } - } - county_corruption_smuggling_ring_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_bandits_rampant_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_inefficient_census_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:taxes - } - } - county_corruption_lack_of_sheriffs_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_lack_of_courts_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_thieves_guild_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_unsafe_highways_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:bandits - } - } - county_corruption_uncooperative_guilds_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:taxes - } - } - county_corruption_lackluster_administration_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:taxes - } - } - small_investment_in_revolt_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:riots - } - } - medium_investment_in_revolt_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:riots - } - } - high_investment_in_revolt_modifier = { - save_scope_value_as = { - name = corruption_reason - value = flag:riots - } - } - } - #fallback if the county have no modifier - if = { - limit = { - NOT = { exists = scope:corruption_reason } - } - save_scope_value_as = { - name = corruption_reason - value = flag:low_control - } - } - } -} - -# increase control - intro -ep3_contract_event.0092 = { - type = character_event - title = ep3_contract_event.0092.t - desc = { - desc = ep3_contract_event.0092.desc - first_valid = { - triggered_desc = { - trigger = { scope:corruption_reason = flag:taxes } - desc = ep3_contract_event.0092.desc_taxes - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:bandits } - desc = ep3_contract_event.0092.desc_bandits - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:riots } - desc = ep3_contract_event.0092.desc_riots - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:low_control } - desc = ep3_contract_event.0092.desc_low_control - } - } - } - theme = landless_adventurer - #task_contract_taker, you - left_portrait = { - character = root - animation = disbelief - } - #marshal - right_portrait = { - character = scope:task_contract_councillor - animation = shame - } - #marshal's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - widget = { - gui = "event_window_widget_peasant_leader" - container = "custom_widgets_container" - } - - immediate = { - ep3_peasant_leader_widget_setup_effect = yes - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - #saving scope for custom localization and corruption reason - scope:task_contract_destination = { - save_scope_as = corrupt_province - } - set_corruption_reason_effect = yes - } - - #just travel there - option = { - name = ep3_contract_event.0092.a - #trigger the event immediately if you are already there - if = { - limit = { - scope:task_contract_destination = root.location - } - trigger_event = ep3_contract_event.0093 - } - #otherwise, tirgger a travel plan - else = { - custom_tooltip = ep3_contract_event.0092.a_tt - start_travel_plan = { - destination = scope:task_contract_destination - on_arrival_event = ep3_contract_event.0093 - on_arrival_destinations = all_but_last - can_cancel_planning = no - } - } - - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - #move your camp there - option = { - name = ep3_contract_event.0092.b - trigger = { - NOR = { - scope:task_contract_destination = root.domicile.domicile_location - scope:task_contract_destination = root.location - } - } - custom_tooltip = ep3_contract_event.0092.b_tt - custom_tooltip = ep3_contract_event.0001.with_domicile.tt - start_travel_plan = { - destination = scope:task_contract_destination - on_arrival_event = ep3_contract_event.0093 - on_arrival_destinations = all - travel_with_domicile = yes - return_trip = no - can_cancel_planning = no - } - - #AI shouldn't move camps in events - ai_chance = { - base = 0 - } - } - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - after = { - ep3_peasant_leader_widget_clear_effect = yes - } -} - -# increase control - arrival -ep3_contract_event.0093 = { - type = character_event - title = ep3_contract_event.0093.t - desc = { - desc = ep3_contract_event.0093.desc - first_valid = { - triggered_desc = { - trigger = { scope:corruption_reason = flag:taxes } - desc = ep3_contract_event.0093.desc_taxes - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:bandits } - desc = ep3_contract_event.0093.desc_bandits - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:riots } - desc = ep3_contract_event.0093.desc_riots - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:low_control } - desc = ep3_contract_event.0093.desc_low_control - } - } - } - theme = landless_adventurer - override_background = { - reference = terrain_travel - } - #task_contract_taker, you - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:taxes - } - animation = personality_compassionate - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:bandits - } - animation = shock - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:riots - } - animation = interested_left - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:low_control - } - animation = shame - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:taxes - } - animation = dismissal - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:bandits - } - animation = disbelief - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:riots - } - animation = disappointed - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:low_control - } - animation = eyeroll - } - } - #peasant spokeperson - right_portrait = { - character = scope:corrupt_province_peasant - animation = beg - } - #marshal - lower_left_portrait = { - character = scope:task_contract_councillor - } - #marshal's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - widget = { - gui = "event_window_widget_peasant_leader" - container = "custom_widgets_container" - } - cooldown = { days = 1 } - - trigger = { - any_character_active_contract = { - has_task_contract_type = laamp_help_increase_control_contract - } - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - ep3_peasant_leader_widget_setup_effect = yes - if = { - limit = { - NOT = { exists = scope:corrupt_province } - } - location = { - save_scope_as = corrupt_province - } - } - #remove the visited county from the list of corrupt counties, so you don't have to visit it anymore - scope:task_contract = { - remove_list_variable = { - name = corrupt_counties - target = scope:corrupt_province.county - } - } - #find a local peasant - random_pool_character = { - province = scope:corrupt_province - limit = { - is_available_healthy_ai_adult = yes - faith = scope:corrupt_province.county.faith - culture = scope:corrupt_province.county.culture - } - save_scope_as = corrupt_province_peasant - } - if = { - limit = { - NOT = { exists = scope:corrupt_province_peasant } - } - create_character = { - location = scope:corrupt_province - template = peasant_character - gender_female_chance = 50 - faith = scope:corrupt_province.county.faith - culture = scope:corrupt_province.county.culture - save_scope_as = corrupt_province_peasant - } - } - #add them to a list, they will become army leaders if a war breaks out - scope:task_contract = { - add_to_variable_list = { - name = met_peasant_leaders - target = scope:corrupt_province_peasant - } - } - #set flag with reason for localization - if = { - limit = { - NOT = { exists = scope:corruption_reason } - } - set_corruption_reason_effect = yes - } - } - - #help the marshal - option = { - name = ep3_contract_event.0093.a - duel = { - skill = martial - value = high_skill_rating - 25 = { - desc = ep3_contract_event.0093.a_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - add_dread = 5 - scope:corrupt_province.county = { - add_county_modifier = { - modifier = marshal_task_increase_control_increased_opinion_modifier - years = 5 - } - } - } - 25 = { - desc = ep3_contract_event.0093.a_lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - scope:corrupt_province.county = { - add_county_modifier = { - modifier = marshal_task_military_presence_modifier - years = 5 - } - } - if = { - limit = { - any_maa_regiment = { } - } - random_maa_regiment = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = laamp_base_contract_schemes_1301_maa_damage_moderate_value - } - } - } - else_if = { - limit = { - any_courtier = { - is_adult = yes - NOR = { - is_close_family_of = root - is_spouse_of = root - } - } - } - ordered_courtier = { - order_by = martial - limit = { - is_adult = yes - NOR = { - is_close_family_of = root - is_spouse_of = root - } - } - scope:corrupt_province.province_owner = { - add_courtier = prev - } - } - } - else = { - pay_short_term_gold = { - target = scope:corrupt_province.province_owner - gold = root.minor_gold_value - } - domicile = { - change_provisions = { - integer_range = { - min = miniscule_provisions_value - max = minor_provisions_value - } - } - } - } - } - } - if = { - limit = { - scope:task_contract.var:num_of_corrupt_counties = 1 - scope:task_contract.var:control = 0 - scope:task_contract.var:support = 0 - } - custom_tooltip = ep3_contract_event.0094_success - scope:task_contract = { - complete_task_contract = success_critical - } - } - ep3_increase_peasant_control_effect = yes - stress_impact = { - compassionate = minor_stress_impact_gain - calm = minor_stress_impact_gain - just = minor_stress_impact_gain - impatient = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - #side with peasants - option = { - name = ep3_contract_event.0093.b - every_courtier = { - limit = { - is_lowborn = yes - NOT = { - has_opinion_modifier = { - modifier = sided_with_peasants_opinion - target = root - } - } - } - custom = every_lowborn_follower - add_opinion = { - modifier = sided_with_peasants_opinion - target = root - years = 3 - } - } - if = { - limit = { - scope:task_contract.var:num_of_corrupt_counties = 1 - scope:task_contract.var:control = 0 - scope:task_contract.var:support = 0 - } - custom_tooltip = ep3_contract_event.0094_fail - show_as_tooltip = { - scope:task_contract = { - complete_task_contract = failure_standard - } - } - trigger_event = { - id = ep3_contract_event.0095 - delayed = yes - } - } - ep3_increase_peasant_support_effect = yes - stress_impact = { - compassionate = minor_stress_impact_loss - fickle = minor_stress_impact_loss - just = minor_stress_impact_loss - wrathful = minor_stress_impact_gain - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - - after = { - ep3_peasant_leader_widget_clear_effect = yes - #check if there are more corrupt counties to visit - if = { - limit = { - scope:task_contract = { - has_variable_list = corrupt_counties - variable_list_size = { - name = corrupt_counties - value >= 1 - } - } - } - #follow up event to keep going - trigger_event = { - id = ep3_contract_event.0094 - delayed = yes - } - } - #else complete the contract - else = { - if = { - limit = { - scope:task_contract.var:control > scope:task_contract.var:support - NAND = { - scope:task_contract.var:control = 0 - scope:task_contract.var:support = 0 - } - } - custom_tooltip = ep3_contract_event.0094_success - scope:task_contract = { - if = { - limit = { - scope:task_contract.var:control = scope:task_contract.var:num_of_corrupt_counties - } - complete_task_contract = success_critical - } - else = { - complete_task_contract = success_standard - } - } - } - else_if = { - limit = { - scope:task_contract.var:control <= scope:task_contract.var:support - NAND = { - scope:task_contract.var:control = 0 - scope:task_contract.var:support = 0 - } - } - custom_tooltip = ep3_contract_event.0094_fail - show_as_tooltip = { - scope:task_contract = { - complete_task_contract = failure_standard - } - } - trigger_event = { - id = ep3_contract_event.0095 - delayed = yes - } - } - } - } -} - -# increase control - keep going -ep3_contract_event.0094 = { - type = character_event - title = ep3_contract_event.0094.t - desc = { - desc = ep3_contract_event.0094.desc - first_valid = { - triggered_desc = { - trigger = { scope:corruption_reason = flag:taxes } - desc = ep3_contract_event.0094.desc_taxes - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:bandits } - desc = ep3_contract_event.0094.desc_bandits - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:riots } - desc = ep3_contract_event.0094.desc_riots - } - triggered_desc = { - trigger = { scope:corruption_reason = flag:low_control } - desc = ep3_contract_event.0094.desc_low_control - } - } - } - theme = landless_adventurer - #task_contract_taker, you - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:taxes - } - animation = personality_rational - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:bandits - } - animation = worry - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:riots - } - animation = personality_honorable - } - triggered_animation = { - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - scope:corruption_reason = flag:low_control - } - animation = stunned - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:taxes - } - animation = personality_greedy - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:bandits - } - animation = schadenfreude - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:riots - } - animation = eyeroll - } - triggered_animation = { - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - scope:corruption_reason = flag:low_control - } - animation = boredom - } - } - #marshal - right_portrait = { - character = scope:task_contract_councillor - animation = debating - } - #marshal's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - widget = { - gui = "event_window_widget_peasant_leader" - container = "custom_widgets_container" - } - - immediate = { - if = { - limit = { - NOT = { has_variable = contract_094_travel_fallback_true } - } - ep3_peasant_leader_widget_setup_effect = yes - scope:task_contract = { - #set a county from the corrupt counties list as the corrupt county to visit next - random_in_list = { - variable = corrupt_counties - title_province = { - save_scope_as = corrupt_province - } - } - #update the destination variable for proper tooltips and descriptions in other UIs - set_variable = { - name = task_contract_destination - value = scope:corrupt_province - } - } - set_corruption_reason_effect = yes - } - else = { - remove_variable = contract_094_travel_fallback_true - } - } - - #travel without camp - option = { - name = ep3_contract_event.0094.a - hidden_effect = { - current_travel_plan ?= { - abort_travel_plan = yes - } - start_travel_plan = { - destination = scope:corrupt_province - on_arrival_event = ep3_contract_event.0093 - on_arrival_destinations = all_but_last - on_travel_planner_cancel_on_action = ep3_contract_094_travel_fallback - can_cancel_planning = no - } - } - custom_tooltip = ep3_contract_event.0094.travel_without_domicile - - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - # travel with camp - only if you traveled with it here - option = { - name = ep3_contract_event.0094.b - trigger = { - domicile.domicile_location = root.location - } - hidden_effect = { - current_travel_plan ?= { - abort_travel_plan = yes - } - start_travel_plan = { - destination = scope:corrupt_province - on_arrival_event = ep3_contract_event.0093 - on_arrival_destinations = all - travel_with_domicile = yes - return_trip = no - can_cancel_planning = no - } - } - custom_tooltip = ep3_contract_event.0094.travel_with_domicile - custom_tooltip = ep3_contract_event.0001.with_domicile.tt - - #AI shouldn't move their camp in events - ai_chance = { - base = 0 - } - } - - # I had enough, fail contract - option = { - name = ep3_contract_event.0094.c - trigger = { - scope:task_contract.var:control <= scope:task_contract.var:support - } - flavor = ep3_contract_event.0094_fail - show_as_tooltip = { - scope:task_contract = { - complete_task_contract = failure_standard - } - } - trigger_event = ep3_contract_event.0095 - stress_impact = { - ambitious = major_stress_impact_gain - lazy = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - - # I had enough, succeed contract - option = { - name = ep3_contract_event.0094.c - trigger = { - scope:task_contract.var:control > scope:task_contract.var:support - } - flavor = ep3_contract_event.0094_success - scope:task_contract = { - if = { - limit = { - scope:task_contract.var:control = scope:task_contract.var:num_of_corrupt_counties - } - complete_task_contract = success_critical - } - else = { - complete_task_contract = success_standard - } - } - return_home = yes - stress_impact = { - ambitious = minor_stress_impact_gain - lazy = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - after = { - ep3_peasant_leader_widget_clear_effect = yes - } -} - -# increase control - follow up -ep3_contract_event.0095 = { - type = character_event - title = ep3_contract_event.0095.t - desc = ep3_contract_event.0095.desc - theme = landless_adventurer - #task_contract_taker, you - left_portrait = { - character = root - animation = schadenfreude - } - #marshal - right_portrait = { - character = scope:task_contract_councillor - animation = rage - } - #marshal's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - widget = { - gui = "event_window_widget_peasant_leader" - container = "custom_widgets_container" - } - cooldown = { days = 1 } - - immediate = { - # transfer the list of supported counties from contract to root, as the contract will be destroyed after this event, so that you will have access to the ep3_laamp_peasant_war cb, even if you didn't choose war in this event - scope:task_contract = { - every_in_list = { - variable = supported_counties - root = { - add_to_variable_list = { - name = war_supported_counties_list - target = prev - } - } - } - every_in_list = { - variable = met_peasant_leaders - root = { - add_to_variable_list = { - name = war_met_peasant_leaders_list - target = prev - } - } - } - } - scope:task_contract_taker = { - ep3_peasant_leader_widget_setup_effect = yes - } - } - - #lead an independence peasant war, become landed ruler after winning - option = { - name = ep3_contract_event.0095.a - #start a freedom war! - custom_tooltip = ep3_contract_event.0095.a_become_landed - start_war = { - cb = ep3_laamp_peasant_war - target = scope:task_contract_councillor_liege.top_liege - } - #try to capture the marshal, as they standing right next to you - duel = { - skills = { prowess intrigue } - target = scope:task_contract_councillor - 25 = { - desc = ep3_contract_event.0095.a_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - prisoner_of_war_capture_effect = { - TARGET = scope:task_contract_councillor - IMPRISONER = root - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - 25 = { - desc = ep3_contract_event.0095.a_lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - scope:task_contract_councillor = { - add_opinion = { - target = root - modifier = attempted_imprisonment_opinion - } - } - } - } - #fail the contract, obivously - scope:task_contract = { - complete_task_contract = failure_standard - } - return_home = yes - stress_impact = { - craven = minor_stress_impact_gain - lazy = minor_stress_impact_gain - brave = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - } - ai_chance = { - base = 20 - } - } - - #lead an independence peasant war, but remain laamp after winning - option = { - name = ep3_contract_event.0095.a_2 - #start a freedom war! - custom_tooltip = { - text = ep3_contract_event.0095.a_remain_laamp - set_variable = { - name = ep3_laamp_peasant_war_remain_laamp - value = yes - } - } - start_war = { - cb = ep3_laamp_peasant_war - target = scope:task_contract_councillor_liege.top_liege - } - #try to capture the marshal, as they standing right next to you - duel = { - skills = { prowess intrigue } - target = scope:task_contract_councillor - 25 = { - desc = ep3_contract_event.0095.a_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - prisoner_of_war_capture_effect = { - TARGET = scope:task_contract_councillor - IMPRISONER = root - } - scope:task_contract_councillor_liege = { - add_opinion = { - modifier = fp3_wrongful_imprisonment_opinion - opinion = -30 - target = root - } - } - } - 25 = { - desc = ep3_contract_event.0095.a_lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - scope:task_contract_councillor = { - add_opinion = { - target = root - modifier = attempted_imprisonment_opinion - } - } - } - } - #fail the contract, obivously - scope:task_contract = { - complete_task_contract = failure_standard - } - return_home = yes - stress_impact = { - craven = minor_stress_impact_gain - lazy = minor_stress_impact_gain - brave = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - # they are on their own, for now - option = { - name = ep3_contract_event.0095.b - scope:task_contract = { - every_in_list = { - variable = supported_counties - custom = laamp_peasant_revolt_every_county - random_list = { - 1 = { - add_county_modifier = small_investment_in_revolt_modifier - } - 1 = { - add_county_modifier = medium_investment_in_revolt_modifier - } - 1 = { - add_county_modifier = high_investment_in_revolt_modifier - } - } - } - } - #this also fails the contract - scope:task_contract = { - complete_task_contract = failure_standard - } - return_home = yes - stress_impact = { - craven = minor_stress_impact_loss - lazy = minor_stress_impact_loss - brave = minor_stress_impact_gain - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } - - # try to weasel out of it - option = { - name = ep3_contract_event.0095.c - duel = { - skills = { diplomacy intrigue } - target = scope:task_contract_councillor - 1 = { - desc = ep3_contract_event.0095.c_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - 25 = { - desc = ep3_contract_event.0095.c_tie - scope:task_contract = { - invalidate_contract = yes - } - } - 25 = { - desc = ep3_contract_event.0095.c_lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - } - return_home = yes - stress_impact = { - honest = minor_stress_impact_gain - brave = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - cynical = minor_stress_impact_loss - } - #AI should always try to complete the contract - ai_chance = { - base = 20 - } - } - - after = { - ep3_peasant_leader_widget_clear_effect = yes - } -} - -## Spymaster -#Contract to scheme find secrets - starting event -ep3_contract_event.0100 = { - type = character_event - title = ep3_contract_event.0100.t - desc = ep3_contract_event.0100.desc - theme = intrigue - #task_contract_taker, you - left_portrait = { - character = root - animation = stunned - } - #spymaster - right_portrait = { - character = scope:task_contract_councillor - animation = scheme - } - #spymaster's liege - lower_right_portrait = { - character = scope:task_contract_councillor_liege - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - } - - #start scheme to find secrets - option = { - name = ep3_contract_event.0030.b - begin_contract_scheme_with_agents_effect = { - SCHEME_TYPE = laamp_help_find_secrets_scheme - TARGET_TYPE = target_character - TARGET_SCOPE = scope:task_contract_target - TASK_CONTRACT = scope:task_contract - # Success. - AGENT_1 = agent_diplomat - AGENT_2 = agent_shill - AGENT_3 = agent_gabbler - # Speed. - AGENT_4 = agent_theologian - # Secrecy. - AGENT_5 = agent_justiciar - } - #AI should always try to complete the contract - ai_chance = { - base = 1 - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Boost Legitimacy - intro -ep3_contract_event.0510 = { - type = character_event - title = ep3_contract_event.0510.t - desc = ep3_contract_event.0510.desc - theme = diplomacy - override_background = { - reference = alley_day - } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:peasant - animation = debating - } - lower_right_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - create_character = { - template = generic_peasant_character - location = this.location - faith = location.faith - culture = location.culture - random_traits = yes - trait = peasant_leader - save_scope_as = peasant - } - location = { - save_scope_as = location - } - } - - #You attempt to debate the local - option = { - name = ep3_contract_event.0510.a - - duel = { - skills = { diplomacy learning } - target = scope:peasant - - 50 = { #You win the debate - desc = ep3_contract_event.0510.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - scope:task_contract = { - complete_task_contract = success_standard - } - add_character_flag = contract_success_flag - trigger_event = ep3_contract_event.0520 - } - 40 = { #You are unconvincing - desc = ep3_contract_event.0510.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - scope:task_contract = { - complete_task_contract = failure_standard - } - add_character_flag = contract_failure_flag - trigger_event = ep3_contract_event.0520 - } - 10 = { #You actively damage your employer in the eyes of his subjects - desc = ep3_contract_event.0510.a.critfailure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - scope:task_contract = { - complete_task_contract = failure_critical - } - add_character_flag = contract_crit_failure_flag - trigger_event = ep3_contract_event.0520 - } - } - stress_impact = { - honest = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - OR = { - highest_skill = diplomacy - learning > scope:peasant.learning - } - } - } - } - - #Threaten the local - option = { - name = ep3_contract_event.0510.b - duel = { - skills = { diplomacy prowess } - target = scope:peasant - - 30 = { #You win the 'debate' - desc = ep3_contract_event.0510.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 3 - scope:task_contract = { - complete_task_contract = success_standard - } - add_character_flag = contract_success_flag - trigger_event = ep3_contract_event.0520 - } - 50 = { #You are unconvincing - desc = ep3_contract_event.0510.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - scope:task_contract = { - complete_task_contract = failure_standard - } - add_character_flag = contract_failure_flag - trigger_event = ep3_contract_event.0520 - } - 20 = { #You actively damage your employer in the eyes of his subjects - desc = ep3_contract_event.0510.b.critfailure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - scope:peasant = { - create_faction = { - type = peasant_faction - target = scope:task_contract_employer - } - } - scope:task_contract = { - complete_task_contract = failure_critical - } - add_character_flag = contract_crit_failure_flag - trigger_event = ep3_contract_event.0520 - } - } - stress_impact = { - honest = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - sadistic = major_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill_including_prowess = prowess - } - } - } - - #Pay him off to support your cause - option = { - name = ep3_contract_event.0510.c - - pay_short_term_gold = { - target = scope:peasant - gold = minor_gold_value - } - - random_list = { - 75 = { - modifier = { - add = 15 - scope:peasant = { - OR = { - has_trait = greedy - has_trait = arbitrary - } - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - add_character_flag = contract_success_flag - trigger_event = ep3_contract_event.0520 - } - 25 = { - modifier = { - add = 25 - scope:peasant = { - OR = { - has_trait = stubborn - has_trait = ambitious - } - } - } - scope:task_contract = { - complete_task_contract = failure_standard - } - add_character_flag = contract_failure_flag - trigger_event = ep3_contract_event.0520 - } - } - - - stress_impact = { - gregarious = minor_stress_impact_loss - zealous = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - shy = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - gold > 100 - } - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Boost Legitimacy - resolution -ep3_contract_event.0520 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0520.t.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0520.t.failure - } - triggered_desc = { - trigger = { has_character_flag = contract_crit_failure_flag } - desc = ep3_contract_event.0520.t.critfailure - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0520.desc.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0520.desc.failure - } - triggered_desc = { - trigger = { has_character_flag = contract_crit_failure_flag } - desc = ep3_contract_event.0520.desc.critfailure - } - } - } - theme = diplomacy - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_character_flag = contract_success_flag - } - animation = personality_honorable - } - animation = stress - } - right_portrait = { - character = scope:task_contract_employer - triggered_animation = { - trigger = { - has_character_flag = contract_success_flag - } - animation = ecstasy - } - animation = anger - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - location = { - save_scope_as = location - } - show_as_tooltip = { - if = { - limit = { - has_character_flag = contract_success_flag - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - else_if = { - limit = { - has_character_flag = contract_failure_flag - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - else = { - scope:task_contract = { - complete_task_contract = failure_critical - } - } - } - } - - option = { - name = ep3_contract_event.0520.a - - trigger = { - has_character_flag = contract_success_flag - } - - stress_impact = { - base = miniscule_stress_impact_loss - } - ai_chance = { - base = 10 - } - } - - option = { - name = ep3_contract_event.0520.b - - trigger = { - NOT = { - has_character_flag = contract_success_flag - } - } - - stress_impact = { - base = miniscule_stress_impact_gain - } - ai_chance = { - base = 10 - } - } - - after = { - remove_character_flag = contract_crit_success_flag - remove_character_flag = contract_success_flag - remove_character_flag = contract_failure_flag - remove_character_flag = contract_crit_failure_flag - } -} - -# Turbulent Priest - intro -ep3_contract_event.0550 = { - type = character_event - title = ep3_contract_event.0550.t - desc = ep3_contract_event.0550.desc - theme = martial - override_background = { - reference = alley_night - } - left_portrait = { - character = root - animation = lantern - } - right_portrait = { - character = scope:messenger - outfit_tags = { travel_cloak } - animation = scheme - hide_info = yes - } - lower_right_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - set_council_scopes_effect = yes - location = { - save_scope_as = location - } - scope:task_contract_employer = { - random_councillor = { #Has a councillor who they hate - limit = { - is_ai = yes - reverse_opinion = { - target = scope:task_contract_employer - value <= high_negative_opinion - } - } - save_scope_as = councillor - } - } - if = { - limit = { - any_pool_character = { - province = root.location - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 25 - age <= 75 - } - } - random_pool_character = { - province = root.location - limit = { - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 25 - age <= 75 - } - save_scope_as = messenger - } - } - else = { - create_character = { - template = generic_peasant_character - location = this.location - faith = location.faith - culture = location.culture - random_traits = yes - save_scope_as = messenger - } - } - } - - #Open the letter - option = { - name = ep3_contract_event.0550.a - - custom_tooltip = ep3_contract_event.0550.a.tt - - trigger_event = ep3_contract_event.0555 - - stress_impact = { - honest = miniscule_stress_impact_gain - deceitful = miniscule_stress_impact_loss - craven = miniscule_stress_impact_gain - brave = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Turbulent Priest - Letter -ep3_contract_event.0555 = { - type = character_event - window = anonymous_letter_event - title = debug.0002.t - desc = ep3_contract_event.0555.desc - theme = martial - - #Okie doke - option = { - name = ep3_contract_event.0555.a - - trigger_event = { - id = ep3_contract_event.0560 - days = 1 - } - - stress_impact = { - honest = miniscule_stress_impact_gain - deceitful = miniscule_stress_impact_loss - craven = miniscule_stress_impact_gain - brave = miniscule_stress_impact_loss - } - - ai_chance = { - base = 100 - } - } -} - -# Turbulent Priest - decision -ep3_contract_event.0560 = { - type = character_event - title = ep3_contract_event.0560.t - desc = ep3_contract_event.0560.desc - theme = martial - override_background = { - reference = alley_night - } - left_portrait = { - character = root - animation = hunting_knife_start - } - right_portrait = { - character = scope:councillor - animation = drink_goblet - } - - immediate = { - set_contract_scopes_effect = yes - location = { - save_scope_as = location - } - scope:task_contract_employer = { - random_sub_realm_barony = { #Save a place for the exile to go - limit = { - this != root.capital_province - } - save_scope_as = exile_barony - } - } - } - - option = { #Slaughter them - name = ep3_contract_event.0560.a - - duel = { - skills = { prowess martial } - target = scope:councillor - - 30 = { #You break in and kill everyone inside - desc = ep3_contract_event.0560.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 3 - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { death = { death_reason = death_murder } } - } - 50 = { #You break in, kill the target, but suffer wounds - desc = ep3_contract_event.0560.a.neutral - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - increase_wounds_no_death_effect = { REASON = fight } - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { death = { killer = root death_reason = death_duel } } - } - 30 = { #You fail to even kill the target - desc = ep3_contract_event.0560.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 3 - increase_wounds_no_death_effect = { REASON = fight } - add_character_flag = contract_crit_failure_flag - custom_tooltip = ep3_contract_event.0560.contractfailure - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - 10 = { #You are killed! - desc = ep3_contract_event.0560.a.critfailure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - death = { killer = scope:councillor death_reason = death_duel } - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - impatient = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill_including_prowess = prowess - } - } - } - - option = { #Knife him in the loo - name = ep3_contract_event.0560.b - - duel = { - skills = { prowess intrigue } - target = scope:councillor - - 40 = { #It works perfectly - desc = ep3_contract_event.0560.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 4 - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractcritsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { death = { death_reason = death_murder } } - } - 40 = { #There is a scuffle, and people notice as you escape - desc = ep3_contract_event.0560.b.neutral - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 4 - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { death = { killer = root death_reason = death_murder_known } } - } - 20 = { #He doesn't even go to the toilet - desc = ep3_contract_event.0560.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 2 - increase_wounds_no_death_effect = { REASON = fight } - add_character_flag = contract_failure_flag - custom_tooltip = ep3_contract_event.0560.contractcritfailure - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - } - - stress_impact = { - sadistic = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - impatient = minor_stress_impact_gain - patient = miniscule_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - add = 50 - highest_skill = intrigue - } - } - } - - option = { #Poison his drink - name = ep3_contract_event.0560.c - - duel = { - skill = intrigue - value = very_high_skill_rating - - 20 = { #It works perfectly - desc = ep3_contract_event.0560.c.critsuccess - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 2 - add_character_flag = contract_crit_success_flag - custom_tooltip = ep3_contract_event.0560.contractcritsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - 50 = { #By the time they realise it was you, he is already dead - desc = ep3_contract_event.0560.c.success - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { death = { killer = root death_reason = death_poison } } - } - 50 = { #It merely makes him sick - desc = ep3_contract_event.0560.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - add_character_flag = contract_failure_flag - custom_tooltip = ep3_contract_event.0560.contractfailure - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:councillor = { contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = no } } - } - 20 = { #He sees you spiking the drink - desc = ep3_contract_event.0560.c.critfailure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 2 - add_character_flag = contract_crit_failure_flag - custom_tooltip = ep3_contract_event.0560.contractcritfailure - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - } - - stress_impact = { - brave = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = intrigue - } - } - } - - option = { #Lady Boyle 'em - name = ep3_contract_event.0560.d - - duel = { - skills = { intrigue learning } - target = scope:councillor - - 25 = { #It works perfectly - desc = ep3_contract_event.0560.d.critsuccess - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 2 - add_character_flag = contract_crit_success_flag - custom_tooltip = ep3_contract_event.0560.contractcritsuccess - scope:task_contract_employer = { - fire_councillor = scope:councillor - } - scope:councillor = { - if = { - limit = { - is_landed = no - } - banish = yes - } - else = { - banish = yes - create_title_and_vassal_change = { - type = revoked - save_scope_as = change - add_claim_on_loss = yes - } - create_landless_adventurer_title_effect = { - REASON = flag:exile - FLAVOR_CHAR = root - } - } - } - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - 50 = { #You have to knock him out before abduction - desc = ep3_contract_event.0560.d.success - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - scope:task_contract_employer = { - fire_councillor = scope:councillor - } - scope:councillor = { - increase_wounds_no_death_effect = { REASON = fight } - if = { - limit = { - is_landed = no - } - banish = yes - } - else = { - banish = yes - create_title_and_vassal_change = { - type = revoked - save_scope_as = change - add_claim_on_loss = yes - } - create_landless_adventurer_title_effect = { - REASON = flag:exile - FLAVOR_CHAR = root - } - } - } - } - 35 = { #He escapes from your clutches - desc = ep3_contract_event.0560.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 3 - add_character_flag = contract_crit_failure_flag - custom_tooltip = ep3_contract_event.0560.contractcritfailure - trigger_event = { - id = ep3_contract_event.0565 - days = { 1 2 } - } - } - } - - stress_impact = { - brave = minor_stress_impact_gain - craven = miniscule_stress_impact_loss - sadistic = medium_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - add = 25 - highest_skill = intrigue - } - modifier = { - add = 100 - highest_skill = learning - } - } - } -} - -# Turbulent Priest - resolution -ep3_contract_event.0565 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_crit_success_flag } - desc = ep3_contract_event.0565.t.critsuccess - } - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0565.t.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0565.t.failure - } - triggered_desc = { - trigger = { has_character_flag = contract_crit_failure_flag } - desc = ep3_contract_event.0565.t.critfailure - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_crit_success_flag } - desc = ep3_contract_event.0565.desc.critsuccess - } - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0565.desc.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0565.desc.failure - } - triggered_desc = { - trigger = { has_character_flag = contract_crit_failure_flag } - desc = ep3_contract_event.0565.desc.critfailure - } - } - } - theme = martial - override_background = { - reference = ep2_travel_bridge - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_character_flag = contract_success_flag - has_character_flag = contract_crit_success_flag - } - } - animation = steward - } - outfit_tags = { nightgown } - animation = stress - } - right_portrait = { - trigger = { - OR = { - has_character_flag = contract_success_flag - has_character_flag = contract_crit_success_flag - } - } - character = scope:messenger - animation = jockey_idle - outfit_tags = { travel_cloak } - hide_info = yes - camera = camera_event_horse_right - } - lower_center_portrait = { - character = scope:councillor - } - - immediate = { - set_contract_scopes_effect = yes - if = { - limit = { - any_pool_character = { - province = root.location - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 25 - age <= 75 - } - } - random_pool_character = { - province = root.location - limit = { - is_physically_able_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 25 - age <= 75 - } - save_scope_as = messenger - } - } - else = { - create_character = { - template = generic_peasant_character - location = this.location - faith = location.faith - culture = location.culture - random_traits = yes - save_scope_as = messenger - } - } - if = { - limit = { - has_character_flag = contract_crit_success_flag - } - scope:task_contract = { - complete_task_contract = success_critical - } - } - else_if = { - limit = { - has_character_flag = contract_success_flag - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - else_if = { - limit = { - has_character_flag = contract_failure_flag - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - else = { - scope:task_contract = { - complete_task_contract = failure_critical - } - } - } - - option = { - name = ep3_contract_event.0565.a - - trigger = { - OR = { - has_character_flag = contract_crit_success_flag - has_character_flag = contract_success_flag - } - } - - stress_impact = { - base = miniscule_stress_impact_loss - } - ai_chance = { - base = 10 - } - } - - option = { - name = ep3_contract_event.0565.b - - trigger = { - NOR = { - has_character_flag = contract_crit_success_flag - has_character_flag = contract_success_flag - } - } - - stress_impact = { - base = miniscule_stress_impact_gain - } - ai_chance = { - base = 10 - } - } - - after = { - remove_character_flag = contract_crit_success_flag - remove_character_flag = contract_success_flag - remove_character_flag = contract_failure_flag - remove_character_flag = contract_crit_failure_flag - } -} - -# Rescue Wanderer - Intro -ep3_contract_event.0570 = { - type = character_event - title = ep3_contract_event.0570.t - desc = ep3_contract_event.0570.desc - theme = intrigue - override_background = { - reference = dungeon - } - left_portrait = { - character = root - animation = inspect_weapon - } - right_portrait = { - character = scope:task_contract_employer - animation = prisondungeon - } - lower_right_portrait = { - character = scope:prisonguard - } - - immediate = { - set_contract_scopes_effect = yes - save_scope_as = root_for_loc - create_character = { - template = mercenary - location = this.location - faith = location.faith - culture = location.culture - gender_female_chance = root_soldier_female_chance - random_traits = yes - save_scope_as = prisonguard - } - location = { - save_scope_as = location - } - - save_scope_value_as = { - name = lockpick_range - value = { - integer_range = { - min = 1 - max = 10 - } - } - } - } - - #Duel the guard to get them out - option = { - name = ep3_contract_event.0570.a - - trigger = { - can_start_single_combat_trigger = yes - } - - add_internal_flag = dangerous - - custom_tooltip = ep3_contract_event.0570.a.tt - - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:prisonguard - FATALITY = always - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = ep3_contract_event.0571 - INVALIDATION_EVENT = single_combat.1006 - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - sadistic = minor_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - add = 50 - highest_skill_including_prowess = prowess - } - } - } - - #Make a distraction - option = { - name = ep3_contract_event.0570.b - - duel = { - skill = intrigue - value = decent_skill_rating - - 50 = { #The distraction works - desc = ep3_contract_event.0570.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - trigger_event = { - id = ep3_contract_event.0575 - days = 1 - } - } - 50 = { #It doesn't work and you have to escape - desc = ep3_contract_event.0570.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - random = { - chance = 30 - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_contract_event.0570.b.failure.tt - desc = ep3_contract_event.0570.b.failure.tt - left_icon = root - right_icon = scope:prisonguard - increase_wounds_no_death_effect = { REASON = fight } - } - } - trigger_event = { - id = ep3_contract_event.0575 - days = 1 - } - } - } - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = miniscule_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = intrigue - } - } - } - - #Try to pick the lock - option = { - name = ep3_contract_event.0570.c - - random_list = { - 35 = { - modifier = { - add = 20 - has_trait = gallowsbait - } - modifier = { - add = 20 - has_trait_xp = { - trait = gallowsbait - track = thief - value >= 25 - } - } - modifier = { - add = 20 - has_trait_xp = { - trait = gallowsbait - track = thief - value >= 75 - } - } - add_character_flag = contract_success_flag - custom_tooltip = ep3_contract_event.0560.contractsuccess - trigger_event = { - id = ep3_contract_event.0575 - days = 1 - } - } - 65 = { - modifier = { - add = scope:lockpick_range - } - add_character_flag = contract_failure_flag - custom_tooltip = ep3_contract_event.0560.contractfailure - trigger_event = { - id = ep3_contract_event.0575 - days = 1 - } - } - } - - stress_impact = { - patient = minor_stress_impact_loss - impatient = medium_stress_impact_loss - } - - ai_chance = { - base = 25 - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -#Add relevant flags -ep3_contract_event.0571 = { - hidden = yes - immediate = { - add_character_flag = contract_duel_success_flag - add_character_flag = contract_success_flag - trigger_event = { - id = ep3_contract_event.0575 - days = 1 - } - } -} - -# Rescue Wanderer - resolution -ep3_contract_event.0575 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0575.t.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0575.t.failure - } - } - } - desc = { - triggered_desc = { - trigger = { has_character_flag = contract_duel_success_flag } - desc = ep3_contract_event.0575.desc.duel - } - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0575.desc.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0575.desc.failure - } - } - } - theme = intrigue - override_background = { - reference = alley_day - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - NOT = { - has_character_flag = contract_failure_flag - } - } - animation = personality_honorable - } - animation = stress - } - right_portrait = { - trigger = { - root = { - has_character_flag = contract_success_flag - } - } - character = scope:task_contract_employer - animation = ecstasy - } - artifact = { - trigger = { exists = scope:newly_created_artifact } - target = scope:newly_created_artifact - position = lower_center_portrait - } - - immediate = { - set_contract_scopes_effect = yes - hidden_effect = { - scope:task_contract_employer.primary_title = { - save_scope_as = title - } - destroy_title = scope:title - } - add_courtier = scope:task_contract_employer - if = { - limit = { - has_character_flag = contract_failure_flag - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - else = { - scope:task_contract = { - complete_task_contract = success_standard - } - } - if = { - limit = { - has_character_flag = contract_duel_success_flag - } - add_gold = { 15 40 } - hidden_effect = { - random_dummy_gender_effect = yes - create_artifact_brooch_effect = { - OWNER = scope:dummy_gender - SMITH = scope:dummy_gender - } - scope:newly_created_artifact = { - add_artifact_modifier = artifact_negate_prowess_penalty_add_3_modifier - add_artifact_modifier = artifact_monthly_prestige_2_modifier - add_artifact_modifier = artifact_dynasty_opinion_1_modifier - set_artifact_rarity = masterwork - set_artifact_name = ep3_pilfered_brooch - add_artifact_history = { - type = stolen - actor = scope:prisonguard - recipient = root - } - } - } - } - } - - option = { - name = ep3_contract_event.0575.a - - trigger = { - NOT = { - has_character_flag = contract_failure_flag - } - } - - stress_impact = { - base = miniscule_stress_impact_loss - } - ai_chance = { - base = 10 - } - } - - option = { - name = ep3_contract_event.0575.b - - trigger = { - has_character_flag = contract_failure_flag - } - - ai_chance = { - base = 10 - } - } - - after = { - remove_character_flag = contract_success_flag - remove_character_flag = contract_failure_flag - remove_character_flag = contract_duel_success_flag - } -} - -# Find Secret - Intro -ep3_contract_event.0580 = { - type = character_event - title = ep3_contract_event.0580.t - desc = ep3_contract_event.0580.desc - theme = intrigue - override_background = { - reference = temple - } - left_portrait = { - character = root - animation = eavesdrop - } - right_portrait = { - character = scope:secret_haver - animation = paranoia - } - lower_center_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - if = { - limit = { - any_vassal = { - any_secret = { - count > 0 - NOT = { is_known_by = scope:task_contract_employer } - } - } - } - random_vassal = { - limit = { - any_secret = { - count > 0 - NOT = { is_known_by = scope:task_contract_employer } - } - } - save_scope_as = secret_haver - random_secret = { - limit = { - NOT = { is_known_by = scope:task_contract_employer } - } - save_scope_as = secret - } - } - } - else_if = { - limit = { - any_courtier_or_guest = { - any_secret = { - count > 0 - NOT = { is_known_by = scope:task_contract_employer } - } - } - } - random_courtier_or_guest = { - limit = { - any_secret = { - count > 0 - NOT = { is_known_by = scope:task_contract_employer } - } - } - save_scope_as = secret_haver - random_secret = { - limit = { - NOT = { is_known_by = scope:task_contract_employer } - } - save_scope_as = secret - } - } - } - else = { - random_courtier_or_guest = { - limit = { - is_available_adult = yes - } - save_scope_as = secret_haver - give_random_likely_secret_effect = yes - random_secret = { - limit = { - NOT = { is_known_by = scope:task_contract_employer } - } - save_scope_as = secret - } - } - } - if = { - limit = { - NOT = { - exists = scope:secret_haver - } - } - create_character = { - employer = scope:task_contract_employer - template = pool_repopulate_stewardship - faith = scope:task_contract_employer.faith - culture = scope:task_contract_employer.culture - save_scope_as = secret_haver - } - scope:secret_haver = { - give_random_likely_secret_effect = yes - random_secret = { - save_scope_as = secret - } - } - } - } - } - - #Investigate - option = { - name = ep3_contract_event.0580.a - - duel = { - skill = intrigue - value = decent_skill_rating - - 50 = { #You learn their secret - desc = ep3_contract_event.0580.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - 50 = { #Turns out they don't have one...? - desc = ep3_contract_event.0580.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - } - - stress_impact = { - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 20 - highest_skill = intrigue - intrigue >= decent_skill_rating - } - modifier = { - add = 70 - highest_skill = intrigue - intrigue >= 16 - } - } - } - - #Try to lie about it - option = { - name = ep3_contract_event.0580.b - - duel = { - skills = { diplomacy intrigue } - target = scope:task_contract_employer - - 50 = { #Your lie works - desc = ep3_contract_event.0580.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - add_character_flag = lied_about_secret_flag - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - 50 = { #They know you're lying - desc = ep3_contract_event.0580.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - } - - stress_impact = { - deceitful = minor_stress_impact_loss - honest = medium_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 90 - diplomacy >= scope:task_contract_employer.diplomacy - intrigue >= scope:task_contract_employer.intrigue - } - } - } - - #Threaten them - option = { - name = ep3_contract_event.0580.c - - flavor = ep3_contract_event.0580.c.tt - - if = { - limit = { - scope:task_contract_employer = { - NOT = { - any_secret = { } - } - } - } - duel = { - skill = prowess - target = scope:secret_haver - - 50 = { #Your intimidation works - desc = ep3_contract_event.0580.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - modifier = { - dread > 25 - add = 10 - } - modifier = { - dread > 50 - add = 10 - } - modifier = { - dread > 75 - add = 10 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - 50 = { #They aren't impressed - desc = ep3_contract_event.0580.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - } - } - else = { - duel = { - skill = prowess - target = scope:secret_haver - - 10 = { #Your intimidation works - desc = ep3_contract_event.0580.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 1 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - 80 = { #They try to cut a deal... - desc = ep3_contract_event.0580.c.neutral - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 10 - hidden_effect = { #For a decent reward - scope:secret_haver = { - add_gold = { 50 100 } - } - } - custom_tooltip = ep3_contract_event.0580.c.neutral.tt - trigger_event = { - id = ep3_contract_event.0581 - days = 1 - } - } - 10 = { #They aren't impressed - desc = ep3_contract_event.0580.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - } - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = miniscule_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - add = 100 - prowess > { - value = scope:secret_haver.prowess - add = 3 - } - } - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Find Secret - Secret Haver Deal Proposal -ep3_contract_event.0581 = { - type = character_event - title = ep3_contract_event.0581.t - desc = ep3_contract_event.0581.desc - theme = intrigue - override_background = { - reference = temple - } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:secret_haver - animation = scheme - } - lower_center_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - random_secret = { - save_scope_as = employer_secret - } - } - hidden_effect = { - scope:secret_haver = { - random_dummy_gender_effect = yes - create_artifact_ring_effect = { - OWNER = scope:dummy_gender - SMITH = scope:dummy_gender - } - } - } - } - - #Turn down the deal - option = { - name = ep3_contract_event.0581.a - - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - - trigger_event = { - id = ep3_contract_event.0585 - days = 1 - } - - stress_impact = { - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - } - } - - #Leave with his rewards - option = { - name = ep3_contract_event.0581.b - - scope:secret_haver = { - pay_short_term_gold = { - target = root - gold = scope:secret_haver.gold - } - } - - scope:newly_created_artifact = { - set_owner = root - } - - scope:employer_secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - - custom_tooltip = ep3_contract_event.0560.contractfailure - - scope:task_contract = { - complete_task_contract = failure_standard - } - - stress_impact = { - arbitrary = minor_stress_impact_loss - just = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - } - } -} - -# Find Secret - Resolution -ep3_contract_event.0585 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0585.t.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0585.t.failure - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = lied_about_secret_flag } - desc = ep3_contract_event.0585.desc.liedsuccessfully - } - triggered_desc = { - trigger = { has_character_flag = contract_success_flag } - desc = ep3_contract_event.0585.desc.success - } - triggered_desc = { - trigger = { has_character_flag = contract_failure_flag } - desc = ep3_contract_event.0585.desc.failure - } - } - } - theme = intrigue - override_background = { - reference = council_chamber - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - NOT = { - has_character_flag = contract_failure_flag - } - } - animation = steward - } - animation = stress - } - right_portrait = { - character = scope:task_contract_employer - triggered_animation = { - trigger = { - root = { - has_character_flag = contract_success_flag - } - } - animation = ecstasy - } - animation = anger - } - - immediate = { - set_contract_scopes_effect = yes - if = { - limit = { - has_character_flag = contract_failure_flag - } - scope:task_contract = { - complete_task_contract = failure_standard - } - } - else = { - scope:task_contract = { - complete_task_contract = success_standard - } - } - } - - option = { - name = ep3_contract_event.0585.a - - trigger = { - NOT = { - has_character_flag = contract_failure_flag - } - } - - if = { - limit = { - NOT = { - has_character_flag = lied_about_secret_flag - } - } - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = scope:task_contract_employer - } - } - } - else = { - hidden_effect = { - scope:secret_haver = { - random_list = { - 1 = { add_secret = { type = secret_cannibal } } - 1 = { add_secret = { type = secret_witch } } - 1 = { add_secret = { type = secret_non_believer } } - } - } - } - scope:secret_haver = { - random_secret = { - limit = { - this != scope:secret - } - reveal_to_without_events_effect = { - CHARACTER = scope:task_contract_employer - } - } - } - } - - stress_impact = { - base = miniscule_stress_impact_loss - } - ai_chance = { - base = 10 - } - } - - option = { - name = ep3_contract_event.0585.b - - trigger = { - has_character_flag = contract_failure_flag - } - - ai_chance = { - base = 10 - } - } - - after = { - remove_character_flag = contract_success_flag - remove_character_flag = contract_failure_flag - remove_character_flag = lied_about_secret_flag - } -} - -# Eliminate Heir - Intro -ep3_contract_event.0590 = { - type = character_event - title = ep3_contract_event.0590.t - desc = ep3_contract_event.0590.desc - theme = intrigue - override_background = { - reference = alley_night - } - left_portrait = { - character = root - animation = spymaster - } - right_portrait = { - character = scope:heir - animation = paranoia - } - lower_center_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract_employer = { - random_heir = { - limit = { - is_primary_heir_of = scope:task_contract_employer - reverse_opinion = { - target = scope:task_contract_employer - value <= high_negative_opinion - } - age > 16 #No murderin' babies - } - save_scope_as = heir - } - } - location = { - save_scope_as = location - } - } - - #A knife in the dark... - option = { - name = ep3_contract_event.0590.a - - duel = { - skill = prowess - target = scope:heir - - 50 = { #Stabby stab - desc = ep3_contract_event.0590.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - scope:heir = { - death = { - death_reason = death_disappearance - killer = root - } - } - scope:task_contract = { - complete_task_contract = success_standard - } - } - 50 = { #They get away, oh no - desc = ep3_contract_event.0590.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - scope:heir = { - add_character_modifier = { - modifier = watchful_modifier - years = 5 - } - } - scope:task_contract_employer = { - add_character_modifier = { - modifier = ep3_under_suspicion_modifier - years = 5 - } - } - trigger_event = { - id = ep3_contract_event.0595 - days = 1 - } - } - } - - stress_impact = { - sadistic = miniscule_stress_impact_loss - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - modifier = { - add = 50 - highest_skill_including_prowess = prowess - } - } - } - - #Maybe just bonk 'em on the head and drag them away somewhere? - option = { - name = ep3_contract_event.0590.b - - duel = { - skills = { prowess intrigue } - value = decent_skill_rating - - 50 = { #Get bonked, nerd - desc = ep3_contract_event.0590.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - add_character_flag = knockedout_flag - trigger_event = { - id = ep3_contract_event.0591 - days = 1 - } - } - 50 = { #They get away - desc = ep3_contract_event.0590.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - trigger_event = { - id = ep3_contract_event.0595 - days = 1 - } - } - 10 = { #You, uh, bonk a lil hard - desc = ep3_contract_event.0590.b.fatalbonk - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - scope:heir = { - death = { - death_reason = death_disappearance - killer = root - } - } - add_stress = minor_stress_gain - scope:task_contract = { - complete_task_contract = success_standard - } - } - } - - stress_impact = { - sadistic = medium_stress_impact_gain - compassionate = miniscule_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - add = 50 - highest_skill = intrigue - } - } - } - - #Try to explain - option = { - name = ep3_contract_event.0590.c - - duel = { - skill = diplomacy - target = scope:heir - - 50 = { #You persuade them to leave - desc = ep3_contract_event.0590.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - custom_tooltip = ep3_contract_event.0560.contractsuccess - add_character_flag = contract_success_flag - add_character_flag = camewillingly_flag - scope:secret = { - reveal_to_without_events_effect = { - CHARACTER = root - } - } - trigger_event = { - id = ep3_contract_event.0591 - days = 1 - } - } - 50 = { #They refuse to go - desc = ep3_contract_event.0590.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - min = 5 - hidden_effect = { #For a decent reward - scope:secret_haver = { - add_gold = { 50 100 } - } - } - custom_tooltip = ep3_contract_event.0560.contractfailure - trigger_event = { - id = ep3_contract_event.0595 - days = 1 - } - } - 10 = { #You let slip who put you up to this - desc = ep3_contract_event.0590.c.critfailure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - min = 1 - custom_tooltip = ep3_contract_event.0560.contractfailure - add_character_flag = contract_failure_flag - scope:heir = { - set_relation_rival = { - target = scope:task_contract_employer - reason = rival_historical - } - } - trigger_event = { - id = ep3_contract_event.0595 - days = 1 - } - } - } - - stress_impact = { - sadistic = major_stress_impact_gain - callous = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = diplomacy - } - } - } - - #invalidate the contract - option = { - name = ep3_contract_event.0001.invalidate - scope:task_contract = { - invalidate_contract = yes - } - #AI should always try to complete the contract - ai_chance = { - base = 0 - } - } -} - -# Eliminate Heir - Transition Event -ep3_contract_event.0591 = { - type = character_event - title = ep3_contract_event.0591.t - desc = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = knockedout_flag } - desc = ep3_contract_event.0591.desc.knockedout - } - triggered_desc = { - trigger = { has_character_flag = camewillingly_flag } - desc = ep3_contract_event.0591.desc.camewillingly - } - } - } - theme = intrigue - override_background = { - reference = terrain_scope - } - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:heir - animation = thinking - } - lower_center_portrait = { - character = scope:task_contract_employer - } - - immediate = { - set_contract_scopes_effect = yes - - scope:task_contract_employer = { - random_sub_realm_barony = { - limit = { - exists = holder - } - save_scope_as = random_barony - } - } - - scope:heir = { - add_trait = gallivanter - } - } - - #Best of luck! - option = { - name = ep3_contract_event.0591.a - - scope:heir = { - add_hook = { - target = root - type = favor_hook - } - start_travel_plan = { - destination = scope:random_barony - } - } - - scope:task_contract = { - complete_task_contract = success_standard - } - - ai_chance = { - base = 10 - } - } -} - -# Eliminate Heir - Resolution -ep3_contract_event.0595 = { - type = character_event - title = ep3_contract_event.0595.t - desc = ep3_contract_event.0595.desc - theme = intrigue - override_background = { - reference = council_chamber - } - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:task_contract_employer - animation = anger - } - - immediate = { - set_contract_scopes_effect = yes - scope:task_contract = { - complete_task_contract = failure_standard - } - } - - option = { - name = ep3_contract_event.0595.a - - stress_impact = { - base = miniscule_stress_impact_gain - } - ai_chance = { - base = 10 - } - } - - after = { - remove_character_flag = contract_success_flag - remove_character_flag = contract_failure_flag - } -} diff --git a/events/dlc/ep3/ep3_councillor_events.txt b/events/dlc/ep3/ep3_councillor_events.txt deleted file mode 100644 index 8d7903a49..000000000 --- a/events/dlc/ep3/ep3_councillor_events.txt +++ /dev/null @@ -1,173 +0,0 @@ -######################## -# EP3 Councillors Events -######################## -namespace = ep3_councillor_event - -# Spouse increases your Influence -ep3_councillor_event.0001 = { - hidden = yes - - cooldown = { years = 10 } - - trigger = { - valid_spouse_councillor_trigger = yes - government_allows = administrative - } - - weight_multiplier = { - base = 1 - councillor_spouse_limited_skill_rating_modifier = { - SKILL = intrigue - SCALE = 1 - SKILL_RATING = spouse_skill_rating_1 - } - } - - immediate = { - cp:councillor_spouse = { - save_scope_as = councillor - } - send_interface_message = { - type = msg_spouse_task_good - title = ep3_councillor_event.0001.t - desc = { - triggered_desc = { - trigger = { - scope:councillor = { diplomacy < average_skill_level } - } - desc = spouse_task_diplomacy_good_unskilled_notification_tooltip - } - triggered_desc = { - trigger = { - scope:councillor = { diplomacy >= average_skill_level } - } - desc = spouse_task_diplomacy_good_skilled_notification_tooltip - } - } - - right_icon = scope:councillor - - change_influence = { - if = { - limit = { - scope:councillor = { - culture = { has_cultural_tradition = tradition_ep3_palace_politics } - } - } - add = medium_influence_gain - } - else = { - add = minor_influence_gain - } - } - } - } -} - -# Spouse increases your candidate score for a title if you are in to inherit -ep3_councillor_event.0002 = { - hidden = yes - - cooldown = { years = 10 } - - trigger = { - valid_spouse_councillor_trigger = yes - government_allows = administrative - top_liege = { - any_sub_realm_title = { - tier >= tier_duchy - is_noble_family_title = no - holder = { government_allows = administrative } - any_title_heir = { - prev = { # For getting the correct title - place_in_line_of_succession = { - target = prev # And again for going back and getting the correct character - value <= 3 - } - } - this = root - } - } - } - } - - weight_multiplier = { - base = 1 - councillor_spouse_limited_skill_rating_modifier = { - SKILL = diplomacy - SCALE = 1 - SKILL_RATING = spouse_skill_rating_1 - } - } - - immediate = { - cp:councillor_spouse = { - save_scope_as = councillor - } - top_liege = { - random_sub_realm_title = { - limit = { - tier >= tier_duchy - is_noble_family_title = no - holder = { government_allows = administrative } - any_title_heir = { - prev = { - place_in_line_of_succession = { - target = prev - value <= 3 - } - } - this = root - } - } - save_scope_as = target_title - } - } - save_scope_value_as = { - name = improved_candidate_score - value = { - if = { - limit = { - scope:councillor = { - culture = { has_cultural_tradition = tradition_ep3_palace_politics } - } - } - add = 15 - } - else = { - add = 10 - } - } - } - send_interface_message = { - type = msg_spouse_task_good - title = ep3_councillor_event.0002.t - desc = { - triggered_desc = { - trigger = { - scope:councillor = { diplomacy < average_skill_level } - } - desc = spouse_task_diplomacy_good_unskilled_notification_tooltip - } - triggered_desc = { - trigger = { - scope:councillor = { diplomacy >= average_skill_level } - } - desc = spouse_task_diplomacy_good_skilled_notification_tooltip - } - } - - right_icon = scope:councillor - left_icon = scope:target_title - - custom_tooltip = ep3_councillor_event.0002.desc - - scope:target_title = { - change_appointment_investment = { - target = root - value = scope:improved_candidate_score - } - } - } - } -} diff --git a/events/dlc/ep3/ep3_decisions_events.txt b/events/dlc/ep3/ep3_decisions_events.txt index 24129d677..0442368c0 100644 --- a/events/dlc/ep3/ep3_decisions_events.txt +++ b/events/dlc/ep3/ep3_decisions_events.txt @@ -30,9 +30,7 @@ scripted_trigger ep3_decisions_event_valid_prisoner_trigger = { exists = scope:triumph_enemy_defeated OR = { # they are vassals or knights of the defeated - liege = scope:triumph_enemy_defeated - liege.liege = scope:triumph_enemy_defeated - liege.liege.liege = scope:triumph_enemy_defeated + any_liege_or_above = { this = scope:triumph_enemy_defeated } # they are the defeated (e.g. pretender or previous liege) this = scope:triumph_enemy_defeated # they participated recently in a rebellion war vs you @@ -86,6 +84,7 @@ scripted_trigger ep3_decisions_event_valid_hostage_trigger = { ep3_decisions_event.0001 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_byzantine.dds" title = ep3_decisions_event.0001.t desc = { desc = ep3_decisions_event.0001.intro @@ -366,7 +365,7 @@ ep3_decisions_event.0002 = { change_influence = major_influence_gain add_legitimacy = minor_legitimacy_gain trigger_event = ep3_decisions_event.0007 - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain generous = medium_stress_impact_loss } @@ -420,7 +419,7 @@ ep3_decisions_event.0002 = { } } trigger_event = ep3_decisions_event.0007 - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain generous = medium_stress_impact_loss zealous = medium_stress_impact_loss @@ -440,7 +439,7 @@ ep3_decisions_event.0002 = { option = { name = ep3_decisions_event.0002.c flavor = ep3_decisions_event.0002.c.tt - trigger = { + trigger = { NOT = { exists = scope:triumph_enemy_defeated } } # This is a correspective of option B, but all the money must come from your own pockets @@ -448,7 +447,7 @@ ep3_decisions_event.0002 = { change_influence = major_influence_gain add_legitimacy = minor_legitimacy_gain trigger_event = ep3_decisions_event.0007 - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain generous = medium_stress_impact_loss gregarious = medium_stress_impact_loss @@ -537,7 +536,7 @@ ep3_decisions_event.0003 = { } immediate = { - + } #Option C: hostage @@ -635,7 +634,7 @@ ep3_decisions_event.0003 = { } faith = { change_fervor = { - value = 1 + value = trivial_fervor_gain desc = fervor_gain_triumph_of_god } } @@ -864,7 +863,7 @@ ep3_decisions_event.0004 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain vengeful = major_stress_impact_gain @@ -1001,7 +1000,6 @@ ep3_decisions_event.0005 = { ai_value_modifier = { ai_boldness = 0.5 ai_energy = 0.5 - ai_boldness = 0.5 } } } @@ -1174,10 +1172,10 @@ ep3_decisions_event.0006 = { } trigger = { - OR = { - has_character_flag = triumph_promised_prosperity - has_character_flag = triumph_promised_victories - has_character_flag = triumph_promised_stability + has_variable = { + name = triumph_promised_prosperity + name = triumph_promised_victories + name = triumph_promised_stability } } @@ -1282,6 +1280,7 @@ ep3_decisions_event.0006 = { ep3_decisions_event.0007 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_byzantine.dds" title = ep3_decisions_event.0007.t desc = { desc = ep3_decisions_event.0007.desc @@ -1301,7 +1300,7 @@ ep3_decisions_event.0007 = { change_influence = major_influence_gain } - option = { + option = { name = ep3_decisions_event.0007.a custom_tooltip = ep3_decisions_event.0007.a.tt } @@ -1347,7 +1346,7 @@ ep3_decisions_event.1000 = { } } theme = administrative - + left_portrait = { character = scope:mediocre_charioteer animation = happiness @@ -1380,6 +1379,7 @@ ep3_decisions_event.1000 = { age = { 16 30 } culture = root.location.culture faith = root.location.faith + rite = root.location.rite random_traits_list = { count = 1 education_martial_1 = {} @@ -1428,6 +1428,7 @@ ep3_decisions_event.1000 = { age = { 16 30 } culture = root.location.culture faith = root.location.faith + rite = root.location.rite random_traits_list = { count = 1 education_martial_1 = {} @@ -1517,7 +1518,7 @@ ep3_decisions_event.1000 = { } - option = { + option = { name = ep3_decisions_event.1000.a custom_tooltip = ep3_decisions_event.1000.a.aptitude pay_treasury_or_gold = { @@ -1588,7 +1589,7 @@ ep3_decisions_event.1000 = { } } } - + option = { name = ep3_decisions_event.1000.c custom_tooltip = ep3_decisions_event.1000.c.aptitude @@ -1653,7 +1654,7 @@ ep3_decisions_event.1010 = { title = ep3_decisions_event.1010.t desc = ep3_decisions_event.1010.desc theme = administrative - + left_portrait = { character = scope:mediocre_bookmaker animation = happiness @@ -1685,6 +1686,7 @@ ep3_decisions_event.1010 = { age = { 16 30 } culture = root.location.culture faith = root.location.faith + rite = root.location.rite random_traits_list = { count = 1 education_stewardship_1 = {} @@ -1721,6 +1723,7 @@ ep3_decisions_event.1010 = { age = { 16 30 } culture = root.location.culture faith = root.location.faith + rite = root.location.rite random_traits_list = { count = 1 education_stewardship_1 = {} @@ -1737,7 +1740,7 @@ ep3_decisions_event.1010 = { } } - option = { + option = { name = ep3_decisions_event.1010.a custom_tooltip = ep3_decisions_event.1010.a.aptitude pay_treasury_or_gold = { @@ -1790,8 +1793,8 @@ scripted_trigger admin_confirmation_valid_trigger = { # Confirmation is still va is_alive = yes is_imprisoned = no var:confirmation_liege_scope ?= { - is_alive = yes - is_imprisoned = no + is_alive = yes + is_imprisoned = no } liege ?= var:confirmation_liege_scope } @@ -1811,7 +1814,7 @@ scripted_effect admin_confirmation_clear_variable_effect = { current_travel_plan ?= { if = { limit = { is_paused = yes } - resume_travel_plan = yes + resume_travel_plan = yes } } # Vassal @@ -1872,13 +1875,13 @@ ep3_decisions_event.2001 = { limit = { NOT = { has_relation_rival = scope:confirmation_vassal } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain just = medium_stress_impact_gain } } else = { - stress_impact = { base = medium_stress_impact_loss } + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } } ai_chance = { base = -4 @@ -2056,9 +2059,9 @@ ep3_decisions_event.2010 = { #State faith, but not emperor's faith triggered_desc = { trigger = { - faith != scope:confirmation_vassal.capital_county.faith - primary_title.state_faith = { - this = scope:confirmation_vassal.capital_county.faith + rite != scope:confirmation_vassal.capital_county.rite + primary_title.state_rite = { + this = scope:confirmation_vassal.capital_county.rite } } desc = ep3_decisions_event.2010.desc_state_faith @@ -2174,7 +2177,7 @@ ep3_decisions_event.2010 = { } desc = ep3_decisions_event.2010.desc_generic_outro } - + } } theme = emperor @@ -2241,10 +2244,10 @@ ep3_decisions_event.2011 = { triggered_desc = { trigger = { scope:confirmation_liege = { - faith = { + rite = { NOR = { - this = scope:confirmation_liege.primary_title.state_faith - this = scope:confirmation_liege.capital_county.faith + this = scope:confirmation_liege.primary_title.state_rite + this = scope:confirmation_liege.capital_county.rite } } } @@ -2308,7 +2311,7 @@ ep3_decisions_event.2011 = { trait = governor value >= 75 } - + } legitimacy_level >= 4 } @@ -2506,7 +2509,7 @@ ep3_decisions_event.2080 = { triggered_desc = { trigger = { OR = { - NOT = { government_allows = administrative } + NOT = { government_has_mechanic = administrative } primary_title.tier = scope:confirmation_liege.primary_title.tier } } @@ -2555,8 +2558,8 @@ ep3_decisions_event.2080 = { liege = scope:confirmation_liege } AND = { # Of the Emperor - top_liege ?= { highest_held_title_tier = tier_empire } - government_allows = administrative + top_liege ?= { highest_held_title_tier >= tier_empire } + government_has_mechanic = administrative liege ?= top_liege } } @@ -2636,7 +2639,7 @@ ep3_decisions_event.2090 = { limit = { scope:confirmation_liege = { OR = { - is_alive = no + is_alive = no is_imprisoned = yes is_travelling = yes } @@ -2644,7 +2647,7 @@ ep3_decisions_event.2090 = { } send_interface_toast = { title = admin_confirmation_costs_refunded - left_icon = root + left_icon = root if = { # Remove variable preventing you limit = { has_variable = confirmation_grace } remove_variable = confirmation_grace @@ -3040,7 +3043,7 @@ ep3_decisions_event.2090 = { # lower_left_portrait = scope:pf_3.house_head # lower_center_portrait = scope:pf_4.house_head # lower_right_portrait = scope:pf_5.house_head -# +# # immediate = { # every_powerful_family = { # limit = { NOT = { root.house ?= this } } @@ -3106,7 +3109,7 @@ ep3_decisions_event.2090 = { # if = { # limit = { scope:pf_1.house_head = { is_ai = yes } } # trigger_event = { -# id = ep3_decisions_event.3201 +# id = ep3_decisions_event.3201 # days = 5 # } # } @@ -3139,7 +3142,7 @@ ep3_decisions_event.2090 = { # if = { # limit = { scope:pf_2.house_head = { is_ai = yes } } # trigger_event = { -# id = ep3_decisions_event.3201 +# id = ep3_decisions_event.3201 # days = 5 # } # } @@ -3160,7 +3163,7 @@ ep3_decisions_event.2090 = { # } # } # } -# +# # option = { # name = ep3_decisions_event.3200.c # trigger = { exists = scope:pf_3 } @@ -3172,7 +3175,7 @@ ep3_decisions_event.2090 = { # if = { # limit = { scope:pf_3.house_head = { is_ai = yes } } # trigger_event = { -# id = ep3_decisions_event.3201 +# id = ep3_decisions_event.3201 # days = 5 # } # } @@ -3193,7 +3196,7 @@ ep3_decisions_event.2090 = { # } # } # } -# +# # option = { # name = ep3_decisions_event.3200.d # trigger = { exists = scope:pf_4 } @@ -3205,7 +3208,7 @@ ep3_decisions_event.2090 = { # if = { # limit = { scope:pf_4.house_head = { is_ai = yes } } # trigger_event = { -# id = ep3_decisions_event.3201 +# id = ep3_decisions_event.3201 # days = 5 # } # } @@ -3226,7 +3229,7 @@ ep3_decisions_event.2090 = { # } # } # } -# +# # option = { # name = ep3_decisions_event.3200.e # trigger = { exists = scope:pf_5 } @@ -3238,7 +3241,7 @@ ep3_decisions_event.2090 = { # if = { # limit = { scope:pf_5.house_head = { is_ai = yes } } # trigger_event = { -# id = ep3_decisions_event.3201 +# id = ep3_decisions_event.3201 # days = 5 # } # } @@ -3286,7 +3289,7 @@ ep3_decisions_event.3201 = { } animation = war_over_tie } - + trigger = { scope:imprisoned_house_head = { is_alive = yes @@ -3311,7 +3314,7 @@ ep3_decisions_event.3201 = { type = liege_favour_strong_hook } } - + scope:imprisoned_house_head = { if = { limit = { @@ -3320,10 +3323,10 @@ ep3_decisions_event.3201 = { has_trait = vengeful has_trait = wrathful has_trait = ambitious - + # And not already be loyal has_trait = loyal - + # And not be a rival NOT = { has_relation_rival = root } } @@ -3566,7 +3569,7 @@ scripted_trigger ask_help_valid_for_crusades_trigger = { NOT = { exists = var:variable_first_ghw_cooldown } } } - scope:pope = { + scope:pope = { is_imprisoned = no faith = { has_doctrine_parameter = great_holy_wars_active @@ -3928,7 +3931,7 @@ scripted_effect ask_help_crusade_setup_effect = { #If no Claimant or Title Holder is available to be the Papal choice and the Crusade has not proceeded far enough to have a favoritebeneficiary, select a fallback Recipient so that the CB's tooltip does not appear incomplete. if = { #Random Courtier in the Pope's court. limit = { - NOT = { exists = faith.great_holy_war.ghw_title_recipient } + NOT = { exists = scope:the_faith.great_holy_war.ghw_title_recipient } exists = scope:ghw_sponsor exists = scope:the_faith.great_holy_war scope:ghw_sponsor = { @@ -3947,7 +3950,7 @@ scripted_effect ask_help_crusade_setup_effect = { scope:ghw_sponsor = { random_courtier = { alternative_limit = { - scope:the_faith = { has_doctrine = doctrine_gender_male_dominated } + scope:the_faith = { main_rite = { rite_has_doctrine = doctrine_gender_male_dominated } } is_male = yes is_adult = yes is_ai = yes @@ -3959,7 +3962,7 @@ scripted_effect ask_help_crusade_setup_effect = { faith = scope:the_faith } alternative_limit = { - scope:the_faith = { has_doctrine = doctrine_gender_female_dominated } + scope:the_faith = { main_rite = { rite_has_doctrine = doctrine_gender_female_dominated } } is_female = yes is_adult = yes is_ai = yes @@ -3987,7 +3990,7 @@ scripted_effect ask_help_crusade_setup_effect = { } else_if = { #Else Generate a fallback recipient. limit = { - NOT = { exists = faith.great_holy_war.ghw_title_recipient } + NOT = { exists = scope:the_faith.great_holy_war.ghw_title_recipient } } create_character = { location = scope:ghw_sponsor.capital_province @@ -3998,13 +4001,13 @@ scripted_effect ask_help_crusade_setup_effect = { gender_female_chance = { if = { limit = { - scope:the_faith = { has_doctrine = doctrine_gender_male_dominated } + scope:the_faith = { main_rite = { rite_has_doctrine = doctrine_gender_male_dominated } } } add = 0 } else_if = { limit = { - scope:the_faith = { has_doctrine = doctrine_gender_female_dominated } + scope:the_faith = { main_rite = { rite_has_doctrine = doctrine_gender_female_dominated } } } add = 100 } @@ -4064,7 +4067,7 @@ scripted_effect ask_help_crusade_setup_effect = { } every_faith_holy_order = { trigger_event = { - #Holy orders always join + #Military Orders always join id = great_holy_war.0090 days = { 30 60 } } @@ -4093,7 +4096,7 @@ scripted_effect ask_help_crusade_setup_effect = { faith = { every_faith_holy_order = { trigger_event = { - # Holy orders always join + # Military Orders always join id = great_holy_war.0091 days = { 30 60 } } @@ -4258,7 +4261,7 @@ ep3_decisions_event.4020 = { desc = ep3_decisions_event.4020.desc theme = emperor override_background = { reference = ep3_hagia_sophia } - + left_portrait = { character = root animation = prayer @@ -4304,7 +4307,7 @@ ep3_decisions_event.4020 = { } random_list = { 25 = { - trigger = { NOT = { root.faith = { has_doctrine_parameter = clergy_must_be_female } } } + trigger = { NOT = { root.rite = { rite_has_parameter = clergy_must_be_female } } } create_character = { location = root.location name = "Kyrillos" @@ -4314,7 +4317,7 @@ ep3_decisions_event.4020 = { } } 25 = { - trigger = { NOT = { root.faith = { has_doctrine_parameter = clergy_must_be_female } } } + trigger = { NOT = { root.rite = { rite_has_parameter = clergy_must_be_female } } } create_character = { location = root.location name = "Methodios" @@ -4324,7 +4327,7 @@ ep3_decisions_event.4020 = { } } 25 = { - trigger = { NOT = { root.faith = { has_doctrine_parameter = clergy_must_be_female } } } + trigger = { NOT = { root.rite = { rite_has_parameter = clergy_must_be_female } } } create_character = { location = root.location name = "Konstantinos" @@ -4334,7 +4337,7 @@ ep3_decisions_event.4020 = { } } 25 = { - trigger = { NOT = { root.faith = { has_doctrine_parameter = clergy_must_be_female } } } + trigger = { NOT = { root.rite = { rite_has_parameter = clergy_must_be_female } } } create_character = { location = root.location name = "Michael" @@ -4344,7 +4347,7 @@ ep3_decisions_event.4020 = { } } 25 = { - trigger = { NOT = { root.faith = { has_doctrine_parameter = clergy_must_be_male } } } + trigger = { NOT = { root.rite = { rite_has_parameter = clergy_must_be_male } } } create_character = { location = root.location template = ep3_evangelizer_template @@ -4420,7 +4423,7 @@ ep3_decisions_event.4022 = { title = ep3_decisions_event.4020.t desc = ep3_decisions_event.4022.desc theme = emperor - + trigger = { scope:evangelizer = { is_alive = yes } } @@ -4444,7 +4447,7 @@ ep3_decisions_event.4022 = { } set_character_faith_with_conversion = scope:evangelizer.faith if = { - limit = { + limit = { scope:evangelizer.faith = { has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } @@ -4473,7 +4476,7 @@ ep3_decisions_event.4022 = { participants = { missionary = scope:evangelizer pagan = scope:pagan } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain content = major_stress_impact_gain craven = medium_stress_impact_gain @@ -4504,7 +4507,7 @@ ep3_decisions_event.4022 = { scope:title_to_convert = { set_variable = do_not_disturb_preachers } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain calm = major_stress_impact_gain gregarious = medium_stress_impact_gain @@ -4557,7 +4560,7 @@ ep3_decisions_event.4023 = { title = ep3_decisions_event.4023.t desc = ep3_decisions_event.4023.desc theme = emperor - + trigger = { scope:evangelizer = { is_alive = yes } } @@ -5037,7 +5040,7 @@ ep3_decisions_event.4050 = { } animation = war_over_tie } - + right_portrait = { character = scope:head_of_faith triggered_animation = { @@ -5068,12 +5071,12 @@ ep3_decisions_event.4050 = { years = 15 } } - + option = { name = ep3_decisions_event.4050.b add_legitimacy = major_legitimacy_gain } - + option = { name = ep3_decisions_event.4050.c trigger = { @@ -5176,14 +5179,7 @@ ep3_decisions_event.4060 = { immediate = { show_as_tooltip = { - switch = { - trigger = has_government - japan_administrative_government = { change_government = japan_administrative_government } - celestial_government = { change_government = celestial_government } - meritocratic_government = { change_government = meritocratic_government } - steppe_admin_government = { change_government = steppe_admin_government } - fallback = { change_government = administrative_government } - } + change_government = government_type if = { limit = { NOT = { has_character_flag = latin_emp_force_admin_flag } @@ -5199,25 +5195,18 @@ ep3_decisions_event.4060 = { # Adopting vassal tooltip every_powerful_vassal = { limit = { has_same_government = root } - switch = { - trigger = has_government - japan_administrative_government = { change_government = japan_administrative_government } - celestial_government = { change_government = celestial_government } - meritocratic_government = { change_government = meritocratic_government } - steppe_admin_government = { change_government = steppe_admin_government } - fallback = { change_government = administrative_government } - } + change_government = government_type } } hidden_effect = { ordered_vassal = { limit = { NOR = { - government_has_flag = government_is_theocracy + government_has_flag = government_is_theocracy government_has_flag = government_is_republic government_has_flag = government_is_landless_adventurer government_has_flag = government_is_tribal - government_has_flag = government_is_administrative + government_has_mechanic = administrative } primary_title = { target_is_de_jure_liege_or_above = scope:administrative_liege.primary_title #We only auto convert de jure vassals @@ -5229,16 +5218,16 @@ ep3_decisions_event.4060 = { ordered_vassal = { limit = { NOR = { - government_has_flag = government_is_theocracy + government_has_flag = government_is_theocracy government_has_flag = government_is_republic government_has_flag = government_is_landless_adventurer government_has_flag = government_is_tribal - government_has_flag = government_is_administrative + government_has_mechanic = administrative primary_title = { target_is_de_jure_liege_or_above = scope:administrative_liege.primary_title #We only auto convert de jure vassals } } - faith = scope:administrative_liege.faith #The future state faith + rite = scope:administrative_liege.rite #The future state rite } order_by = sub_realm_size position = 0 @@ -5247,15 +5236,15 @@ ep3_decisions_event.4060 = { ordered_vassal = { limit = { NOR = { - government_has_flag = government_is_theocracy + government_has_flag = government_is_theocracy government_has_flag = government_is_republic government_has_flag = government_is_landless_adventurer government_has_flag = government_is_tribal - government_has_flag = government_is_administrative + government_has_mechanic = administrative primary_title = { target_is_de_jure_liege_or_above = scope:administrative_liege.primary_title #We only auto convert de jure vassals } - faith = scope:administrative_liege.faith #The future state faith + rite = scope:administrative_liege.rite #The future state rite } } order_by = sub_realm_size @@ -5319,25 +5308,25 @@ ep3_decisions_event.4065 = { limit = { tgp_mongol_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (Could be Counts, could be Barons) limit = { tgp_mongol_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (could be Barons) limit = { tgp_mongol_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (could be Barons) limit = { tgp_mongol_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes } } @@ -5352,25 +5341,25 @@ ep3_decisions_event.4065 = { limit = { ep3_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (Could be Counts, could be Barons) limit = { ep3_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (could be Barons) limit = { ep3_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes every_vassal = { #Everyone below also converts (could be Barons) limit = { ep3_vassal_will_become_admin = yes #We still don't want mayors and bishops is_ai = yes - } + } change_to_administrative_effect = yes } } @@ -5422,12 +5411,8 @@ ep3_decisions_event.4070 = { animation = personality_bold } immediate = { - show_as_tooltip = { - if = { - limit = { ep3_is_clan_inclined_trigger = yes } - change_government = clan_government - } - else = { change_government = feudal_government } + show_as_tooltip = { + assign_feudal_governments_effect = yes } } option = { @@ -5445,12 +5430,8 @@ ep3_decisions_event.4075 = { animation = personality_rational } immediate = { - show_as_tooltip = { - if = { - limit = { ep3_is_clan_inclined_trigger = yes } - change_government = clan_government - } - else = { change_government = feudal_government } + show_as_tooltip = { + assign_feudal_governments_effect = yes } } #You are now a king! ... or duke. Or count? @@ -5700,7 +5681,7 @@ ep3_decisions_event.7000 = { } else_if = { limit = { - NOT = { has_trait = ill } + NOT = { has_trait = ill } location = { OR = { terrain = floodplains @@ -6139,11 +6120,11 @@ ep3_decisions_event.4090 = { animation = scheme } lower_left_portrait = scope:new_governor - + immediate = { liege = { save_scope_as = liege } #For loc } - + option = { name = ep3_decisions_event.4090.a name = { @@ -6152,7 +6133,7 @@ ep3_decisions_event.4090 = { } text = ep3_decisions_event.4090.a_merit } - + if = { limit = { involved_activity ?= { @@ -6258,7 +6239,7 @@ ep3_decisions_event.5001 = { reference = legend_glow } override_background = { reference = ce1_legendary_spring } - + immediate = { dummy_opposite_gender_effect = { TARGET = root } hidden_effect_new_object = { @@ -6313,26 +6294,27 @@ ep3_decisions_event.5001 = { order_by = sum_of_all_skills_value save_scope_as = adoring_fan } - } + } else = { create_character = { location = root.location template = ep3_common_fan_character gender_female_chance = root_faith_dominant_gender_adjusted_female_chance faith = root.capital_county.faith + rite = root.capital_county.rite culture = root.capital_county.culture save_scope_as = adoring_fan } } } - + option = { # Are you into protecting peasants name = ep3_decisions_event.5001.a add_character_modifier = { # Permanent modifier = ep3_valiant_knight_modifier } - - stress_impact = { + + stress_and_fulfillment_impact = { seducer = major_stress_impact_gain rakish = major_stress_impact_gain lustful = medium_stress_impact_gain @@ -6351,15 +6333,15 @@ ep3_decisions_event.5001 = { } } } - + option = { #...or are you into saving ladies name = ep3_decisions_event.5001.b custom_tooltip = ep3_courteous_knight_var_tt add_character_modifier = { # Permanent modifier = ep3_courteous_knight_modifier } - - stress_impact = { + + stress_and_fulfillment_impact = { celibate = major_stress_impact_gain chaste = medium_stress_impact_gain just = medium_stress_impact_gain @@ -6378,16 +6360,16 @@ ep3_decisions_event.5001 = { } } } - + after = { disburse_knight_errant_decision_rewards_effect = yes trigger_event = { # We give you a Legendary Sighting - also added to the regular event triggers so if it doesn't trigger here it will eventually id = hunt.2510 - days = { 30 90 } + days = { 30 90 } } trigger_event = { # Someone from your family may take an interest in you - also added to the laamp on_action, so if it doesn't trigger here it will eventually id = ep3_decisions_event.5002 - days = { 30 90 } + days = { 30 90 } } } } @@ -6431,7 +6413,7 @@ ep3_decisions_event.5002 = { character = scope:my_rival animation = disapproval } - + trigger = { is_available = yes is_landed = no @@ -6440,7 +6422,7 @@ ep3_decisions_event.5002 = { } NOT = { has_variable = had_ep3_decisions_event_5002 } } - + immediate = { set_variable = had_ep3_decisions_event_5002 # We try to find someone that doesn't like you @@ -6454,7 +6436,7 @@ ep3_decisions_event.5002 = { add = 50 has_relation_rival = root } - modifier = { + modifier = { add = 25 has_relation_potential_rival = root } @@ -6465,7 +6447,7 @@ ep3_decisions_event.5002 = { value <= -25 } } - modifier = { + modifier = { add = 25 is_landed = yes } @@ -6473,7 +6455,7 @@ ep3_decisions_event.5002 = { save_scope_as = my_rival } } - + option = { # You got a point name = ep3_decisions_event.5002.a custom_tooltip = { @@ -6487,7 +6469,7 @@ ep3_decisions_event.5002 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain wrathful = major_stress_impact_gain } @@ -6501,7 +6483,7 @@ ep3_decisions_event.5002 = { } } } - + option = { # Screw you name = ep3_decisions_event.5002.b if = { @@ -6517,7 +6499,7 @@ ep3_decisions_event.5002 = { modifier = ep3_black_sheep years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_loss wrathful = major_stress_impact_loss calm = medium_stress_impact_gain @@ -6619,7 +6601,7 @@ ep3_decisions_event.5010 = { title = ep3_decisions_event.5010.t desc = ep3_decisions_event.5010.desc theme = administrative - + left_portrait = { character = scope:mediocre_eunuch animation = happiness @@ -6651,6 +6633,7 @@ ep3_decisions_event.5010 = { age = { 16 65 } culture = root.location.culture faith = root.location.faith + rite = root.location.rite random_traits_list = { count = 1 education_diplomacy_1 = {} @@ -6697,6 +6680,7 @@ ep3_decisions_event.5010 = { age = { 16 65 } culture = root.culture faith = root.faith + rite = root.rite random_traits_list = { count = 1 education_diplomacy_3 = {} @@ -6723,7 +6707,7 @@ ep3_decisions_event.5010 = { } } - option = { + option = { name = ep3_decisions_event.5010.a pay_treasury_or_gold = { target = scope:mediocre_eunuch @@ -6762,7 +6746,7 @@ ep3_decisions_event.5020 = { } } theme = faith - + left_portrait = { character = root animation = scheme @@ -6773,15 +6757,15 @@ ep3_decisions_event.5020 = { every_realm_county = { limit = { OR = { - faith = { - faith_is_interesting_heresy_to_state_faith_trigger = yes + rite = { + rite_is_interesting_heresy_to_state_rite_trigger = yes } any_neighboring_county = { holder.top_liege ?= { this != root.top_liege } - faith = { - faith_is_interesting_heresy_to_state_faith_trigger = yes + rite = { + rite_is_interesting_heresy_to_state_rite_trigger = yes } } } @@ -6791,21 +6775,21 @@ ep3_decisions_event.5020 = { holder.top_liege ?= { this != root.top_liege } - faith = { - faith_is_interesting_heresy_to_state_faith_trigger = yes + rite = { + rite_is_interesting_heresy_to_state_rite_trigger = yes } } - faith = { + rite = { add_to_list = available_heresies } } if = { limit = { - faith = { - faith_is_interesting_heresy_to_state_faith_trigger = yes + rite = { + rite_is_interesting_heresy_to_state_rite_trigger = yes } } - faith = { + rite = { add_to_list = available_heresies } } @@ -6813,14 +6797,14 @@ ep3_decisions_event.5020 = { } ordered_in_list = { list = available_heresies - order_by = num_county_followers + order_by = num_rite_county_followers position = 0 save_scope_as = heresy_1 } ordered_in_list = { list = available_heresies limit = { this != scope:heresy_1 } - order_by = num_county_followers + order_by = num_rite_county_followers position = 0 save_scope_as = heresy_2 } @@ -6830,30 +6814,40 @@ ep3_decisions_event.5020 = { this != scope:heresy_1 this != scope:heresy_2 } - order_by = num_county_followers + order_by = num_rite_county_followers position = 0 save_scope_as = heresy_3 } } - option = { + option = { name = ep3_decisions_event.5020.a - set_character_faith_with_conversion = scope:heresy_1 + set_character_rite_with_conversion = scope:heresy_1 if = { - limit = { - scope:heresy_1 = { has_doctrine = doctrine_monotheist } + limit = { + scope:heresy_1 = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } add_heresiarch_trait_effect = yes # Otherwise the conversion event will remove the trait - add_character_flag = converted_by_heresy_decision + add_character_flag = { + flag = converted_by_heresy_decision + years = 10 + } + # TIT-56457: block the Adopt State Faith decision for a while so embracing cannot be undone for free + hidden_effect = { + add_character_flag = { + flag = embraced_heresy_recently + years = 10 + } + } scope:heresy_1 = { save_scope_as = heresy } custom_tooltip = unlocks_demand_state_faith_decision top_liege ?= { every_vassal = { limit = { - faith = scope:heresy_1 + rite = scope:heresy_1 } root = { if = { @@ -6883,22 +6877,32 @@ ep3_decisions_event.5020 = { trigger = { exists = scope:heresy_2 } - set_character_faith_with_conversion = scope:heresy_2 + set_character_rite_with_conversion = scope:heresy_2 if = { - limit = { - scope:heresy_2 = { has_doctrine = doctrine_monotheist } + limit = { + scope:heresy_2 = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } add_heresiarch_trait_effect = yes # Otherwise the conversion event will remove the trait - add_character_flag = converted_by_heresy_decision + add_character_flag = { + flag = converted_by_heresy_decision + years = 10 + } + # TIT-56457: block the Adopt State Faith decision for a while so embracing cannot be undone for free + hidden_effect = { + add_character_flag = { + flag = embraced_heresy_recently + years = 10 + } + } scope:heresy_2 = { save_scope_as = heresy } custom_tooltip = unlocks_demand_state_faith_decision top_liege ?= { every_vassal = { limit = { - faith = scope:heresy_2 + rite = scope:heresy_2 } root = { if = { @@ -6928,22 +6932,32 @@ ep3_decisions_event.5020 = { trigger = { exists = scope:heresy_3 } - set_character_faith_with_conversion = scope:heresy_3 + set_character_rite_with_conversion = scope:heresy_3 if = { - limit = { - scope:heresy_3 = { has_doctrine = doctrine_monotheist } + limit = { + scope:heresy_3 = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } add_heresiarch_trait_effect = yes # Otherwise the conversion event will remove the trait - add_character_flag = converted_by_heresy_decision + add_character_flag = { + flag = converted_by_heresy_decision + years = 10 + } + # TIT-56457: block the Adopt State Faith decision for a while so embracing cannot be undone for free + hidden_effect = { + add_character_flag = { + flag = embraced_heresy_recently + years = 10 + } + } scope:heresy_3 = { save_scope_as = heresy } custom_tooltip = unlocks_demand_state_faith_decision top_liege ?= { every_vassal = { limit = { - faith = scope:heresy_3 + rite = scope:heresy_3 } root = { if = { @@ -6991,7 +7005,7 @@ ep3_decisions_event.5021 = { title = ep3_decisions_event.5021.t desc = ep3_decisions_event.5021.desc theme = faith - + left_portrait = { character = root animation = shock @@ -7010,7 +7024,10 @@ ep3_decisions_event.5021 = { title = ep3_decisions_event.5021.a.tt left_icon = root root = { - primary_title = { set_state_faith = scope:heresy } + primary_title = { + set_state_rite = scope:heresy + pam_tenet_popularity_boost_rite_effect = { RITE = state_rite } + } add_opinion = { target = scope:heretic modifier = forced_state_heresy_opinion @@ -7042,7 +7059,7 @@ ep3_decisions_event.5021 = { scope:heretic = { domicile ?= { has_domicile_parameter = more_successful_heresies - location.county.faith = scope:heretic.faith + domicile_location.county.rite = scope:heretic.rite } } add = 25 @@ -7059,11 +7076,14 @@ ep3_decisions_event.5021 = { title = ep3_decisions_event.5021.a.tt left_icon = root root = { - primary_title = { set_state_faith = scope:heresy } - set_character_faith_with_conversion = scope:heresy + primary_title = { + set_state_rite = scope:heresy + pam_tenet_popularity_boost_rite_effect = { RITE = state_rite } + } + set_character_rite_with_conversion = scope:heresy if = { - limit = { - scope:heresy = { has_doctrine = doctrine_monotheist } + limit = { + scope:heresy = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } @@ -7102,7 +7122,7 @@ ep3_decisions_event.5021 = { scope:heretic = { domicile ?= { has_domicile_parameter = more_successful_heresies - location.county.faith = scope:heretic.faith + domicile_location.county.rite = scope:heretic.rite } } add = 15 @@ -7227,7 +7247,7 @@ ep3_decisions_event.6001 = { animation = admiration } lower_right_portrait = scope:liege - + immediate = { location.county = { save_scope_as = county } save_scope_as = laamp @@ -7264,7 +7284,7 @@ ep3_decisions_event.6001 = { } } } - + option = { # Go to war NOW name = ep3_decisions_event.6001.a set_variable = separatist_uprising_decision_var @@ -7281,7 +7301,7 @@ ep3_decisions_event.6001 = { name = culture_separatists levies = { value = 500 - multiply = { + multiply = { value = scope:liege.primary_title.tier } } @@ -7293,7 +7313,7 @@ ep3_decisions_event.6001 = { name = culture_separatists levies = { value = 500 - multiply = { + multiply = { value = scope:liege.primary_title.tier } } @@ -7337,7 +7357,7 @@ ep3_decisions_event.6001 = { claimant = root target_title = location.duchy } - stress_impact = { + stress_and_fulfillment_impact = { calm = major_stress_impact_gain craven = major_stress_impact_gain } @@ -7368,14 +7388,14 @@ ep3_decisions_event.6001 = { # } } } - + option = { # Just the claim pls name = ep3_decisions_event.6001.b set_variable = separatist_uprising_decision_var add_gold = major_gold_value add_pressed_claim = location.duchy - - stress_impact = { + + stress_and_fulfillment_impact = { celibate = major_stress_impact_gain chaste = medium_stress_impact_gain just = medium_stress_impact_gain @@ -7393,7 +7413,7 @@ ep3_decisions_event.6001 = { # } } } - + option = { # Pacifist route name = ep3_decisions_event.6001.c show_as_unavailable = { always = yes } # We let you know that this route exists @@ -7491,8 +7511,8 @@ ep3_decisions_event.6001 = { base = 1 modifier = { add = 100 - NOR = { - holder.primary_title = this + NOR = { + holder.primary_title = this holder.capital_county = this } } @@ -7578,7 +7598,7 @@ ep3_decisions_event.6001 = { liege = root change = scope:heir_change2 } - resolve_title_and_vassal_change = scope:heir_change2 + resolve_title_and_vassal_change = scope:heir_change2 } every_courtier = { set_variable = { @@ -7588,7 +7608,10 @@ ep3_decisions_event.6001 = { add_trait = adventurer_follower } } - add_pressed_claim = scope:kingdom_title + if = { + limit = { exists = scope:kingdom_title } + add_pressed_claim = scope:kingdom_title + } # Messages for nearby players create_landed_ruler_message_effect = { LANDED = root @@ -7596,7 +7619,7 @@ ep3_decisions_event.6001 = { FLAVOR_TITLE = scope:new_primary_title REASON = flag:culture_champion } - stress_impact = { + stress_and_fulfillment_impact = { celibate = major_stress_impact_gain chaste = medium_stress_impact_gain just = medium_stress_impact_gain @@ -7619,7 +7642,7 @@ ep3_decisions_event.6001 = { # } } } - + option = { # Let me think about it name = ep3_decisions_event.6001.d hidden_effect = { @@ -7657,7 +7680,7 @@ ep3_decisions_event.6002 = { animation = celebrate_sword } lower_right_portrait = scope:defender - + option = { # Wahoo name = ep3_decisions_event.6002.a if = { @@ -7674,7 +7697,7 @@ ep3_decisions_event.6002 = { limit = { has_character_modifier = ep3_master_todor_modifier } remove_character_modifier = ep3_master_todor_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss ambitious = medium_stress_impact_loss } @@ -7708,7 +7731,7 @@ ep3_decisions_event.9001 = { trigger = { location = { #only ice-fish if water is frozen - has_province_modifier = winter_harsh_modifier + has_province_modifier = winter_harsh_modifier } } @@ -7724,7 +7747,7 @@ ep3_decisions_event.9001 = { trigger = { exists = scope:rain_day } - reference = rain + reference = rain } left_portrait = { @@ -7754,7 +7777,7 @@ ep3_decisions_event.9001 = { option = { # Fish alone name = ep3_decisions_event.9001.a - stress_impact = { + stress_and_fulfillment_impact = { reclusive = minor_stress_impact_loss } @@ -7772,7 +7795,7 @@ ep3_decisions_event.9001 = { exists = scope:potential_friend } name = ep3_decisions_event.9001.b - + scope:potential_friend = { add_opinion = { target = root @@ -7780,7 +7803,7 @@ ep3_decisions_event.9001 = { opinion = 10 } } - + ai_chance = { base = 1 } @@ -7814,7 +7837,7 @@ ep3_decisions_event.9001 = { remove_short_term_gold = minor_gold_value custom_tooltip = ep3_decisions_event.9001.c.tt - + ai_chance = { base = 1 } @@ -7823,7 +7846,7 @@ ep3_decisions_event.9001 = { } } -ep3_decisions_event.9010 = { # Fish Alone +ep3_decisions_event.9010 = { # Fish Alone type = character_event title = ep3_decisions_event.9010.t desc = { @@ -7836,7 +7859,7 @@ ep3_decisions_event.9010 = { # Fish Alone trigger = { exists = scope:rain_day } - reference = rain + reference = rain } left_portrait = { @@ -7875,7 +7898,7 @@ ep3_decisions_event.9010 = { # Fish Alone type = event_toast_effect_good title = ep3_decisions_event.9030.a.fish left_icon = root - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = medium_stress_impact_loss } @@ -7897,14 +7920,14 @@ ep3_decisions_event.9010 = { # Fish Alone } } name = ep3_decisions_event.9010.b - + random_list = { 99 = { #nothing happens send_interface_toast = { type = event_toast_effect_neutral title = ep3_decisions_event.9010.b.nothing left_icon = root - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss calm = medium_stress_impact_loss } @@ -7915,11 +7938,11 @@ ep3_decisions_event.9010 = { # Fish Alone type = event_toast_effect_good title = ep3_decisions_event.9010.b.trait left_icon = root - add_trait = calm - stress_impact = { + add_trait = calm + stress_and_fulfillment_impact = { base = medium_stress_impact_loss calm = medium_stress_impact_loss - } + } } } } @@ -7943,7 +7966,7 @@ ep3_decisions_event.9020 = { # Fish With Your potential_friend trigger = { exists = scope:rain_day } - reference = rain + reference = rain } left_portrait = { @@ -7961,7 +7984,7 @@ ep3_decisions_event.9020 = { # Fish With Your potential_friend progress_towards_friend_effect = { CHARACTER = scope:potential_friend - OPINION = yes + OPINION = default_friend_opinion REASON = friend_fishing_trip } @@ -7981,14 +8004,14 @@ ep3_decisions_event.9020 = { # Fish With Your potential_friend title = ep3_decisions_event.9030.a.fish left_icon = root right_icon = scope:potential_friend - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = major_stress_impact_loss } domicile = { change_provisions = miniscule_provisions_value } - } + } } } @@ -8028,14 +8051,14 @@ ep3_decisions_event.9020 = { # Fish With Your potential_friend title = ep3_decisions_event.9030.a.fish left_icon = root right_icon = scope:potential_friend - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = major_stress_impact_loss } domicile = { change_provisions = miniscule_provisions_value - } - } + } + } } } @@ -8065,7 +8088,7 @@ ep3_decisions_event.9030 = { # Fish On A Boat, your potential friend will join y trigger = { exists = scope:rain_day } - reference = rain + reference = rain } left_portrait = { @@ -8111,13 +8134,13 @@ ep3_decisions_event.9030 = { # Fish On A Boat, your potential friend will join y title = ep3_decisions_event.9030.a.fish left_icon = root right_icon = scope:potential_friend - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss ambitious = major_stress_impact_loss } domicile = { change_provisions = minor_provisions_value - } + } } } } @@ -8132,10 +8155,10 @@ ep3_decisions_event.9030 = { # Fish On A Boat, your potential friend will join y trigger = { exists = scope:potential_friend } - + progress_towards_friend_effect = { CHARACTER = scope:potential_friend - OPINION = yes + OPINION = default_friend_opinion REASON = friend_fishing_trip } @@ -8157,8 +8180,8 @@ ep3_decisions_event.9030 = { # Fish On A Boat, your potential friend will join y add_stress = minor_stress_impact_loss domicile = { change_provisions = minor_provisions_value - } - } + } + } } } diff --git a/events/dlc/ep3/ep3_emperor_yearly_2.txt b/events/dlc/ep3/ep3_emperor_yearly_2.txt index 336cf36a6..efc8969cb 100644 --- a/events/dlc/ep3/ep3_emperor_yearly_2.txt +++ b/events/dlc/ep3/ep3_emperor_yearly_2.txt @@ -11,6 +11,7 @@ ep3_emperor_yearly.2000 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_byzantine.dds" title = ep3_emperor_yearly.2000.t desc = { desc = ep3_emperor_yearly.2000.desc_intro @@ -560,14 +561,14 @@ ep3_emperor_yearly.2010 = { add_diplomacy_lifestyle_xp = medium_lifestyle_xp if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } change_influence = medium_influence_gain } else = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain deceitful = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -622,7 +623,7 @@ ep3_emperor_yearly.2010 = { years = 40 } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain arrogant = major_stress_impact_gain } @@ -657,7 +658,7 @@ ep3_emperor_yearly.2010 = { modifier = angry_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_gain } ai_chance = { @@ -699,9 +700,9 @@ ep3_emperor_yearly.2020 = { } location = root.location } - has_any_criminal_trait_in_faith_trigger = { + has_any_criminal_trait_in_rite_trigger = { CHARACTER = root - FAITH = root.faith + RITE = root.rite } NOT = { has_character_flag = has_had_ep3_2020 } } @@ -712,7 +713,7 @@ ep3_emperor_yearly.2020 = { random_character_trait = { limit = { save_temporary_scope_as = temp_trait - trait_is_criminal_in_faith_trigger = { TRAIT = scope:temp_trait FAITH = root.faith GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { TRAIT = scope:temp_trait RITE = root.rite GENDER_CHARACTER = root } } save_scope_as = target_criminal_trait } @@ -737,7 +738,7 @@ ep3_emperor_yearly.2020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain cynical = major_stress_impact_gain arrogant = major_stress_impact_gain @@ -779,7 +780,7 @@ ep3_emperor_yearly.2020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain humble = major_stress_impact_gain arrogant = medium_stress_impact_loss @@ -835,9 +836,9 @@ ep3_emperor_yearly.2021 = { trigger = { exists = faith.religious_head this != faith.religious_head - has_any_criminal_trait_in_faith_trigger = { + has_any_criminal_trait_in_rite_trigger = { CHARACTER = root - FAITH = root.faith + RITE = root.rite } } @@ -860,6 +861,10 @@ ep3_emperor_yearly.2021 = { name = ep3_emperor_yearly.2021.a add_legitimacy = minor_legitimacy_gain remove_trait = scope:target_criminal_trait + stress_and_fulfillment_impact = { + zealous = medium_stress_impact_loss + humble = minor_stress_impact_loss + } } } @@ -867,13 +872,13 @@ ep3_emperor_yearly.2021 = { scripted_trigger valid_clergy_gender_trigger = { trigger_if = { limit = { - root.faith = { has_doctrine_parameter = clergy_must_be_male } + root.rite = { rite_has_parameter = clergy_must_be_male } } is_male = yes } trigger_else_if = { limit = { - root.faith = { has_doctrine_parameter = clergy_must_be_female } + root.rite = { rite_has_parameter = clergy_must_be_female } } is_male = no } @@ -1045,7 +1050,7 @@ ep3_emperor_yearly.2030 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain ambitious = minor_stress_impact_loss paranoid = medium_stress_impact_loss @@ -1081,7 +1086,7 @@ ep3_emperor_yearly.2030 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain lazy = major_stress_impact_gain content = major_stress_impact_gain @@ -1132,10 +1137,10 @@ ep3_emperor_yearly.2040 = { trigger = { valid_for_byz_emperor_content_trigger = yes - faith = { + rite = { NOR = { - has_doctrine = doctrine_polygamy - has_doctrine = doctrine_concubines + rite_has_doctrine = doctrine_polygamy + rite_has_doctrine = doctrine_concubines } } exists = faith.religious_head @@ -1243,7 +1248,7 @@ ep3_emperor_yearly.2040 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain content = major_stress_impact_gain ambitious = minor_stress_impact_loss @@ -1290,7 +1295,7 @@ ep3_emperor_yearly.2040 = { modifier = ep3_blessed_union_modifier years = 25 } - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain greedy = major_stress_impact_gain paranoid = minor_stress_impact_gain @@ -1343,7 +1348,7 @@ ep3_emperor_yearly.2040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { shy = major_stress_impact_gain } ai_chance = { @@ -1656,7 +1661,7 @@ ep3_emperor_yearly.2060 = { } custom_tooltip = constantinople_birthday_flag_tt remove_treasury_or_gold = major_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain paranoid = major_stress_impact_gain arrogant = minor_stress_impact_loss @@ -1692,7 +1697,7 @@ ep3_emperor_yearly.2060 = { } custom_tooltip = constantinople_birthday_flag_tt remove_treasury_or_gold = major_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain paranoid = major_stress_impact_gain arrogant = minor_stress_impact_loss @@ -1710,7 +1715,7 @@ ep3_emperor_yearly.2060 = { # Option C: not the right time option = { name = ep3_emperor_yearly.2060.c - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain ambitious = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -1779,7 +1784,7 @@ ep3_emperor_yearly.2070 = { holder.top_liege = { is_ai = yes } } #Admin only - government_allows = administrative + government_has_mechanic = administrative #Admin Emperor top_liege = this } @@ -1831,6 +1836,7 @@ ep3_emperor_yearly.2070 = { template = ambassador_template location = root.location faith = scope:giraffe_county.faith + rite = scope:giraffe_county.rite culture = scope:giraffe_county.culture gender_female_chance = 50 save_scope_as = ambassador @@ -1863,7 +1869,7 @@ ep3_emperor_yearly.2070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain gregarious = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -1972,7 +1978,7 @@ ep3_emperor_yearly.2070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain just = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -1999,7 +2005,7 @@ ep3_emperor_yearly.2070 = { name = ep3_emperor_yearly.2070.c flavor = ep3_emperor_yearly.2070.c.tt add_treasury_or_gold = minor_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -2079,7 +2085,7 @@ ep3_emperor_yearly.2080 = { trigger = { has_ep3_dlc_trigger = yes #Only admin systems tolerate education as a mean for social advancement - government_allows = administrative + government_has_mechanic = administrative #Emperor top_liege = this #Not ongoing in the same capital @@ -2165,7 +2171,7 @@ ep3_emperor_yearly.2080 = { years = 5 } remove_treasury_or_gold = medium_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain arrogant = medium_stress_impact_gain lazy = minor_stress_impact_gain @@ -2182,7 +2188,7 @@ ep3_emperor_yearly.2080 = { # Option B: opt out option = { name = ep3_emperor_yearly.2080.b - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain diligent = medium_stress_impact_gain just = medium_stress_impact_gain @@ -2368,7 +2374,7 @@ ep3_emperor_yearly.2090 = { add_character_flag = famous_mime_control } custom_tooltip = ep3_emperor_yearly.2090.a.tt - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain callous = medium_stress_impact_gain vengeful = minor_stress_impact_gain @@ -2394,7 +2400,7 @@ ep3_emperor_yearly.2090 = { add_character_flag = famous_mime_court } custom_tooltip = ep3_emperor_yearly.2090.b.tt - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain compassionate = minor_stress_impact_gain gregarious = minor_stress_impact_gain @@ -2410,7 +2416,7 @@ ep3_emperor_yearly.2090 = { # Option C: opt out option = { name = ep3_emperor_yearly.2090.c - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -2471,7 +2477,7 @@ ep3_emperor_yearly.2100 = { cooldown = { years = 15 } trigger = { - government_allows = administrative + government_has_mechanic = administrative top_liege = this any_neighboring_top_liege_realm_owner = { is_ai = yes @@ -2592,7 +2598,7 @@ ep3_emperor_yearly.2100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain honest = medium_stress_impact_gain diligent = medium_stress_impact_gain @@ -2627,7 +2633,7 @@ ep3_emperor_yearly.2100 = { opinion = 30 } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain callous = medium_stress_impact_gain arrogant = major_stress_impact_gain @@ -2705,7 +2711,7 @@ ep3_emperor_yearly.2110 = { has_ep3_dlc_trigger = yes has_tgp_dlc_trigger = yes } - government_allows = administrative + government_has_mechanic = administrative top_liege = this any_realm_county = { culture != root.capital_county.culture @@ -2727,6 +2733,7 @@ ep3_emperor_yearly.2110 = { root.capital_county.culture = { save_scope_as = capital_culture } random_realm_county = { limit = { + is_landless_type_title = no culture != scope:capital_culture } save_scope_as = provincial_county @@ -2777,6 +2784,7 @@ ep3_emperor_yearly.2110 = { template = good_merchant_template culture = scope:provincial_culture faith = scope:provincial_county.faith + rite = scope:provincial_county.rite save_scope_as = merchant } hidden_effect = { @@ -2810,14 +2818,14 @@ ep3_emperor_yearly.2110 = { } scope:merchant = { hidden_effect = { - move_to_pool_at = scope:provincial_county + move_to_pool_at = scope:provincial_county.title_province } } #Governor scope:provincial_county.duchy.holder = { hidden_effect = { add_courtier = scope:merchant } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain arbitrary = medium_stress_impact_gain } @@ -2849,7 +2857,7 @@ ep3_emperor_yearly.2110 = { target = scope:merchant value = minor_treasury_or_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_gain greedy = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -2871,7 +2879,7 @@ ep3_emperor_yearly.2110 = { name = ep3_emperor_yearly.2110.c add_prestige = minor_prestige_gain scope:merchant = { add_character_flag = unused } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain compassionate = minor_stress_impact_gain diligent = medium_stress_impact_gain @@ -3032,7 +3040,7 @@ ep3_emperor_yearly.2120 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain temperate = medium_stress_impact_gain content = medium_stress_impact_gain @@ -3075,7 +3083,7 @@ ep3_emperor_yearly.2120 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain ambitious = medium_stress_impact_gain fickle = medium_stress_impact_gain @@ -3100,7 +3108,7 @@ ep3_emperor_yearly.2120 = { # Option C: opt out option = { name = ep3_emperor_yearly.2120.c - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain } ai_chance = { @@ -3148,7 +3156,7 @@ ep3_emperor_yearly.2130 = { cooldown = { years = 10 } trigger = { - government_allows = administrative + government_has_mechanic = administrative top_liege = this any_prisoner = { is_in_prison_type = house_arrest @@ -3199,7 +3207,7 @@ ep3_emperor_yearly.2130 = { } } change_influence = minor_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_loss compassionate = major_stress_impact_loss just = medium_stress_impact_loss @@ -3221,7 +3229,7 @@ ep3_emperor_yearly.2130 = { name = ep3_emperor_yearly.2130.b trigger = { scope:prisoner = { - government_allows = administrative + government_has_mechanic = administrative is_vassal_or_below_of = root is_landed_or_landless_administrative = yes } @@ -3231,7 +3239,7 @@ ep3_emperor_yearly.2130 = { change_influence = major_influence_loss } change_influence = major_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain forgiving = medium_stress_impact_gain compassionate = major_stress_impact_gain @@ -3264,7 +3272,7 @@ ep3_emperor_yearly.2130 = { text = ep3_emperor_yearly.2130.c.tt add_character_flag = ep3_2130_ex_prisoner } - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain compassionate = major_stress_impact_gain forgiving = medium_stress_impact_gain @@ -3298,7 +3306,7 @@ ep3_emperor_yearly.2130 = { modifier = ep3_mercenaries_from_abroad_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain honest = medium_stress_impact_gain content = medium_stress_impact_gain @@ -3315,7 +3323,7 @@ ep3_emperor_yearly.2130 = { option = { name = ep3_emperor_yearly.2130.e add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } ai_chance = { @@ -3392,7 +3400,7 @@ ep3_emperor_yearly.2140 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain gregarious = medium_stress_impact_gain content = medium_stress_impact_gain @@ -3410,7 +3418,7 @@ ep3_emperor_yearly.2140 = { name = ep3_emperor_yearly.2140.b add_piety = minor_piety_gain change_influence = minor_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { greedy = massive_stress_impact_gain diligent = medium_stress_impact_gain cynical = medium_stress_impact_gain @@ -3521,6 +3529,7 @@ ep3_emperor_yearly.2150 = { has_trait = eccentric has_trait = zealous has_trait = saint + has_trait = herald has_trait = lifestyle_mystic has_nickname = nick_the_stylite has_nickname = nick_the_grazer @@ -3587,6 +3596,10 @@ ep3_emperor_yearly.2150 = { has_trait = saint add = 25 } + modifier = { + has_trait = herald + add = 25 + } modifier = { has_trait = lifestyle_mystic add = 15 @@ -3596,7 +3609,7 @@ ep3_emperor_yearly.2150 = { add = 15 } modifier = { - has_trait = scholar + has_trait = erudite add = 10 } modifier = { @@ -3731,7 +3744,8 @@ ep3_emperor_yearly.2150 = { change_county_control = major_county_control_gain } add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { + zealous = minor_stress_impact_loss cynical = major_stress_impact_gain comfort_eater = medium_stress_impact_gain just = minor_stress_impact_gain @@ -3873,7 +3887,7 @@ ep3_emperor_yearly.2150 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = major_stress_impact_gain arbitrary = major_stress_impact_gain fickle = medium_stress_impact_gain @@ -3908,7 +3922,7 @@ ep3_emperor_yearly.2150 = { increase_governance_effect = { VALUE = 2 } change_influence = miniscule_influence_gain } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain diligent = medium_stress_impact_gain just = minor_stress_impact_gain @@ -4130,7 +4144,7 @@ ep3_emperor_yearly.2160 = { desc = cultural_acceptance_gain_hold_court_event_outcome } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -4202,7 +4216,7 @@ ep3_emperor_yearly.2160 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain gregarious = medium_stress_impact_gain shy = medium_stress_impact_gain @@ -4231,10 +4245,7 @@ ep3_emperor_yearly.2170 = { cooldown = { years = 25 } trigger = { - OR ={ - valid_for_byz_governor_content_trigger = yes - has_tgp_dlc_trigger = yes - } + is_governor_or_admin_count = yes any_sub_realm_county = { OR = { @@ -4316,7 +4327,7 @@ ep3_emperor_yearly.2170 = { limit = { government_has_flag = government_has_influence } change_influence = major_influence_gain } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain paranoid = medium_stress_impact_gain honest = minor_stress_impact_gain @@ -4351,7 +4362,7 @@ ep3_emperor_yearly.2170 = { years = 25 } custom_tooltip = ep3_emperor_yearly.2160.b.tt - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain deceitful = medium_stress_impact_gain trusting = minor_stress_impact_gain @@ -4488,7 +4499,7 @@ ep3_emperor_yearly.2180 = { days = 1 } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain zealous = medium_stress_impact_gain reclusive = major_stress_impact_gain @@ -4506,7 +4517,7 @@ ep3_emperor_yearly.2180 = { option = { name = ep3_emperor_yearly.2180.b add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain gregarious = medium_stress_impact_gain patient = medium_stress_impact_gain @@ -4573,7 +4584,7 @@ ep3_emperor_yearly.2181 = { modifier = ep3_friendly_host_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain paranoid = minor_stress_impact_gain cynical = minor_stress_impact_gain @@ -4619,7 +4630,7 @@ ep3_emperor_yearly.2181 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain greedy = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -4652,7 +4663,7 @@ ep3_emperor_yearly.2181 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain gregarious = medium_stress_impact_gain zealous = medium_stress_impact_gain @@ -4830,7 +4841,7 @@ ep3_emperor_yearly.2190 = { modifier = ruined_me_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain content = medium_stress_impact_gain arbitrary = medium_stress_impact_gain @@ -4878,7 +4889,7 @@ ep3_emperor_yearly.2190 = { } } change_influence = miniscule_influence_loss - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain just = major_stress_impact_gain diligent = medium_stress_impact_gain @@ -4920,7 +4931,7 @@ ep3_emperor_yearly.2190 = { opinion = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain honest = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -4972,7 +4983,7 @@ ep3_emperor_yearly.2200 = { } has_relation_potential_rival = liege has_relation_rival = liege - house_has_feud_relation_with_trigger = { TARGET = liege } + house_has_feud_relation_with_trigger = { TARGET = root.liege } liege = { house_has_feud_relation_with_trigger ={ TARGET = root } } } } @@ -5039,7 +5050,7 @@ ep3_emperor_yearly.2200 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain just = major_stress_impact_gain loyal = major_stress_impact_gain @@ -5069,7 +5080,7 @@ ep3_emperor_yearly.2200 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_gain greedy = minor_stress_impact_gain disloyal = minor_stress_impact_gain @@ -5130,7 +5141,7 @@ ep3_emperor_yearly.2210 = { any_heir_title = { tier > tier_county holder ?= { - government_allows = administrative + government_has_mechanic = administrative has_realm_law_flag = appointment_type_succession } } @@ -5171,7 +5182,7 @@ ep3_emperor_yearly.2210 = { random_heir_title = { limit = { holder ?= { - government_allows = administrative + government_has_mechanic = administrative has_realm_law_flag = appointment_type_succession } tier > tier_county @@ -5264,7 +5275,7 @@ ep3_emperor_yearly.2210 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain cynical = minor_stress_impact_gain loyal = minor_stress_impact_gain @@ -5294,7 +5305,7 @@ ep3_emperor_yearly.2210 = { option = { name = ep3_emperor_yearly.2210.b change_influence = miniscule_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_gain arbitrary = minor_stress_impact_gain eccentric = minor_stress_impact_gain @@ -5343,8 +5354,9 @@ ep3_emperor_yearly.2211 = { } } add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_loss + zealous = medium_stress_impact_loss } ai_chance = { base = 100 @@ -5398,7 +5410,7 @@ ep3_emperor_yearly.2211 = { else = { change_influence = minor_influence_gain } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain } ai_chance = { @@ -5428,7 +5440,8 @@ ep3_emperor_yearly.2211 = { scope:vassal = { change_influence = major_influence_loss } - stress_impact = { + stress_and_fulfillment_impact = { + cynical = minor_stress_impact_loss zealous = major_stress_impact_gain } ai_chance = { @@ -5468,7 +5481,7 @@ ep3_emperor_yearly.2211 = { # Shepherds moved close to a monastery with wives and children scripted_trigger ep3_2220_valid_county_trigger = { - faith = { has_doctrine = tenet_monasticism } + faith = { faith_has_monasticism_trigger = yes } any_county_province = { OR = { has_holding_type = church_holding @@ -5594,7 +5607,7 @@ ep3_emperor_yearly.2220 = { } } add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } ai_chance = { @@ -5615,7 +5628,7 @@ ep3_emperor_yearly.2220 = { } } change_influence = minor_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain } ai_chance = { @@ -5630,7 +5643,7 @@ ep3_emperor_yearly.2220 = { option = { name = ep3_emperor_yearly.2220.c change_influence = miniscule_influence_loss - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = medium_stress_impact_gain } @@ -5718,7 +5731,7 @@ ep3_emperor_yearly.2230 = { add_trait = governor } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain forgiving = major_stress_impact_gain patient = medium_stress_impact_gain @@ -5756,7 +5769,7 @@ ep3_emperor_yearly.2230 = { years = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = major_stress_impact_gain just = major_stress_impact_gain honest = medium_stress_impact_gain @@ -5828,7 +5841,7 @@ ep3_emperor_yearly.2230 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_gain callous = major_stress_impact_gain sadistic = major_stress_impact_gain @@ -5868,7 +5881,12 @@ ep3_emperor_yearly.2230 = { # An obnoxious "scholar" close to you keeps quoting the Classics out of place scripted_trigger ep3_valid_greek_culture_trigger = { - has_cultural_pillar = heritage_greek + OR = { + has_cultural_pillar = heritage_byzantine + has_cultural_pillar = heritage_caucasian + this = culture:greek + any_parent_culture_or_above = { this = culture:greek } + } } scripted_trigger ep3_2240_valid_courtier_trigger = { @@ -5939,8 +5957,8 @@ ep3_emperor_yearly.2240 = { has_ep3_dlc_trigger = yes has_tgp_dlc_trigger = yes } - is_landed_or_landless_administrative = yes - government_allows = administrative + is_landed_or_landless_administrative_or_theocratic = yes + government_has_mechanic = administrative culture = { OR = { has_graphical_east_asia_culture_group_trigger = yes @@ -6032,7 +6050,7 @@ ep3_emperor_yearly.2240 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { dull = major_stress_impact_gain shy = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -6075,7 +6093,7 @@ ep3_emperor_yearly.2240 = { opinion = -25 } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss humble = major_stress_impact_gain calm = major_stress_impact_gain @@ -6107,7 +6125,7 @@ ep3_emperor_yearly.2240 = { # Option C: ignore - opt-out option = { name = ep3_emperor_yearly.2240.c - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } ai_chance = { @@ -6142,10 +6160,10 @@ ep3_emperor_yearly.2300 = { option = { name = ep3_emperor_yearly.2300.a trigger = { - faith != liege.primary_title.state_faith + rite != liege.primary_title.state_rite } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_gain cynical = medium_stress_impact_gain humble = medium_stress_impact_gain @@ -6157,16 +6175,29 @@ ep3_emperor_yearly.2300 = { option = { name = ep3_emperor_yearly.2300.b trigger = { - faith != liege.primary_title.state_faith + rite != liege.primary_title.state_rite + # Gates the conversion rules keep even for the State Rite; shown greyed out when failed + is_adult = yes + custom_tooltip = { + text = NOT_I_AM_HEAD_OF_FAITH_TRIGGER + NOT = { faith.religious_head ?= root } + } + custom_tooltip = { + text = is_antipope_tt + pam_is_antipope_trigger = no + } } - set_character_faith = liege.primary_title.state_faith + show_as_unavailable = { + rite != liege.primary_title.state_rite + } + set_character_rite_with_conversion = liege.primary_title.state_rite if = { limit = { - liege.primary_title.state_faith = { has_doctrine = doctrine_monotheist } + liege.primary_title.state_rite = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain disloyal = major_stress_impact_gain arrogant = major_stress_impact_gain @@ -6178,10 +6209,10 @@ ep3_emperor_yearly.2300 = { option = { name = ep3_emperor_yearly.2300.c trigger = { - faith = liege.primary_title.state_faith + rite = liege.primary_title.state_rite } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_loss loyal = major_stress_impact_loss } @@ -6196,7 +6227,7 @@ ep3_emperor_yearly.2310 = { desc = ep3_emperor_yearly.2310.desc triggered_desc = { trigger = { - faith != top_liege.primary_title.state_faith + rite != top_liege.primary_title.state_rite } desc = ep3_emperor_yearly.2310.desc_you_too } @@ -6206,10 +6237,10 @@ ep3_emperor_yearly.2310 = { trigger = { is_governor = yes government_allows = state_faith - exists = top_liege.primary_title.state_faith - top_liege.faith = top_liege.primary_title.state_faith + exists = top_liege.primary_title.state_rite + top_liege.rite = top_liege.primary_title.state_rite any_sub_realm_county = { - faith != root.top_liege.primary_title.state_faith + rite != root.top_liege.primary_title.state_rite } top_liege = { is_ai = yes } } @@ -6219,7 +6250,7 @@ ep3_emperor_yearly.2310 = { cp:councillor_court_chaplain ?= { save_scope_as = chaplain } random_sub_realm_county = { limit = { - faith != root.top_liege.primary_title.state_faith + rite != root.top_liege.primary_title.state_rite } weight = { base = 1 @@ -6237,7 +6268,7 @@ ep3_emperor_yearly.2310 = { name = ep3_emperor_yearly.2310.a trigger = { exists = scope:chaplain - scope:chaplain.faith = root.top_liege.primary_title.state_faith + scope:chaplain.rite = root.top_liege.primary_title.state_rite } scope:chaplain = { set_council_task = { @@ -6253,7 +6284,7 @@ ep3_emperor_yearly.2310 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain lazy = medium_stress_impact_gain disloyal = medium_stress_impact_gain @@ -6282,7 +6313,7 @@ ep3_emperor_yearly.2310 = { option = { name = ep3_emperor_yearly.2310.b trigger = { - faith != top_liege.primary_title.state_faith + rite != top_liege.primary_title.state_rite } add_piety = medium_piety_gain scope:liege_loc = { @@ -6292,7 +6323,7 @@ ep3_emperor_yearly.2310 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { loyal = major_stress_impact_gain zealous = major_stress_impact_loss } @@ -6313,17 +6344,17 @@ ep3_emperor_yearly.2310 = { option = { name = ep3_emperor_yearly.2310.c trigger = { - faith != top_liege.primary_title.state_faith + rite != top_liege.primary_title.state_rite } - set_character_faith = top_liege.primary_title.state_faith + set_character_rite_with_conversion = top_liege.primary_title.state_rite if = { limit = { - top_liege.primary_title.state_faith = { has_doctrine = doctrine_monotheist } + top_liege.primary_title.state_rite = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } change_influence = medium_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain disloyal = major_stress_impact_gain arrogant = major_stress_impact_gain @@ -6353,7 +6384,7 @@ ep3_emperor_yearly.2310 = { option = { name = ep3_emperor_yearly.2310.d trigger = { - faith = top_liege.primary_title.state_faith + rite = top_liege.primary_title.state_rite } scope:liege_loc = { add_opinion = { @@ -6391,22 +6422,26 @@ ep3_emperor_yearly.2320 = { cooldown = { years = 20 } trigger = { - government_allows = administrative + government_has_mechanic = administrative government_allows = state_faith - exists = primary_title.state_faith + exists = primary_title.state_rite top_liege = this highest_held_title_tier >= tier_empire - faith != primary_title.state_faith - faith.fervor > primary_title.state_faith.fervor - exists = faith.religious_head - faith.religious_head != root - primary_title.state_faith.religious_head ?= { - this != root.faith.religious_head + rite != primary_title.state_rite + # Fervor is faith-level: a same-faith rite split has nothing to compare + trigger_if = { + limit = { NOT = { faith = primary_title.state_rite.faith } } + faith.fervor > primary_title.state_rite.faith.fervor + } + exists = rite.head_of_rite + rite.head_of_rite != root + primary_title.state_rite.head_of_rite ?= { + this != root.rite.head_of_rite } } immediate = { - faith.religious_head = { save_scope_as = hof } + rite.head_of_rite = { save_scope_as = hof } } weight_multiplier = { @@ -6450,7 +6485,7 @@ ep3_emperor_yearly.2320 = { name = ep3_emperor_yearly.2320.b every_vassal = { limit = { - faith = root.primary_title.state_faith + rite = root.primary_title.state_rite } custom = every_vassal_state_faith add_opinion = { @@ -6507,22 +6542,22 @@ ep3_emperor_yearly.2330 = { cooldown = { years = 20 } trigger = { - government_allows = administrative + government_has_mechanic = administrative government_allows = state_faith - exists = primary_title.state_faith + exists = primary_title.state_rite top_liege = this highest_held_title_tier >= tier_empire - faith = primary_title.state_faith + rite = primary_title.state_rite faith.fervor < 40 } immediate = { if = { limit = { - exists = faith.religious_head - faith.religious_head != root + exists = rite.head_of_rite + rite.head_of_rite != root } - faith.religious_head = { save_scope_as = hof } + rite.head_of_rite = { save_scope_as = hof } } } @@ -6555,7 +6590,7 @@ ep3_emperor_yearly.2330 = { flavor = ep3_emperor_yearly.2330.a.tt faith = { change_fervor = { - value = minor_fervor_gain + value = trivial_fervor_value desc = state_faith_fervor_campaign } } @@ -6571,7 +6606,7 @@ ep3_emperor_yearly.2330 = { #Option B: it's probably fine option = { name = ep3_emperor_yearly.2330.b - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain diligent = major_stress_impact_gain loyal = major_stress_impact_gain @@ -6612,7 +6647,7 @@ ep3_emperor_yearly.2340 = { cooldown = { years = 10 } trigger = { - government_allows = administrative + government_has_mechanic = administrative OR = { #emperor AND = { @@ -6623,8 +6658,8 @@ ep3_emperor_yearly.2340 = { is_governor = yes } government_allows = state_faith - exists = top_liege.primary_title.state_faith - faith != top_liege.primary_title.state_faith + exists = top_liege.primary_title.state_rite + rite != top_liege.primary_title.state_rite trigger_if = { limit = { top_liege = this @@ -6633,14 +6668,14 @@ ep3_emperor_yearly.2340 = { house ?= { is_powerful_family = yes } - faith = top_liege.primary_title.state_faith + rite = top_liege.primary_title.state_rite is_available_ai_adult = yes } } trigger_else = { top_liege = { any_vassal = { - faith = top_liege.primary_title.state_faith + rite = top_liege.primary_title.state_rite is_available_ai_adult = yes } } @@ -6659,7 +6694,7 @@ ep3_emperor_yearly.2340 = { house ?= { is_powerful_family = yes } - faith = root.primary_title.state_faith + rite = root.primary_title.state_rite is_available_ai_adult = yes } save_scope_as = complainer @@ -6671,7 +6706,7 @@ ep3_emperor_yearly.2340 = { top_liege = { random_vassal = { limit = { - faith = top_liege.primary_title.state_faith + rite = top_liege.primary_title.state_rite is_available_ai_adult = yes } weight = { @@ -6714,10 +6749,10 @@ ep3_emperor_yearly.2340 = { #Option A: Maybe I should fall in line... option = { name = ep3_emperor_yearly.2340.a - set_character_faith = top_liege.primary_title.state_faith + set_character_rite_with_conversion = top_liege.primary_title.state_rite if = { limit = { - top_liege.primary_title.state_faith = { has_doctrine = doctrine_monotheist } + top_liege.primary_title.state_rite = { rite_has_doctrine = doctrine_monotheist } } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } @@ -6730,7 +6765,7 @@ ep3_emperor_yearly.2340 = { else = { change_influence = medium_influence_gain } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain stubborn = major_stress_impact_gain } @@ -6760,7 +6795,7 @@ ep3_emperor_yearly.2340 = { } every_vassal = { limit = { - faith = root.primary_title.state_faith + rite = root.primary_title.state_rite } custom = every_vassal_state_faith add_opinion = { @@ -6774,7 +6809,7 @@ ep3_emperor_yearly.2340 = { top_liege = { every_vassal = { limit = { - faith = top_liege.primary_title.state_faith + rite = top_liege.primary_title.state_rite } custom = every_fellow_vassal_state_faith add_opinion = { @@ -6786,7 +6821,7 @@ ep3_emperor_yearly.2340 = { } } add_piety = major_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_loss lazy = medium_stress_impact_loss eccentric = medium_stress_impact_loss @@ -6830,7 +6865,7 @@ ep3_emperor_yearly.2400 = { } trigger = { - government_allows = administrative + government_has_mechanic = administrative house ?= { is_powerful_family = no } @@ -6866,7 +6901,7 @@ ep3_emperor_yearly.2401 = { } trigger = { - government_allows = administrative + government_has_mechanic = administrative house ?= { is_powerful_family = yes } @@ -6900,7 +6935,7 @@ ep3_emperor_yearly.2410 = { } trigger = { - government_allows = administrative + government_has_mechanic = administrative is_available = yes exists = scope:noble_family_head exists = scope:new_title @@ -6959,7 +6994,7 @@ ep3_emperor_yearly.2420 = { } trigger = { - government_allows = administrative + government_has_mechanic = administrative is_available = yes NOT = { #cooldown diff --git a/events/dlc/ep3/ep3_emperor_yearly_8.txt b/events/dlc/ep3/ep3_emperor_yearly_8.txt index b3f0aba98..86320c63b 100644 --- a/events/dlc/ep3/ep3_emperor_yearly_8.txt +++ b/events/dlc/ep3/ep3_emperor_yearly_8.txt @@ -98,7 +98,7 @@ ep3_emperor_yearly.8000 = { # Ensure you are l'empereur highest_held_title_tier >= tier_empire is_independent_ruler = yes - government_allows = administrative + government_has_mechanic = administrative # Ensure there are people to annoy any_vassal = { count >= 3 @@ -162,7 +162,7 @@ ep3_emperor_yearly.8000 = { } } save_scope_as = suggestor - } + } } # Find development target ordered_sub_realm_county = { @@ -345,7 +345,7 @@ ep3_emperor_yearly.8010 = { opening = { first_valid = { triggered_desc = { - trigger = { has_title = title:e_byzantium } + trigger = { is_roman_emperor_trigger = yes } desc = ep3_emperor_yearly.8010.opening_byz } desc = ep3_emperor_yearly.8010.opening @@ -363,7 +363,7 @@ ep3_emperor_yearly.8010 = { # Ensure you are l'empereur highest_held_title_tier >= tier_empire is_independent_ruler = yes - government_allows = administrative + government_has_mechanic = administrative # Ensure there is a governor to be duped any_vassal = { emperor_yearly_8010_valid_governor_trigger = yes } } @@ -419,7 +419,7 @@ ep3_emperor_yearly.8010 = { modifier = grateful_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -451,7 +451,7 @@ ep3_emperor_yearly.8010 = { target = scope:liar type = loyalty_hook } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain honest = minor_stress_impact_gain } @@ -480,7 +480,7 @@ ep3_emperor_yearly.8010 = { hidden_effect = { scope:liar = { change_prison_type = dungeon } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain arbitrary = minor_stress_impact_gain } @@ -502,7 +502,7 @@ ep3_emperor_yearly.8010 = { killer = scope:governor } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain compassionate = minor_stress_impact_gain } @@ -814,7 +814,7 @@ ep3_emperor_yearly.8020 = { } } save_scope_as = suggestor - } + } } } @@ -844,7 +844,7 @@ ep3_emperor_yearly.8020 = { } highlight_portrait = scope:purpler_1 scope:purpler_1 = { emperor_yearly_8020_valid_purpler_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -886,7 +886,7 @@ ep3_emperor_yearly.8020 = { } highlight_portrait = scope:purpler_2 scope:purpler_2 = { emperor_yearly_8020_valid_purpler_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -928,7 +928,7 @@ ep3_emperor_yearly.8020 = { } highlight_portrait = scope:purpler_3 scope:purpler_3 = { emperor_yearly_8020_valid_purpler_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -947,7 +947,7 @@ ep3_emperor_yearly.8020 = { option = { # PURPLE MINE name = ep3_emperor_yearly.8020.d add_prestige = medium_prestige_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -1173,7 +1173,7 @@ ep3_emperor_yearly.8030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain calm = minor_stress_impact_gain forgiving = minor_stress_impact_gain @@ -1192,7 +1192,7 @@ ep3_emperor_yearly.8030 = { remove_treasury_or_gold = minor_treasury_or_gold_value ep3_emperor_yearly_8030_coast_modifier_effect = { MODIFIER = mandate } ep3_emperor_yearly_8030_sea_modifier_effect = { MODIFIER = mandate } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain lazy = minor_stress_impact_gain callous = minor_stress_impact_gain @@ -1212,7 +1212,7 @@ ep3_emperor_yearly.8030 = { add_piety = major_piety_gain ep3_emperor_yearly_8030_coast_modifier_effect = { MODIFIER = loose } ep3_emperor_yearly_8030_sea_modifier_effect = { MODIFIER = loose } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss diligent = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -1579,7 +1579,7 @@ ep3_emperor_yearly.8050 = { trigger = { has_ep3_dlc_trigger = yes # Ensure you are l'empereur - government_allows = administrative + government_has_mechanic = administrative highest_held_title_tier >= tier_empire is_independent_ruler = yes # Have a marshal @@ -1702,18 +1702,18 @@ ep3_emperor_yearly.8050 = { option = { # Recruit name = { text = ep3_emperor_yearly.8050.b.byz - trigger = { primary_title = title:e_byzantium } + trigger = { is_eastern_roman_emperor_primary_title_trigger = yes } } name = { text = ep3_emperor_yearly.8050.b - trigger = { primary_title != title:e_byzantium } + trigger = { is_eastern_roman_emperor_primary_title_trigger = no } } pay_short_term_gold = { gold = minor_gold_value target = scope:raider } if = { - limit = { has_title = title:e_byzantium } + limit = { is_roman_emperor_trigger = yes } scope:raider = { add_trait = varangian } } add_courtier = scope:raider @@ -1722,7 +1722,7 @@ ep3_emperor_yearly.8050 = { modifier = loyalty_opinion opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain vengeful = minor_stress_impact_gain } @@ -1759,7 +1759,7 @@ ep3_emperor_yearly.8050 = { add_short_term_gold = root.tiny_gold_value } rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:raider + TARGET = scope:raider IMPRISONER = root } } @@ -1784,7 +1784,7 @@ ep3_emperor_yearly.8050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain lazy = minor_stress_impact_gain } @@ -1803,7 +1803,7 @@ ep3_emperor_yearly.8050 = { gold = tiny_gold_value target = scope:raider } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain wrathful = minor_stress_impact_gain } @@ -1940,33 +1940,21 @@ scripted_effect ep3_emperor_yearly_8060_defect_effect = { if = { limit = { scope:sponsor = { - NOT = { government_allows = administrative } + NOT = { government_has_mechanic = administrative } } } - if = { - limit = { - faith = { religion_tag = islam_religion } - } - change_government = clan_government - } - else = { change_government = feudal_government } + assign_feudal_governments_effect = yes } hidden_effect = { every_vassal = { - limit = { government_allows = administrative } + limit = { government_has_mechanic = administrative } if = { limit = { scope:sponsor = { - NOT = { government_allows = administrative } + NOT = { government_has_mechanic = administrative } } } - if = { - limit = { - faith = { religion_tag = islam_religion } - } - change_government = clan_government - } - else = { change_government = feudal_government } + assign_feudal_governments_effect = yes } } } @@ -2048,7 +2036,7 @@ ep3_emperor_yearly.8060 = { # Ensure you are l'empereur highest_held_title_tier >= tier_empire is_independent_ruler = yes - government_allows = administrative + government_has_mechanic = administrative # To avoid edge cases is_at_war = no # Valid defector exists @@ -2136,7 +2124,7 @@ ep3_emperor_yearly.8060 = { } } add_tyranny = medium_tyranny_gain - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain forgiving = medium_stress_impact_gain } @@ -2160,7 +2148,7 @@ ep3_emperor_yearly.8060 = { opinion = 25 target = scope:defector } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain vengeful = medium_stress_impact_gain } @@ -2197,7 +2185,7 @@ ep3_emperor_yearly.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_gain diligent = medium_stress_impact_gain } diff --git a/events/dlc/ep3/ep3_eparch_events.txt b/events/dlc/ep3/ep3_eparch_events.txt index f764fba3d..d655f2d2f 100644 --- a/events/dlc/ep3/ep3_eparch_events.txt +++ b/events/dlc/ep3/ep3_eparch_events.txt @@ -108,7 +108,7 @@ ep3_eparch_event.0001 = { # Follow up event for the liege scope:emperor = { trigger_event = ep3_eparch_event.0002 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss } @@ -149,7 +149,7 @@ ep3_eparch_event.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # None } @@ -174,7 +174,7 @@ ep3_eparch_event.0001 = { option = { # Surely the capital is not in any danger? name = ep3_eparch_event.0001.c - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss } @@ -301,7 +301,7 @@ ep3_eparch_event.0002 = { OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss } @@ -334,7 +334,7 @@ ep3_eparch_event.0002 = { option = { # They are only doing their job. name = ep3_eparch_event.0002.b - stress_impact = { + stress_and_fulfillment_impact = { # None } @@ -441,7 +441,7 @@ ep3_eparch_event.0005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } @@ -531,7 +531,7 @@ ep3_eparch_event.0005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain } @@ -607,7 +607,7 @@ ep3_eparch_event.0005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } @@ -638,7 +638,7 @@ ep3_eparch_event.0005 = { eparch_neglecting_duty_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain } @@ -756,7 +756,7 @@ ep3_eparch_event.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = medium_stress_impact_gain } @@ -793,7 +793,7 @@ ep3_eparch_event.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { } ai_chance = { @@ -865,7 +865,7 @@ ep3_eparch_event.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss } @@ -892,7 +892,7 @@ ep3_eparch_event.0010 = { eparch_neglecting_duty_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain compassionate = medium_stress_impact_gain } @@ -1018,9 +1018,9 @@ ep3_eparch_event.0015 = { any_pool_character = { province = scope:capital is_available_adult_education_teacher = yes - NOR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_none_of_variables = { + name = teacher_1 + name = teacher_2 } } } @@ -1028,9 +1028,9 @@ ep3_eparch_event.0015 = { province = scope:capital limit = { is_available_adult_education_teacher = yes - NOR = { - has_character_flag = teacher_1 - has_character_flag = teacher_2 + has_none_of_variables = { + name = teacher_1 + name = teacher_2 } } save_scope_as = teacher_local_scholar @@ -1076,14 +1076,15 @@ ep3_eparch_event.0015 = { random_traits = yes dynasty = none faith = scope:capital.faith + rite = scope:capital.rite culture = scope:capital.culture gender_female_chance = { if = { - limit = { scope:capital.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { scope:capital.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { - limit = { scope:capital.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { scope:capital.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { @@ -1119,7 +1120,7 @@ ep3_eparch_event.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss } @@ -1205,7 +1206,7 @@ ep3_eparch_event.0015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain } @@ -1604,7 +1605,7 @@ ep3_eparch_event.9000 = { trigger_event = ep3_eparch_event.9001 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain forgiving = minor_stress_impact_gain wrathful = minor_stress_impact_loss @@ -1670,7 +1671,7 @@ ep3_eparch_event.9000 = { trigger_event = ep3_eparch_event.9001 } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain } @@ -1704,7 +1705,7 @@ ep3_eparch_event.9000 = { trigger_event = ep3_eparch_event.9001 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain just = minor_stress_impact_gain } diff --git a/events/dlc/ep3/ep3_governor_yearly_3.txt b/events/dlc/ep3/ep3_governor_yearly_3.txt index a9390ab49..51d87f23d 100644 --- a/events/dlc/ep3/ep3_governor_yearly_3.txt +++ b/events/dlc/ep3/ep3_governor_yearly_3.txt @@ -109,30 +109,30 @@ ep3_governor_yearly.3001 = { theme = administrative override_background = { trigger = { - OR = { - has_character_flag = domicile_new_built_garden - has_character_flag = domicile_new_built_garden_leisure - has_character_flag = domicile_new_built_garden_fruit + has_variable = { + name = domicile_new_built_garden + name = domicile_new_built_garden_leisure + name = domicile_new_built_garden_fruit } } reference = garden } override_background = { trigger = { - OR = { - has_character_flag = domicile_new_built_garden - has_character_flag = domicile_new_built_garden_leisure - has_character_flag = domicile_new_built_garden_fruit + has_variable = { + name = domicile_new_built_garden + name = domicile_new_built_garden_leisure + name = domicile_new_built_garden_fruit } } reference = garden } override_background = { trigger = { - OR = { - has_character_flag = domicile_new_built_grazing_land - has_character_flag = domicile_new_built_horse_pasture - has_character_flag = domicile_new_built_camel_pasture + has_variable = { + name = domicile_new_built_grazing_land + name = domicile_new_built_horse_pasture + name = domicile_new_built_camel_pasture } scope:root_domicile_province = { OR = { @@ -148,10 +148,10 @@ ep3_governor_yearly.3001 = { } override_background = { trigger = { - OR = { - has_character_flag = domicile_new_built_grazing_land - has_character_flag = domicile_new_built_horse_pasture - has_character_flag = domicile_new_built_camel_pasture + has_variable = { + name = domicile_new_built_grazing_land + name = domicile_new_built_horse_pasture + name = domicile_new_built_camel_pasture } scope:root_domicile_province = { OR = { @@ -166,10 +166,10 @@ ep3_governor_yearly.3001 = { } override_background = { trigger = { - OR = { - has_character_flag = domicile_new_built_grazing_land - has_character_flag = domicile_new_built_horse_pasture - has_character_flag = domicile_new_built_camel_pasture + has_variable = { + name = domicile_new_built_grazing_land + name = domicile_new_built_horse_pasture + name = domicile_new_built_camel_pasture } scope:root_domicile_province = { OR = { @@ -185,13 +185,13 @@ ep3_governor_yearly.3001 = { #Farm/orchard type ones override_background = { trigger = { - NOR = { - has_character_flag = domicile_new_built_grazing_land - has_character_flag = domicile_new_built_horse_pasture - has_character_flag = domicile_new_built_camel_pasture - has_character_flag = domicile_new_built_garden - has_character_flag = domicile_new_built_garden_leisure - has_character_flag = domicile_new_built_garden_fruit + has_none_of_variables = { + name = domicile_new_built_grazing_land + name = domicile_new_built_horse_pasture + name = domicile_new_built_camel_pasture + name = domicile_new_built_garden + name = domicile_new_built_garden_leisure + name = domicile_new_built_garden_fruit } scope:root_domicile_province = { OR = { @@ -207,13 +207,13 @@ ep3_governor_yearly.3001 = { } override_background = { trigger = { - NOR = { - has_character_flag = domicile_new_built_grazing_land - has_character_flag = domicile_new_built_horse_pasture - has_character_flag = domicile_new_built_camel_pasture - has_character_flag = domicile_new_built_garden - has_character_flag = domicile_new_built_garden_leisure - has_character_flag = domicile_new_built_garden_fruit + has_none_of_variables = { + name = domicile_new_built_grazing_land + name = domicile_new_built_horse_pasture + name = domicile_new_built_camel_pasture + name = domicile_new_built_garden + name = domicile_new_built_garden_leisure + name = domicile_new_built_garden_fruit } scope:root_domicile_province = { NOR = { @@ -242,12 +242,12 @@ ep3_governor_yearly.3001 = { trigger = { has_ep3_dlc_trigger = yes - government_has_flag = government_is_administrative + government_has_mechanic = administrative any_held_title = { is_noble_family_title = yes } domicile.domicile_location.county.holder = { - government_has_flag = government_is_administrative + government_has_mechanic = administrative governor_efficiency <= 0.75 NOR = { this = root @@ -289,7 +289,7 @@ ep3_governor_yearly.3001 = { custom_tooltip = ep3_governor_yearly.3001.a_govs_low change_influence = minor_influence_loss - + remove_short_term_gold = medium_gold_value #Gotta be a shark if you want hella real domicile @@ -315,7 +315,7 @@ ep3_governor_yearly.3001 = { governor_efficiency >= 1.25 add = 20 } - + send_interface_toast = { title = ep3_governor_yearly.3001.a_success left_icon = root @@ -370,8 +370,8 @@ ep3_governor_yearly.3001 = { add_character_flag = vast_lands_stolen } } - - stress_impact = { + + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss content = major_stress_impact_gain humble = medium_stress_impact_gain @@ -481,8 +481,8 @@ ep3_governor_yearly.3001 = { days = 30 } } - - stress_impact = { + + stress_and_fulfillment_impact = { content = medium_stress_impact_gain humble = medium_stress_impact_gain just = medium_stress_impact_gain @@ -523,7 +523,7 @@ ep3_governor_yearly.3001 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arbitrary = minor_stress_impact_gain ambitious = minor_stress_impact_gain @@ -604,7 +604,7 @@ ep3_governor_yearly.3002 = { } desc = ep3_governor_yearly.3002.desc_outro } - + theme = administrative override_background = { reference = study @@ -826,9 +826,9 @@ ep3_governor_yearly.3002 = { } } add_character_flag = governor_accuses_crime - - - stress_impact = { + + + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss just = medium_stress_impact_gain honest = medium_stress_impact_gain @@ -909,7 +909,7 @@ ep3_governor_yearly.3002 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain content = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -939,7 +939,7 @@ ep3_governor_yearly.3002 = { option = { name = ep3_governor_yearly.3002.c flavor = ep3_governor_yearly.3002.c.flavor - + #governor loses more or less governor efficiency based on scale of lands #Show correct amount of lands that landlord got if = { @@ -990,7 +990,7 @@ ep3_governor_yearly.3002 = { } add_character_flag = governor_scandalizes - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain generous = miniscule_stress_impact_gain arbitrary = miniscule_stress_impact_gain @@ -1064,7 +1064,7 @@ ep3_governor_yearly.3002 = { } add_character_flag = governor_backs_down - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain diligent = minor_stress_impact_gain greedy = miniscule_stress_impact_gain @@ -1149,14 +1149,14 @@ ep3_governor_yearly.3003 = { } } sender = scope:governor - + trigger = { scope:governor = { - OR = { - has_character_flag = governor_accuses_crime - has_character_flag = governor_uses_force - has_character_flag = governor_scandalizes - has_character_flag = governor_backs_down + has_variable = { + name = governor_accuses_crime + name = governor_uses_force + name = governor_scandalizes + name = governor_backs_down } is_alive = yes } @@ -1447,13 +1447,13 @@ ep3_governor_yearly.3010 = { desc = ep3_governor_yearly.3010.desc_middling } } - + theme = emperor override_background = { reference = battlefield } override_effect_2d = { - reference = flies + reference = flies } left_portrait = { character = scope:emperor @@ -1550,7 +1550,7 @@ ep3_governor_yearly.3010 = { add_character_flag = need_military_outfit } } - + #Join the emperor in this war option = { name = ep3_governor_yearly.3010.a @@ -1564,7 +1564,7 @@ ep3_governor_yearly.3010 = { random_list = { 50 = { #Emperor accepts your help desc = ep3_governor_yearly.3010.a.success - + modifier = { ep3_emperors_war_strength_value < ep3_emperors_foe_war_strength_value add = 25 @@ -1724,7 +1724,7 @@ ep3_governor_yearly.3010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { brave = miniscule_stress_impact_loss diligent = minor_stress_impact_loss craven = medium_stress_impact_gain @@ -1792,7 +1792,7 @@ ep3_governor_yearly.3010 = { if = { limit = { is_powerful_vassal = yes - + scope:emperor = { has_realm_law = acclamation_succession_law } @@ -1846,14 +1846,14 @@ ep3_governor_yearly.3010 = { else = { change_influence = major_influence_loss } - + scope:emperor = { send_interface_message = { type = msg_governor_challenges_weakness title = msg_claimed_weak_emperors_title.t desc = msg_claimed_weak_emperors_title.flavor right_icon = root - + root = { add_unpressed_claim = scope:emperor.primary_title progress_towards_rival_effect = { @@ -1891,7 +1891,7 @@ ep3_governor_yearly.3010 = { } NOT = { has_character_flag = decried_weakness_score - + } } custom_tooltip = governor_challenges_weakness_candidate_score @@ -1907,7 +1907,7 @@ ep3_governor_yearly.3010 = { opinion = -25 } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss forgiving = medium_stress_impact_gain content = major_stress_impact_gain @@ -1997,7 +1997,7 @@ ep3_governor_yearly.3010 = { modifier = ep3_exploited_weak_master_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss just = major_stress_impact_gain diligent = major_stress_impact_gain @@ -2026,7 +2026,7 @@ ep3_governor_yearly.3010 = { name = ep3_governor_yearly.3010.d add_piety = medium_piety_gain remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss greedy = minor_stress_impact_gain ambitious = minor_stress_impact_gain @@ -2075,7 +2075,7 @@ ep3_governor_yearly.3011 = { ep3_governor_yearly_3010_war_aid_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { craven = miniscule_stress_impact_loss trusting = miniscule_stress_impact_loss stubborn = medium_stress_impact_gain @@ -2088,7 +2088,7 @@ ep3_governor_yearly.3011 = { option = { name = ep3_governor_yearly.3011.b scope:governor = { add_character_flag = governor_war_aid_deal_failed } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain trusting = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -2123,10 +2123,10 @@ ep3_governor_yearly.3012 = { } sender = scope:emperor - + #Alright then option = { - + name = { trigger = { knows_language = language_greek @@ -2150,7 +2150,7 @@ ep3_governor_yearly.3012 = { trigger = { NAND = { knows_language = language_greek - OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } + religion = religion:christianity_religion } has_character_flag = governor_war_aid_deal_failed } @@ -2197,7 +2197,7 @@ ep3_governor_yearly.3020 = { desc = ep3_governor_yearly.3020.desc_crime } } - + theme = emperor override_background = { reference = throne_room @@ -2227,7 +2227,7 @@ ep3_governor_yearly.3020 = { valid_for_byz_emperor_content_trigger = yes save_temporary_scope_as = emperor_temp legitimacy_level < 5 - government_has_flag = government_is_administrative + government_has_mechanic = administrative top_liege = this OR = { #Emperor has criminal trait @@ -2236,8 +2236,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { is_incestuous_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:incestuous RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:incestuous RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = kinslayer @@ -2250,8 +2250,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { has_trait = adulterer } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:adulterer FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:adulterer FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:adulterer RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:adulterer RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = fornicator @@ -2263,24 +2263,24 @@ ep3_governor_yearly.3020 = { } } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:fornicator FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:fornicator FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:fornicator RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:fornicator RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = deviant NOT = { root = { is_deviant_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = witch NOT = { root = { is_witch_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = sodomite @@ -2292,24 +2292,23 @@ ep3_governor_yearly.3020 = { } } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { has_trait = cannibal NOT = { root = { is_cannibal_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = scope:emperor_temp.faith GENDER_CHARACTER = scope:emperor_temp } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = root.faith GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = scope:emperor_temp.rite GENDER_CHARACTER = scope:emperor_temp } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = root.rite GENDER_CHARACTER = scope:emperor_temp } } AND = { root.culture = { has_cultural_parameter = physical_disfigurement_blocks_inheritance } OR = { - has_trait = eunuch_1 - has_trait = beardless_eunuch + is_eunuch_trigger = yes has_trait = blind has_trait = maimed has_trait = one_eyed @@ -2346,8 +2345,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { is_incestuous_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:incestuous RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:incestuous RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2380,8 +2379,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { has_trait = adulterer } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:adulterer FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:adulterer FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:adulterer RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:adulterer RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2401,8 +2400,8 @@ ep3_governor_yearly.3020 = { } } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:fornicator FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:fornicator FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:fornicator RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:fornicator RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2417,8 +2416,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { is_deviant_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2433,8 +2432,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { is_witch_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2454,8 +2453,8 @@ ep3_governor_yearly.3020 = { } } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2470,8 +2469,8 @@ ep3_governor_yearly.3020 = { NOT = { root = { is_cannibal_trigger = yes } } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = scope:emperor.faith GENDER_CHARACTER = scope:emperor } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = root.faith GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = scope:emperor.rite GENDER_CHARACTER = scope:emperor } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:cannibal RITE = root.rite GENDER_CHARACTER = scope:emperor } } random_character_trait = { limit = { @@ -2560,7 +2559,7 @@ ep3_governor_yearly.3020 = { } } } - + } 45 = { #No one pays you any heed desc = ep3_governor_yearly.3020.a.fail @@ -2589,7 +2588,7 @@ ep3_governor_yearly.3020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain trusting = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -2662,7 +2661,7 @@ ep3_governor_yearly.3020 = { has_trait = clubfooted has_trait = disfigured has_character_flag = insulted_trait_candidate_score - + } is_candidate_for_title_trigger = { TITLE = scope:emperor.primary_title @@ -2698,7 +2697,7 @@ ep3_governor_yearly.3020 = { days = 1 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = miniscule_stress_impact_loss just = miniscule_stress_impact_loss craven = medium_stress_impact_gain @@ -2767,7 +2766,7 @@ ep3_governor_yearly.3020 = { else = { add_gold = tiny_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain paranoid = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -2857,7 +2856,7 @@ ep3_governor_yearly.3021 = { add_legitimacy = minor_legitimacy_loss custom_tooltip = ep3_governor_yearly.3021.bad_trait } - + #I suppose I should seek God's favor option = { name = ep3_governor_yearly.3021.a @@ -2868,7 +2867,7 @@ ep3_governor_yearly.3021 = { } custom_tooltip = ep3_governor_yearly.3021.blocker add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { zealous = miniscule_stress_impact_loss humble = miniscule_stress_impact_loss arrogant = major_stress_impact_gain @@ -2898,7 +2897,7 @@ ep3_governor_yearly.3021 = { #Impertinence! option = { name = ep3_governor_yearly.3021.b - stress_impact = { + stress_and_fulfillment_impact = { humble = miniscule_stress_impact_gain zealous = miniscule_stress_impact_gain trusting = miniscule_stress_impact_gain @@ -2955,7 +2954,7 @@ ep3_governor_yearly.3030 = { desc = ep3_governor_yearly.3030.desc_generic } desc = ep3_governor_yearly.3030.desc - } + } theme = administrative override_background = { trigger = { @@ -2980,7 +2979,7 @@ ep3_governor_yearly.3030 = { trigger = { basic_is_valid_for_yearly_events_trigger = yes is_landed = yes - government_allows = administrative + government_has_mechanic = administrative top_liege != this years_from_game_start >= 4 is_at_war = no @@ -3107,7 +3106,7 @@ ep3_governor_yearly.3030 = { else = { add_martial_lifestyle_xp = medium_lifestyle_xp } - stress_impact = { + stress_and_fulfillment_impact = { lazy = major_stress_impact_gain compassionate = medium_stress_impact_gain content = major_stress_impact_gain @@ -3153,7 +3152,7 @@ ep3_governor_yearly.3030 = { modifier = ep3_peaceful_administrator_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain paranoid = major_stress_impact_gain wrathful = medium_stress_impact_gain @@ -3179,7 +3178,7 @@ ep3_governor_yearly.3030 = { #We are free to relish a cozy life with our families! option = { name = ep3_governor_yearly.3030.c - + #Some kind of estate bonus #New estate sub-building type? if = { @@ -3230,7 +3229,7 @@ ep3_governor_yearly.3030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain impatient = minor_stress_impact_gain callous = medium_stress_impact_gain @@ -3321,7 +3320,7 @@ ep3_governor_yearly.3040 = { top_liege = { is_imprisoned = no legitimacy_level >= 4 - has_government = administrative_government + government_has_flag = government_is_administrative } age >= 12 } @@ -3416,7 +3415,7 @@ ep3_governor_yearly.3040 = { } name = ep3_governor_yearly.3040.a flavor = ep3_governor_yearly.3040.a.flavor - + root = { if = { limit = { @@ -3449,7 +3448,7 @@ ep3_governor_yearly.3040 = { flag = ep3_intermarrying_gov days = 5 } - + } } scope:emperor.house = { @@ -3473,7 +3472,7 @@ ep3_governor_yearly.3040 = { type = msg_governor_compliments_legitimacy title = msg_governor_compliments_legitimacy.t right_icon = root - + dynasty = { add_dynasty_prestige = miniscule_dynasty_prestige_gain } reverse_add_opinion = { target = root @@ -3484,7 +3483,7 @@ ep3_governor_yearly.3040 = { limit = { root = { has_character_flag = ep3_intermarrying_gov - + } } custom_tooltip = ep3_governor_yearly_3040_marriage_tooltip @@ -3504,10 +3503,10 @@ ep3_governor_yearly.3040 = { } } } - + dynasty = { add_dynasty_prestige = 25 } - - stress_impact = { + + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain shy = minor_stress_impact_gain content = minor_stress_impact_gain @@ -3582,7 +3581,7 @@ ep3_governor_yearly.3040 = { } change_influence = minor_influence_gain - stress_impact = { + stress_and_fulfillment_impact = { impatient = medium_stress_impact_gain just = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -3783,7 +3782,7 @@ ep3_governor_yearly.3040 = { OR = { culture = { culture_has_archer_cavalry_maa = yes } has_trait = nomadic_philosophy - } + } } create_maa_regiment = { type = horse_archers @@ -3948,7 +3947,7 @@ ep3_governor_yearly.3040 = { } remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain humble = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -4366,7 +4365,7 @@ ep3_governor_yearly.3040 = { size = 2 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -4409,6 +4408,22 @@ ep3_governor_yearly.3040 = { } } +scripted_trigger ep3_governor_yearly_3050_emperor_trigger = { + OR = { + has_trait = lunatic + has_trait = possessed + has_trait = eccentric + AND = { + has_trait = witch + NOT = { + root.rite = { + rite_has_parameter = witchcraft_accepted + } + } + } + } +} + ##################################### # God Appointed... Him? # # by Jason Cantalini # @@ -4420,7 +4435,18 @@ ep3_governor_yearly.3050 = { type = character_event title = ep3_governor_yearly.3050.t desc = { - desc = ep3_governor_yearly.3050.desc + first_valid = { + triggered_desc = { + trigger = { + scope:emperor = { + ep3_governor_yearly_3050_emperor_trigger = yes + } + } + desc = ep3_governor_yearly.3050.desc_strange_intro + } + desc = ep3_governor_yearly.3050.desc + } + first_valid = { #Emperor is a mess triggered_desc = { @@ -4466,12 +4492,12 @@ ep3_governor_yearly.3050 = { has_cultural_pillar = heritage_byzantine has_cultural_pillar = heritage_caucasian has_cultural_pillar = heritage_latin - has_graphical_mediterranean_culture_group_trigger = yes + has_graphical_mediterranean_culture_group_trigger = yes } } - NOR = { - has_character_flag = demon_emperor_cruel - has_character_flag = demon_emperor_generic + has_none_of_variables = { + name = demon_emperor_cruel + name = demon_emperor_generic } } reference = ep3_byzantine_feast @@ -4483,12 +4509,12 @@ ep3_governor_yearly.3050 = { has_cultural_pillar = heritage_byzantine has_cultural_pillar = heritage_caucasian has_cultural_pillar = heritage_latin - has_graphical_mediterranean_culture_group_trigger = yes + has_graphical_mediterranean_culture_group_trigger = yes } } - NOR = { - has_character_flag = demon_emperor_cruel - has_character_flag = demon_emperor_generic + has_none_of_variables = { + name = demon_emperor_cruel + name = demon_emperor_generic } } reference = corridor_night @@ -4514,6 +4540,7 @@ ep3_governor_yearly.3050 = { } } animation = aggressive_unarmed + camera = camera_event_table_left_forward } triggered_animation = { trigger = { @@ -4530,6 +4557,7 @@ ep3_governor_yearly.3050 = { } } animation = paranoia + camera = camera_event_table_left_forward } triggered_animation = { trigger = { @@ -4538,6 +4566,7 @@ ep3_governor_yearly.3050 = { } } animation = manic + camera = camera_event_table_left_forward } triggered_animation = { trigger = { @@ -4546,6 +4575,7 @@ ep3_governor_yearly.3050 = { } } animation = eccentric + camera = camera_event_table_left_forward } } lower_right_portrait = scope:faith_head @@ -4559,8 +4589,16 @@ ep3_governor_yearly.3050 = { } is_at_war = no top_liege = { + is_imprisoned = no has_legitimacy = yes - legitimacy_level < 2 + #Either quite illegitimate for an emperor... or people do actually speak already of their strangeness + OR = { + legitimacy_level < 2 + AND = { + legitimacy_level < 5 + ep3_governor_yearly_3050_emperor_trigger = yes + } + } age >= 8 } age >= 12 @@ -4571,10 +4609,18 @@ ep3_governor_yearly.3050 = { modifier = { factor = 3 top_liege = { - is_imprisoned = no + has_legitimacy = yes legitimacy_level < 1 } } + modifier = { + factor = 3 + top_liege = { + has_legitimacy = yes + legitimacy_level < 3 + ep3_governor_yearly_3050_emperor_trigger = yes + } + } } immediate = { @@ -4683,6 +4729,9 @@ ep3_governor_yearly.3050 = { scope:emperor = { is_adult = yes } + root = { + is_ai = no + } } scope:emperor = { add_character_flag = is_naked } } @@ -4754,7 +4803,7 @@ ep3_governor_yearly.3050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss eccentric = minor_stress_impact_loss cynical = major_stress_impact_gain @@ -4795,12 +4844,12 @@ ep3_governor_yearly.3050 = { title = msg_governor_challenging_illegitimacy.t desc = msg_governor_challenging_illegitimacy.desc right_icon = scope:root_scope - + custom_tooltip = ep3_governor_yearly_3050_factions_emp_tooltip add_legitimacy = miniscule_legitimacy_loss } } - + if = { limit = { exists = scope:regiment @@ -4986,8 +5035,8 @@ ep3_governor_yearly.3050 = { change_influence = minor_influence_gain } add_trait = disloyal - - stress_impact = { + + stress_and_fulfillment_impact = { disloyal = minor_stress_impact_loss loyal = medium_stress_impact_gain just = major_stress_impact_gain @@ -4996,7 +5045,7 @@ ep3_governor_yearly.3050 = { content = medium_stress_impact_gain } ai_chance = { - base = 150 + base = 100 ai_value_modifier = { ai_greed = 1 ai_boldness = 1 @@ -5050,14 +5099,14 @@ ep3_governor_yearly.3050 = { opinion = 20 } } - + scope:emperor = { send_interface_message = { type = msg_governor_supports_rule title = msg_governor_supports_rule.t desc = msg_governor_supports_rule.desc right_icon = scope:root_scope - + add_legitimacy = miniscule_legitimacy_gain random = { chance = 20 @@ -5065,7 +5114,7 @@ ep3_governor_yearly.3050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { loyal = miniscule_stress_impact_loss arbitrary = major_stress_impact_gain paranoid = medium_stress_impact_gain @@ -5073,7 +5122,7 @@ ep3_governor_yearly.3050 = { deceitful = minor_stress_impact_gain } ai_chance = { - base = 100 + base = 50 ai_value_modifier = { ai_honor = 2 ai_compassion = 0.5 @@ -5099,6 +5148,12 @@ ep3_governor_yearly.3050 = { value > 70 } } + modifier = { + add = -50 + scope:emperor = { + ep3_governor_yearly_3050_emperor_trigger = yes + } + } modifier = { factor = 0 OR = { @@ -5117,7 +5172,7 @@ ep3_governor_yearly.3050 = { #A perfect time to get involved in imperial politics... and neglect my other duties option = { name = ep3_governor_yearly.3050.d - + if = { limit = { is_governor = yes @@ -5148,7 +5203,7 @@ ep3_governor_yearly.3050 = { add_prestige = minor_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain just = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -5188,10 +5243,11 @@ ep3_governor_yearly.3050 = { has_trait = just has_trait = honest has_trait = humble - } - opinion = { - target = scope:emperor - value >= 80 + has_trait = diligent + opinion = { + target = scope:emperor + value >= 80 + } } } } @@ -5215,7 +5271,6 @@ ep3_governor_yearly.3050 = { # by Jason Cantalini # # 3060 # ##################################### - #Admin Imperial Succession event ep3_governor_yearly.3060 = { type = character_event @@ -5455,7 +5510,7 @@ ep3_governor_yearly.3060 = { } override_background = { trigger = { - exists = scope:background_throne_room_scope + exists = scope:background_throne_room_scope scope:emperor = { tgp_is_ceremonial_regent_trigger = yes } # Not 'actual' ruler } reference = throne_room_scope @@ -5631,18 +5686,18 @@ ep3_governor_yearly.3060 = { legitimacy_level <= 1 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss greedy = miniscule_stress_impact_loss } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss greedy = miniscule_stress_impact_loss } } - + ai_chance = { base = 100 ai_value_modifier = { @@ -6022,7 +6077,7 @@ ep3_governor_yearly.3060 = { legitimacy_level >= 4 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain content = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -6032,7 +6087,7 @@ ep3_governor_yearly.3060 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { loyal = medium_stress_impact_gain } } @@ -6197,7 +6252,7 @@ ep3_governor_yearly.3060 = { } #High legitimacy: gain influence and a little opinion with emp #Low legitimacy: lose opinion and gain big opinion with emp - + if = { limit = { scope:emperor = { @@ -6289,7 +6344,7 @@ ep3_governor_yearly.3060 = { legitimacy_level <= 1 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain paranoid = medium_stress_impact_gain craven = medium_stress_impact_gain @@ -6299,11 +6354,11 @@ ep3_governor_yearly.3060 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { disloyal = medium_stress_impact_gain } } - + ai_chance = { base = 0 ai_value_modifier = { @@ -6539,10 +6594,10 @@ ep3_governor_yearly.3070 = { } lower_right_portrait = scope:close_governor - + trigger = { top_liege != this - government_allows = administrative + government_has_mechanic = administrative OR = { AND = { is_landed = yes @@ -6683,7 +6738,7 @@ ep3_governor_yearly.3070 = { } liege = { save_temporary_scope_as = temp_liege - + any_courtier_or_guest = { NOT = { is_foreign_court_guest = yes @@ -6887,7 +6942,7 @@ ep3_governor_yearly.3070 = { save_temporary_scope_as = temp_vassal "scope:liege.capital_province.squared_distance(scope:temp_vassal.capital_province)" < 25000 } - + } } scope:liege = { @@ -6929,7 +6984,7 @@ ep3_governor_yearly.3070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_gain ambitious = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -6985,7 +7040,7 @@ ep3_governor_yearly.3070 = { } } } - + every_spouse = { change_influence = miniscule_influence_gain add_opinion = { @@ -6995,7 +7050,7 @@ ep3_governor_yearly.3070 = { } } remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_gain lazy = medium_stress_impact_gain content = medium_stress_impact_gain @@ -7006,7 +7061,7 @@ ep3_governor_yearly.3070 = { ai_value_modifier = { ai_energy = 1 ai_sociability = 1 - + } modifier = { factor = 0 @@ -7040,7 +7095,7 @@ ep3_governor_yearly.3070 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain content = medium_stress_impact_gain patient = medium_stress_impact_gain @@ -7050,7 +7105,7 @@ ep3_governor_yearly.3070 = { ai_value_modifier = { ai_energy = 1 ai_greed = 1 - + } modifier = { factor = 0 @@ -7105,7 +7160,7 @@ ep3_governor_yearly.3070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } ai_chance = { @@ -7194,7 +7249,7 @@ ep3_governor_yearly.3070 = { culture = scope:liege.culture } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss impatient = minor_stress_impact_gain ambitious = medium_stress_impact_gain @@ -7203,7 +7258,7 @@ ep3_governor_yearly.3070 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss impatient = minor_stress_impact_gain ambitious = medium_stress_impact_gain @@ -7339,7 +7394,7 @@ ep3_governor_yearly.3080 = { camera = camera_event_right_pointing_left } lower_right_portrait = scope:liege - + trigger = { is_landed = yes government_has_flag = government_is_administrative @@ -7555,7 +7610,7 @@ ep3_governor_yearly.3080 = { } } increase_governance_effect = { VALUE = 5 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = miniscule_stress_impact_loss impatient = medium_stress_impact_gain fickle = minor_stress_impact_gain @@ -7586,7 +7641,7 @@ ep3_governor_yearly.3080 = { desc = ep3_anxious_for_new_assignment_desc } custom_tooltip = ep3_anxious_for_new_assignment_tooltip - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain just = medium_stress_impact_gain humble = minor_stress_impact_gain @@ -7679,7 +7734,7 @@ ep3_governor_yearly.3080 = { send_interface_toast = { type = event_toast_effect_bad title = ep3_governor_yearly.3080.c.crit_fail - + scope:captain = { death = { death_reason = death_disappearance @@ -7694,7 +7749,7 @@ ep3_governor_yearly.3080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain lazy = medium_stress_impact_gain } @@ -7788,14 +7843,14 @@ ep3_governor_yearly.3080 = { send_interface_toast = { type = event_toast_effect_bad title = ep3_governor_yearly.3080.d.crit_fail - + capital_county = { change_development_progress = medium_development_progress_loss } } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain lazy = medium_stress_impact_gain } @@ -7842,11 +7897,11 @@ ep3_governor_yearly.3080 = { } } } - + #Whaddaya gonna do *shrug* option = { name = ep3_governor_yearly.3080.e - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -7908,7 +7963,7 @@ ep3_governor_yearly.3090 = { desc = ep3_governor_yearly.3090.unlanded } } - + theme = administrative override_background = { trigger = { @@ -7954,11 +8009,11 @@ ep3_governor_yearly.3090 = { camera = camera_event_horse_left } lower_right_portrait = scope:liege - + trigger = { age >= 8 top_liege != this - government_allows = administrative + government_has_mechanic = administrative exists = domicile trigger_if = { limit = { @@ -7982,7 +8037,7 @@ ep3_governor_yearly.3090 = { has_ep3_dlc_trigger = yes basic_is_valid_for_yearly_events_trigger = yes is_at_war = no - + #Capital is not a border province NOT = { scope:root_capital_temp.county = { @@ -7996,7 +8051,7 @@ ep3_governor_yearly.3090 = { scope:root_capital_temp.county = { culture = root.top_liege.capital_county.culture } - + OR = { scope:root_capital_temp = { this = root.top_liege.capital_province @@ -8135,8 +8190,8 @@ ep3_governor_yearly.3090 = { flavor = ep3_governor_yearly.3090.a.flavor add_gold = major_gold_value change_influence = miniscule_influence_loss - - stress_impact = { + + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain humble = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -8157,7 +8212,7 @@ ep3_governor_yearly.3090 = { } } } - + #Expand your local investments option = { @@ -8207,7 +8262,7 @@ ep3_governor_yearly.3090 = { } remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_gain fickle = minor_stress_impact_gain } @@ -8267,7 +8322,7 @@ ep3_governor_yearly.3090 = { target = root opinion = 10 } - + } } else = { @@ -8346,7 +8401,7 @@ ep3_governor_yearly.3090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain temperate = minor_stress_impact_gain } @@ -8403,7 +8458,7 @@ scripted_trigger ep3_governor_yearly_3100_messenger_trigger = { is_spouse_of = scope:liege } } - + } scripted_trigger ep3_governor_yearly_3100_crappy_liege_trigger = { @@ -8464,7 +8519,7 @@ ep3_governor_yearly.3100 = { desc = ep3_governor_yearly.3100.desc_governors } } - + theme = administrative left_portrait = { @@ -8476,14 +8531,14 @@ ep3_governor_yearly.3100 = { animation = obsequious_bow } lower_right_portrait = scope:liege - + trigger = { NOT = { - has_government = celestial_government + government_has_flag = government_is_celestial } age >= 12 top_liege != this - government_allows = administrative + government_has_mechanic = administrative OR = { is_landed = yes is_landless_administrative = yes @@ -8500,7 +8555,7 @@ ep3_governor_yearly.3100 = { #Governors of empire suck liege = { any_vassal = { - government_allows = administrative + government_has_mechanic = administrative is_landed = yes add_to_temporary_list = admin_vassals } @@ -8761,7 +8816,7 @@ ep3_governor_yearly.3100 = { reason = governor_efficiency change_influence = major_influence_gain add_prestige = medium_prestige_gain - + custom_tooltip = ep3_following_governorship_example_tooltip if = { limit = { @@ -8811,7 +8866,7 @@ ep3_governor_yearly.3100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain diligent = major_stress_impact_loss just = minor_stress_impact_loss @@ -8895,7 +8950,7 @@ ep3_governor_yearly.3100 = { limit = { ep3_governor_yearly_3100_crappy_liege_trigger = yes top_liege = this - + } scope:liege = { send_interface_message = { @@ -8903,7 +8958,7 @@ ep3_governor_yearly.3100 = { title = msg_governor_upset_about_skill.t desc = msg_governor_upset_about_skill.desc right_icon = scope:root_scope - + reverse_add_opinion = { modifier = frustrated_opinion target = scope:root_scope @@ -8916,7 +8971,7 @@ ep3_governor_yearly.3100 = { limit = { ep3_governor_yearly_3100_crappy_liege_trigger = yes top_liege != this - + } scope:liege = { send_interface_message = { @@ -8924,7 +8979,7 @@ ep3_governor_yearly.3100 = { title = msg_governor_upset_about_governance.t desc = msg_governor_upset_about_governance.desc right_icon = scope:root_scope - + reverse_add_opinion = { modifier = frustrated_opinion target = scope:root_scope @@ -8945,7 +9000,7 @@ ep3_governor_yearly.3100 = { title = msg_governor_upset_about_insolvency.t desc = msg_governor_upset_about_insolvency.desc right_icon = scope:root_scope - + reverse_add_opinion = { modifier = frustrated_opinion target = scope:root_scope @@ -8961,7 +9016,7 @@ ep3_governor_yearly.3100 = { title = msg_governor_upset_about_bad_govs.t desc = msg_governor_upset_about_bad_govs.desc right_icon = scope:root_scope - + reverse_add_opinion = { modifier = frustrated_opinion target = scope:root_scope @@ -8971,7 +9026,7 @@ ep3_governor_yearly.3100 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = miniscule_stress_impact_loss shy = miniscule_stress_impact_gain craven = minor_stress_impact_gain @@ -9024,7 +9079,7 @@ ep3_governor_yearly.3100 = { add_gold = minor_gold_value add_prestige = medium_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss just = medium_stress_impact_gain generous = medium_stress_impact_gain @@ -9070,7 +9125,7 @@ ep3_governor_yearly.3100 = { 5 = { trigger = { has_character_flag = ep3_governor_yearly_3100_reclusive - + } add_trait = reclusive } @@ -9147,7 +9202,7 @@ ep3_governor_yearly.3100 = { add_trait = depressed_1 } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = miniscule_stress_impact_loss content = miniscule_stress_impact_loss depressed_1 = miniscule_stress_impact_loss @@ -9179,4 +9234,4 @@ ep3_governor_yearly.3100 = { } } } - + diff --git a/events/dlc/ep3/ep3_governor_yearly_8.txt b/events/dlc/ep3/ep3_governor_yearly_8.txt index 6c638bcb2..8d5a102de 100644 --- a/events/dlc/ep3/ep3_governor_yearly_8.txt +++ b/events/dlc/ep3/ep3_governor_yearly_8.txt @@ -294,8 +294,10 @@ ep3_governor_yearly.8010 = { trigger = { NOT = { scope:governor_request ?= flag:candidacy } exists = scope:title + exists = scope:their_title exists = scope:title_receiver scope:their_title = { has_order_of_succession = appointment } + scope:title = { has_order_of_succession = appointment } } modifier = { add = 10 @@ -865,7 +867,7 @@ ep3_governor_yearly.8030 = { option = { # Tax it name = ep3_governor_yearly.8030.a add_treasury_or_gold = medium_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain compassionate = minor_stress_impact_gain just = minor_stress_impact_gain @@ -892,7 +894,7 @@ ep3_governor_yearly.8030 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain callous = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -908,7 +910,7 @@ ep3_governor_yearly.8030 = { option = { # Leave it name = ep3_governor_yearly.8030.c - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain greedy = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -1025,7 +1027,7 @@ ep3_governor_yearly.8040 = { modifier = respect_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -1049,7 +1051,7 @@ ep3_governor_yearly.8040 = { modifier = annoyed_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -1105,7 +1107,7 @@ ep3_governor_yearly.8040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain humble = minor_stress_impact_gain calm = minor_stress_impact_gain @@ -1131,7 +1133,7 @@ ep3_governor_yearly.8040 = { modifier = ep3_governor_yearly_8040_shirker_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain just = minor_stress_impact_gain } @@ -1189,7 +1191,7 @@ ep3_governor_yearly.8050 = { trigger = { has_ep3_dlc_trigger = yes - government_has_flag = government_is_administrative + government_has_mechanic = administrative is_available_adult = yes is_governor = yes top_liege = { @@ -1232,7 +1234,7 @@ ep3_governor_yearly.8050 = { modifier = ep3_governor_yearly_8050_imperial_recruiter_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain content = minor_stress_impact_gain } @@ -1252,7 +1254,7 @@ ep3_governor_yearly.8050 = { modifier = ep3_governor_yearly_8050_imperial_fortification_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -1274,7 +1276,7 @@ ep3_governor_yearly.8050 = { modifier = ep3_governor_yearly_8050_imperial_resources_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain humble = minor_stress_impact_gain } @@ -1289,7 +1291,7 @@ ep3_governor_yearly.8050 = { option = { # Nothing name = ep3_governor_yearly.8050.d - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain ambitious = minor_stress_impact_gain } @@ -1399,7 +1401,7 @@ ep3_governor_yearly.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain diligent = medium_stress_impact_gain just = minor_stress_impact_gain @@ -1458,7 +1460,7 @@ ep3_governor_yearly.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain diligent = medium_stress_impact_gain just = minor_stress_impact_gain @@ -1480,7 +1482,7 @@ ep3_governor_yearly.8060 = { modifier = ep3_bolstered_governor_treasury_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_gain greedy = medium_stress_impact_gain arrogant = medium_stress_impact_gain @@ -1496,7 +1498,7 @@ ep3_governor_yearly.8060 = { option = { # Do nothing name = ep3_governor_yearly.8060.d - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_gain arbitrary = medium_stress_impact_gain ambitious = minor_stress_impact_gain @@ -1627,7 +1629,7 @@ ep3_governor_yearly.8062 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain } ai_chance = { @@ -1702,7 +1704,7 @@ ep3_governor_yearly.8062 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain } ai_chance = { @@ -1769,7 +1771,7 @@ ep3_governor_yearly.8062 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } ai_chance = { @@ -1788,7 +1790,7 @@ ep3_governor_yearly.8062 = { modifier = suspicious_opinion opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain stubborn = minor_stress_impact_gain } @@ -1846,7 +1848,7 @@ ep3_governor_yearly.8070 = { name = ep3_governor_yearly.8070.a increase_governance_effect = { VALUE = 10 } add_stewardship_skill = 1 - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = medium_stress_impact_gain impatient = medium_stress_impact_gain @@ -1864,7 +1866,7 @@ ep3_governor_yearly.8070 = { option = { # Find someone to help name = ep3_governor_yearly.8070.b remove_short_term_gold = medium_gold_value - stress_impact = { + stress_and_fulfillment_impact = { lazy = major_stress_impact_loss stubborn = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -1885,7 +1887,7 @@ ep3_governor_yearly.8070 = { modifier = ep3_governor_yearly_8070_ignore_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss lazy = massive_stress_impact_loss diligent = minor_stress_impact_gain @@ -1941,6 +1943,7 @@ ep3_governor_yearly.8080 = { location = root.capital_province culture = root.capital_county.culture faith = root.capital_county.faith + rite = root.capital_county.rite dynasty = none save_scope_as = magistrate } @@ -1953,7 +1956,7 @@ ep3_governor_yearly.8080 = { modifier = ep3_governor_yearly_8080_tense_bureaucracy_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_gain greedy = minor_stress_impact_gain } @@ -1979,7 +1982,7 @@ ep3_governor_yearly.8080 = { killer = root } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain forgiving = minor_stress_impact_gain } @@ -2000,7 +2003,7 @@ ep3_governor_yearly.8080 = { years = 10 } scope:magistrate = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain generous = minor_stress_impact_gain diligent = minor_stress_impact_gain @@ -2032,7 +2035,7 @@ ep3_governor_yearly.8080 = { modifier = grateful_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain vengeful = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -2177,7 +2180,7 @@ ep3_governor_yearly.8090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain just = minor_stress_impact_gain } @@ -2228,7 +2231,7 @@ ep3_governor_yearly.8090 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain shy = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -2262,7 +2265,7 @@ ep3_governor_yearly.8090 = { OPINION = default_rival_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain generous = minor_stress_impact_gain diligent = minor_stress_impact_gain @@ -2300,7 +2303,7 @@ ep3_governor_yearly.8090 = { OPINION = default_rival_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain vengeful = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -2430,7 +2433,7 @@ ep3_governor_yearly.8100 = { CHARACTER = scope:governor OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_gain forgiving = minor_stress_impact_gain } @@ -2457,7 +2460,7 @@ ep3_governor_yearly.8100 = { CHARACTER = scope:governor OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain ambitious = minor_stress_impact_gain } @@ -2500,7 +2503,7 @@ ep3_governor_yearly.8100 = { option = { # Ignore name = ep3_governor_yearly.8100.d - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain } @@ -2678,7 +2681,7 @@ ep3_governor_yearly.8110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain content = minor_stress_impact_gain } @@ -2703,7 +2706,7 @@ ep3_governor_yearly.8110 = { modifier = unfriendly_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain } @@ -2728,7 +2731,7 @@ ep3_governor_yearly.8110 = { modifier = unfriendly_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain } @@ -2760,7 +2763,7 @@ ep3_governor_yearly.8110 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_gain forgiving = minor_stress_impact_gain } @@ -2918,7 +2921,7 @@ ep3_governor_yearly.8120 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_gain callous = medium_stress_impact_gain @@ -2941,7 +2944,7 @@ ep3_governor_yearly.8120 = { years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -2965,7 +2968,7 @@ ep3_governor_yearly.8120 = { modifier = ep3_governor_yearly_8120_relief_rejected_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain compassionate = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -3027,7 +3030,7 @@ ep3_governor_yearly.8130 = { modifier = ep3_governor_yearly_8130_raised_taxes_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain honest = medium_stress_impact_gain just = medium_stress_impact_gain @@ -3048,7 +3051,7 @@ ep3_governor_yearly.8130 = { modifier = ep3_governor_yearly_8130_special_levy_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain honest = minor_stress_impact_gain just = minor_stress_impact_gain @@ -3071,7 +3074,7 @@ ep3_governor_yearly.8130 = { modifier = ep3_governor_yearly_8130_raised_almonage_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_gain arrogant = medium_stress_impact_gain arbitrary = medium_stress_impact_gain @@ -3088,7 +3091,7 @@ ep3_governor_yearly.8130 = { option = { # Do nothing name = ep3_governor_yearly.8130.d - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = minor_stress_impact_gain arrogant = minor_stress_impact_gain @@ -3169,13 +3172,14 @@ ep3_governor_yearly.8140 = { dynasty = none culture = scope:estate.domicile_location.county.culture faith = scope:estate.domicile_location.county.faith + rite = scope:estate.domicile_location.county.rite gender_female_chance = { if = { - limit = { scope:estate_county.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { scope:estate_county.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { - limit = { scope:estate_county.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { scope:estate_county.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { add = 50 } @@ -3195,7 +3199,7 @@ ep3_governor_yearly.8140 = { CHARACTER = scope:estate_owner OPINION = default_rival_opinion } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_gain arrogant = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -3256,7 +3260,7 @@ ep3_governor_yearly.8140 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_gain arrogant = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -3284,7 +3288,7 @@ ep3_governor_yearly.8140 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain humble = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -3306,7 +3310,7 @@ ep3_governor_yearly.8140 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain compassionate = minor_stress_impact_gain } @@ -3569,7 +3573,7 @@ ep3_governor_yearly.8150 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain just = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -3593,7 +3597,7 @@ ep3_governor_yearly.8150 = { name = ep3_governor_yearly.8150.b remove_treasury_or_gold = medium_treasury_or_gold_value ep3_governor_yearly_8150_county_modifier_effect = { MODIFIER = concession } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain stubborn = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -3657,7 +3661,7 @@ ep3_governor_yearly.8150 = { scope:targeting_faction = { add_faction_discontent = { -10 -20 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain just = minor_stress_impact_gain forgiving = medium_stress_impact_gain @@ -3691,7 +3695,7 @@ ep3_governor_yearly.8150 = { } title_join_faction = scope:targeting_faction } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_gain craven = minor_stress_impact_gain impatient = minor_stress_impact_gain @@ -3880,14 +3884,15 @@ ep3_governor_yearly.8160 = { template = pool_repopulate_stewardship culture = scope:minority_county.culture faith = scope:minority_county.faith + rite = scope:minority_county.rite location = root.location gender_female_chance = { if = { - limit = { scope:minority_county.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { scope:minority_county.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { - limit = { scope:minority_county.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { scope:minority_county.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { @@ -3923,7 +3928,7 @@ ep3_governor_yearly.8160 = { desc = cultural_acceptance_promoted_bureaucrats } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain arrogant = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -3940,7 +3945,7 @@ ep3_governor_yearly.8160 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain lazy = minor_stress_impact_gain @@ -3980,7 +3985,7 @@ ep3_governor_yearly.8160 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain humble = minor_stress_impact_gain just = minor_stress_impact_gain @@ -3996,7 +4001,7 @@ ep3_governor_yearly.8160 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain cynical = minor_stress_impact_gain just = minor_stress_impact_gain @@ -4296,7 +4301,7 @@ ep3_governor_yearly.8170 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain callous = medium_stress_impact_gain } @@ -4381,7 +4386,7 @@ ep3_governor_yearly.8170 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -4451,7 +4456,7 @@ ep3_governor_yearly.8170 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = minor_stress_impact_gain vengeful = minor_stress_impact_gain } @@ -4471,7 +4476,7 @@ ep3_governor_yearly.8170 = { modifier = annoyed_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain compassionate = minor_stress_impact_gain diligent = minor_stress_impact_gain diff --git a/events/dlc/ep3/ep3_interactions_events.txt b/events/dlc/ep3/ep3_interactions_events.txt index 535ccf7f0..51fea24b7 100644 --- a/events/dlc/ep3/ep3_interactions_events.txt +++ b/events/dlc/ep3/ep3_interactions_events.txt @@ -32,7 +32,7 @@ ep3_interactions_events.0001 = { change_to_administrative_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -135,7 +135,7 @@ ep3_interactions_events.0002 = { change_to_administrative_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -246,7 +246,7 @@ ep3_interactions_events.0005 = { change_to_administrative_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -547,9 +547,9 @@ ep3_interactions_events.0030 = { # By Jason Cantalini trigger = { culture = { has_cultural_pillar = language_greek } OR = { - has_title = title:e_byzantium + is_roman_emperor_trigger = yes top_liege = { - has_title = title:e_byzantium + is_roman_emperor_trigger = yes } } } @@ -952,7 +952,7 @@ ep3_interactions_events.0031 = { # By Jason Cantalini } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain forgiving = medium_stress_impact_gain arbitrary = miniscule_stress_impact_gain @@ -1004,7 +1004,7 @@ ep3_interactions_events.0031 = { # By Jason Cantalini } text = ep3_interactions_events.0031_kind } - stress_impact = { + stress_and_fulfillment_impact = { just = miniscule_stress_impact_gain ambitious = miniscule_stress_impact_gain stubborn = medium_stress_impact_gain @@ -1088,9 +1088,7 @@ ep3_interactions_events.0031 = { # By Jason Cantalini } else_if = { limit = { - any_neighboring_top_liege_realm_owner = { - exists = this - } + any_neighboring_top_liege_realm_owner = {} } random_neighboring_top_liege_realm_owner = { save_scope_as = destination_owner @@ -1509,7 +1507,7 @@ ep3_interactions_events.0111 = { animation = thinking } right_portrait = { - character = scope:actor + character = scope:puppet_or_actor animation = bribing } artifact = { @@ -1525,14 +1523,14 @@ ep3_interactions_events.0111 = { scope:recipient.prestige_level > 1 scope:recipient.prestige_level < 3 } - scope:actor = { + scope:puppet_or_actor = { random_held_title = { title_tier = county limit = { NOR = { - scope:actor.primary_title ?= this - scope:actor.capital_county ?= this - scope:actor.capital_county.duchy ?= this.duchy + scope:puppet_or_actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + scope:puppet_or_actor.capital_county.duchy ?= this.duchy } is_noble_family_title = no is_landless_type_title = no @@ -1544,18 +1542,18 @@ ep3_interactions_events.0111 = { else_if = { limit = { scope:recipient.prestige_level > 2 - scope:actor = { + scope:puppet_or_actor = { any_held_title = { title_tier = duchy NOR = { - scope:actor.primary_title ?= this - scope:actor.capital_county.de_jure_liege ?= this + scope:puppet_or_actor.primary_title ?= this + scope:puppet_or_actor.capital_county.de_jure_liege ?= this } any_de_jure_county = { - holder.top_liege = scope:actor + holder.top_liege = scope:puppet_or_actor NOR = { - scope:actor.capital_county ?= this - scope:actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + scope:puppet_or_actor.primary_title ?= this } } is_noble_family_title = no @@ -1563,19 +1561,19 @@ ep3_interactions_events.0111 = { } } } - scope:actor = { + scope:puppet_or_actor = { random_held_title = { title_tier = duchy limit = { NOR = { - scope:actor.primary_title ?= this - scope:actor.capital_county.de_jure_liege ?= this + scope:puppet_or_actor.primary_title ?= this + scope:puppet_or_actor.capital_county.de_jure_liege ?= this } any_de_jure_county = { - holder.top_liege = scope:actor + holder.top_liege = scope:puppet_or_actor NOR = { - scope:actor.capital_county ?= this - scope:actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + scope:puppet_or_actor.primary_title ?= this } } is_noble_family_title = no @@ -1584,10 +1582,10 @@ ep3_interactions_events.0111 = { add_to_list = purchased_titles every_de_jure_county = { limit = { - holder.top_liege = scope:actor + holder.top_liege = scope:puppet_or_actor NOR = { - scope:actor.capital_county ?= this - scope:actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + scope:puppet_or_actor.primary_title ?= this } } add_to_list = purchased_titles @@ -1596,15 +1594,19 @@ ep3_interactions_events.0111 = { } } else = { - scope:actor = { + scope:puppet_or_actor = { random_held_title = { title_tier >= county limit = { NOR = { - scope:actor.primary_title ?= this - scope:actor.capital_county ?= this - scope:actor.capital_county.duchy ?= duchy - any_in_de_jure_hierarchy = { scope:actor.capital_county ?= this } + scope:puppet_or_actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + AND = { + # Kingdoms and above have no duchy to compare + tier <= tier_duchy + scope:puppet_or_actor.capital_county.duchy ?= duchy + } + any_in_de_jure_hierarchy = { scope:puppet_or_actor.capital_county ?= this } } is_noble_family_title = no is_landless_type_title = no @@ -1614,10 +1616,10 @@ ep3_interactions_events.0111 = { limit = { tier = tier_duchy } every_de_jure_county = { limit = { - holder.top_liege = scope:actor + holder.top_liege = scope:puppet_or_actor NOR = { - scope:actor.capital_county ?= this - scope:actor.primary_title ?= this + scope:puppet_or_actor.capital_county ?= this + scope:puppet_or_actor.primary_title ?= this } } add_to_list = purchased_titles @@ -1636,7 +1638,7 @@ ep3_interactions_events.0111 = { save_scope_as = target } - scope:actor = { + scope:puppet_or_actor = { every_character_war = { add_to_list = actor_wars } @@ -1651,7 +1653,7 @@ ep3_interactions_events.0111 = { every_in_list = { list = actor_wars limit = { - primary_defender = scope:actor + primary_defender = scope:puppet_or_actor } add_to_list = join_as_defender remove_from_list = actor_wars @@ -1659,7 +1661,7 @@ ep3_interactions_events.0111 = { every_in_list = { list = actor_wars limit = { - primary_attacker = scope:actor + primary_attacker = scope:puppet_or_actor } add_to_list = join_as_attacker remove_from_list = actor_wars @@ -1674,9 +1676,9 @@ ep3_interactions_events.0111 = { prestige_level >= 2 scope:new_primary_title = { NOR = { - this = scope:actor.primary_title - this = scope:actor.capital_county - duchy = scope:actor.capital_county.duchy + this = scope:puppet_or_actor.primary_title + this = scope:puppet_or_actor.capital_county + duchy = scope:puppet_or_actor.capital_county.duchy } } } @@ -1688,7 +1690,7 @@ ep3_interactions_events.0111 = { show_as_tooltip = { # Determine hierarchy ep3_become_landed_save_liege_effect = { - TITLE_GIVER = scope:actor + TITLE_GIVER = scope:puppet_or_actor ALWAYS_INDEPENDENT = no TITLE_LIST = purchased_titles } @@ -1701,7 +1703,7 @@ ep3_interactions_events.0111 = { ENNOBLED_ADVENTURER = flag:yes } } - scope:actor = { + scope:puppet_or_actor = { trigger_event = ep3_interactions_events.0112 } custom_tooltip = ep3_interactions_events.0111.join_wars @@ -1820,7 +1822,7 @@ ep3_interactions_events.0111 = { } min = 50 } - scope:actor.culture != scope:recipient.culture + scope:puppet_or_actor.culture != scope:recipient.culture trigger_if = { limit = { scope:new_primary_title.tier = tier_county } scope:new_primary_title.culture = scope:recipient.culture @@ -1837,7 +1839,7 @@ ep3_interactions_events.0111 = { save_temporary_scope_value_as = { name = acceptance value = { - value = "cultural_acceptance(scope:actor.culture)" + value = "cultural_acceptance(scope:puppet_or_actor.culture)" divide = 25 ceiling = yes } @@ -1868,7 +1870,7 @@ ep3_interactions_events.0111 = { } min = 50 } - scope:actor.faith != scope:recipient.faith + scope:puppet_or_actor.faith != scope:recipient.faith trigger_if = { limit = { scope:new_primary_title.tier = tier_county } scope:new_primary_title.faith = scope:recipient.faith @@ -1884,7 +1886,7 @@ ep3_interactions_events.0111 = { scope:recipient.faith = { save_temporary_scope_value_as = { name = hostility - value = "faith_hostility_level(scope:actor.faith)" + value = "faith_hostility_level(scope:puppet_or_actor.faith)" } } } @@ -1933,7 +1935,7 @@ ep3_interactions_events.0111 = { name = negotiation_offer value = flag:artifact } - scope:actor = { + scope:puppet_or_actor = { trigger_event = ep3_interactions_events.0112 } custom_tooltip = ep3_interactions_events.0111.join_wars @@ -1949,22 +1951,22 @@ ep3_interactions_events.0111 = { option = { name = ep3_interactions_events.0111.c trigger = { - scope:actor = { + scope:puppet_or_actor = { NOT = { is_allied_to = scope:recipient } } } custom_tooltip = ep3_interactions_events.0111.actor_decides show_as_tooltip = { - scope:actor = { + scope:puppet_or_actor = { create_alliance = { target = scope:recipient - allied_through_owner = scope:actor + allied_through_owner = scope:puppet_or_actor allied_through_target = scope:recipient } } scope:recipient = { add_opinion = { - target = scope:actor + target = scope:puppet_or_actor modifier = event_negotiated_alliance_opinion } } @@ -1973,7 +1975,7 @@ ep3_interactions_events.0111 = { name = negotiation_offer value = flag:alliance } - scope:actor = { + scope:puppet_or_actor = { trigger_event = ep3_interactions_events.0112 } custom_tooltip = ep3_interactions_events.0111.join_wars @@ -1989,21 +1991,21 @@ ep3_interactions_events.0111 = { option = { name = ep3_interactions_events.0111.d trigger = { - scope:actor = { + scope:puppet_or_actor = { NOT = { is_contact_of = scope:recipient } } } custom_tooltip = ep3_interactions_events.0111.actor_decides show_as_tooltip = { scope:recipient = { - add_contact = scope:actor + add_contact = scope:puppet_or_actor } } save_scope_value_as = { name = negotiation_offer value = flag:contact_list } - scope:actor = { + scope:puppet_or_actor = { trigger_event = ep3_interactions_events.0112 } custom_tooltip = ep3_interactions_events.0111.join_wars @@ -2037,7 +2039,7 @@ ep3_interactions_events.0111 = { } } } - scope:actor = { + scope:puppet_or_actor = { trigger_event = ep3_interactions_events.0112 } custom_tooltip = ep3_interactions_events.0111.join_wars @@ -2056,12 +2058,12 @@ ep3_interactions_events.0111 = { #Refuse all for 5 years option = { name = ep3_interactions_events.0111.refuse_5_years - scope:actor = { + scope:puppet_or_actor = { send_interface_toast = { - left_icon = scope:actor + left_icon = scope:puppet_or_actor right_icon = scope:recipient title = ep3_interactions_events.0111.refuse - scope:actor = { + scope:puppet_or_actor = { add_opinion = { target = scope:recipient modifier = rejected_hiring_as_mercenaries @@ -2069,6 +2071,19 @@ ep3_interactions_events.0111 = { } } } + if = { + limit = { + scope:is_puppet_action ?= yes + scope:actor != scope:recipient + } + scope:actor = { + send_interface_toast = { + title = ep3_interactions_events.0111.refuse_puppeteer + left_icon = scope:puppet_or_actor + right_icon = scope:recipient + } + } + } custom_tooltip = ep3_interactions_events.0111.refuse_5_years.tt add_character_flag = { @@ -2084,12 +2099,12 @@ ep3_interactions_events.0111 = { #Refuse option = { name = ep3_interactions_events.0111.f - scope:actor = { + scope:puppet_or_actor = { send_interface_toast = { - left_icon = scope:actor + left_icon = scope:puppet_or_actor right_icon = scope:recipient title = ep3_interactions_events.0111.refuse - scope:actor = { + scope:puppet_or_actor = { add_opinion = { target = scope:recipient modifier = rejected_hiring_as_mercenaries @@ -2097,6 +2112,19 @@ ep3_interactions_events.0111 = { } } } + if = { + limit = { + scope:is_puppet_action ?= yes + scope:actor != scope:recipient + } + scope:actor = { + send_interface_toast = { + title = ep3_interactions_events.0111.refuse_puppeteer + left_icon = scope:puppet_or_actor + right_icon = scope:recipient + } + } + } ai_chance = { base = 1 @@ -2141,7 +2169,7 @@ ep3_interactions_events.0112 = { #Accept option = { name = ep3_interactions_events.0112.a - scope:actor = { + scope:puppet_or_actor = { pay_treasury_or_gold = { target = scope:recipient value = ep3_hire_laamp_mercs_cost_value @@ -2156,7 +2184,7 @@ ep3_interactions_events.0112 = { flag:land = { # Determine hierarchy ep3_become_landed_save_liege_effect = { - TITLE_GIVER = scope:actor + TITLE_GIVER = scope:puppet_or_actor ALWAYS_INDEPENDENT = no TITLE_LIST = purchased_titles } @@ -2169,18 +2197,18 @@ ep3_interactions_events.0112 = { ENNOBLED_ADVENTURER = flag:yes } # Extra purchase land specific - scope:actor = { - stress_impact = { + scope:puppet_or_actor = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain lazy = minor_stress_impact_loss } } # Effects on land giver - scope:actor = { add_legitimacy = -15 } + scope:puppet_or_actor = { add_legitimacy = -15 } # Messages for nearby players create_landed_ruler_message_effect = { LANDED = scope:recipient - FLAVOR_CHAR = scope:actor + FLAVOR_CHAR = scope:puppet_or_actor FLAVOR_TITLE = scope:new_primary_title REASON = flag:purchased } @@ -2191,16 +2219,16 @@ ep3_interactions_events.0112 = { } } flag:alliance = { - scope:actor = { + scope:puppet_or_actor = { create_alliance = { target = scope:recipient - allied_through_owner = scope:actor + allied_through_owner = scope:puppet_or_actor allied_through_target = scope:recipient } } scope:recipient = { add_opinion = { - target = scope:actor + target = scope:puppet_or_actor modifier = event_negotiated_alliance_opinion } } @@ -2217,13 +2245,13 @@ ep3_interactions_events.0112 = { } } } - scope:actor = { + scope:puppet_or_actor = { remove_short_term_gold = minor_gold_value } } flag:contact_list = { scope:recipient = { - add_contact = scope:actor + add_contact = scope:puppet_or_actor } } } @@ -2238,7 +2266,7 @@ ep3_interactions_events.0112 = { scope:recipient = { set_variable = { name = joined_as_mercenary - value = scope:actor + value = scope:puppet_or_actor } } @@ -2317,7 +2345,7 @@ ep3_interactions_events.0112 = { save_temporary_scope_value_as = { name = acceptance value = { - value = "cultural_acceptance(scope:actor.culture)" + value = "cultural_acceptance(scope:puppet_or_actor.culture)" divide = 25 ceiling = yes } @@ -2352,14 +2380,14 @@ ep3_interactions_events.0112 = { scope:recipient.faith = { save_temporary_scope_value_as = { name = hostility - value = "faith_hostility_level(scope:actor.faith)" + value = "faith_hostility_level(scope:puppet_or_actor.faith)" } } } modifier = { factor = 0 scope:negotiation_offer = flag:provisions - scope:actor = { + scope:puppet_or_actor = { short_term_gold < minor_gold_value } } @@ -2401,9 +2429,9 @@ ep3_interactions_events.0112 = { send_interface_message = { type = event_diplomacy_bad title = ep3_interactions_events.0112.refuse - left_icon = scope:actor + left_icon = scope:puppet_or_actor add_opinion = { - target = scope:actor + target = scope:puppet_or_actor modifier = insulted_opinion } } @@ -2435,7 +2463,7 @@ ep3_interactions_events.0112 = { scope:recipient = { set_variable = { name = joined_as_mercenary - value = scope:actor + value = scope:puppet_or_actor } } ai_chance = { @@ -2443,7 +2471,7 @@ ep3_interactions_events.0112 = { modifier = { factor = 0 OR = { - scope:actor = { + scope:puppet_or_actor = { is_ai = no } scope:recipient = { @@ -2947,7 +2975,7 @@ ep3_interactions_events.0500 = { type = letter_event opening = ep3_interactions_events.0500.opening desc = ep3_interactions_events.0500.desc - sender = scope:actor + sender = scope:puppet_or_actor trigger = { is_ai = no } @@ -2962,13 +2990,13 @@ ep3_interactions_events.0500 = { show_as_unavailable = { always = yes } custom_description_no_bullet = { text = evict_adventurer_consequences_tt - object = scope:actor + object = scope:puppet_or_actor subject = scope:recipient } - scope:actor = { custom_tooltip = evict_adventurer_casus_belli_tt } + scope:puppet_or_actor = { custom_tooltip = evict_adventurer_casus_belli_tt } show_as_tooltip = { reverse_add_opinion = { - target = scope:actor + target = scope:puppet_or_actor modifier = eviction_ignored_opinion } } @@ -2981,17 +3009,17 @@ ep3_interactions_events.0500 = { } custom_description_no_bullet = { text = evict_adventurer_consequences_tt - object = scope:actor + object = scope:puppet_or_actor subject = scope:recipient } - scope:actor = { custom_tooltip = evict_adventurer_casus_belli_tt } + scope:puppet_or_actor = { custom_tooltip = evict_adventurer_casus_belli_tt } show_as_tooltip = { reverse_add_opinion = { - target = scope:actor + target = scope:puppet_or_actor modifier = eviction_ignored_opinion } } - scope:actor = { + scope:puppet_or_actor = { custom_tooltip = evict_adventurer_forced_tt custom_tooltip = evict_adventurer_forced_tt.part_2 } @@ -3078,6 +3106,12 @@ ep3_interactions_events.0501 = { } remove_variable = adventurer_expeller trigger_event = ep3_interactions_events.0502 + scope:expeller = { save_scope_as = puppet_or_actor } + save_scope_as = recipient + notify_puppeteer_of_outcome_effect = { + TYPE = event_toast_effect_bad + TITLE = ep3_interactions_events.0501.toast_puppeteer + } } } @@ -3120,19 +3154,57 @@ ep3_interactions_events.0502 = { } } scope:expeller = { + domicile.domicile_location.county.holder.top_liege ?= { + save_scope_as = realm_expelled_from + } random_neighboring_and_across_water_top_liege_realm_owner = { limit = { + NOR = { + reverse_has_opinion_modifier = { + target = root + modifier = eviction_ignored_opinion + } + reverse_has_opinion_modifier = { + target = root + modifier = demanded_eviction_opinion + } + } NOR = { has_imprisonment_reason = scope:adventurer has_execute_reason = scope:adventurer has_banish_reason = scope:adventurer } } + alternative_limit = { + NOR = { + reverse_has_opinion_modifier = { + target = root + modifier = eviction_ignored_opinion + } + reverse_has_opinion_modifier = { + target = root + modifier = demanded_eviction_opinion + } + } + } save_scope_as = destination_realm_owner } + random_character_to_title_neighboring_and_across_water_county = { + limit = { holder.top_liege = scope:destination_realm_owner } + save_scope_as = expel_destination + } + if = { + limit = { NOT = { exists = scope:expel_destination } } + scope:destination_realm_owner = { + random_realm_county = { + limit = { is_landless_type_title = no } + save_scope_as = expel_destination + } + } + } } start_travel_plan = { - destination = scope:destination_realm_owner.capital_province + destination = scope:expel_destination.title_province return_trip = no } } @@ -3552,7 +3624,7 @@ ep3_interactions_events.0600 = { days = 30 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss ambitious = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain @@ -3676,7 +3748,7 @@ ep3_interactions_events.0600 = { flag = supporter_response_insult days = 30 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss wrathful = minor_stress_impact_loss fickle = minor_stress_impact_loss @@ -3765,7 +3837,7 @@ ep3_interactions_events.0600 = { flag = supporter_response_hook days = 30 } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss generous = minor_stress_impact_loss just = minor_stress_impact_loss @@ -3857,7 +3929,7 @@ ep3_interactions_events.0600 = { flag = supporter_response_friendship days = 30 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = miniscule_stress_impact_loss gregarious = miniscule_stress_impact_loss shy = minor_stress_impact_gain @@ -3930,7 +4002,7 @@ ep3_interactions_events.0600 = { flag = supporter_response_gift days = 30 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } ai_chance = { @@ -3974,7 +4046,7 @@ ep3_interactions_events.0600 = { days = 30 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss fickle = minor_stress_impact_loss arbitrary = minor_stress_impact_loss @@ -4068,9 +4140,9 @@ ep3_interactions_events.0601 = { triggered_desc = { trigger = { scope:new_landed_admin = { - OR = { - has_character_flag = supporter_response_insult - has_character_flag = supporter_response_ignore + has_variable = { + name = supporter_response_insult + name = supporter_response_ignore } } } @@ -4083,10 +4155,10 @@ ep3_interactions_events.0601 = { triggered_desc = { trigger = { scope:new_landed_admin = { - OR = { - has_character_flag = supporter_response_ally_success - has_character_flag = supporter_response_ally_fail - has_character_flag = supporter_response_ally_player + has_variable = { + name = supporter_response_ally_success + name = supporter_response_ally_fail + name = supporter_response_ally_player } } } @@ -4210,9 +4282,9 @@ ep3_interactions_events.0601 = { name = { trigger = { scope:new_landed_admin = { - NOR = { - has_character_flag = supporter_response_insult - has_character_flag = supporter_response_ignore + has_none_of_variables = { + name = supporter_response_insult + name = supporter_response_ignore } } } @@ -4221,9 +4293,9 @@ ep3_interactions_events.0601 = { name = { trigger = { scope:new_landed_admin = { - OR = { - has_character_flag = supporter_response_insult - has_character_flag = supporter_response_ignore + has_variable = { + name = supporter_response_insult + name = supporter_response_ignore } } } @@ -4249,7 +4321,7 @@ ep3_interactions_events.0601 = { target = scope:new_landed_admin opinion = 25 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain arrogant = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -4280,7 +4352,7 @@ ep3_interactions_events.0601 = { opinion = -25 } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain generous = minor_stress_impact_gain just = minor_stress_impact_gain @@ -4464,6 +4536,10 @@ ep3_interactions_events.0621 = { # Ask for Influence rejection letter event desc = ep3_interactions_events.0621.desc sender = scope:recipient + immediate = { + clerical_interaction_refusal_major_effect = yes + } + option = { name = ep3_interactions_events.0621.a } diff --git a/events/dlc/ep3/ep3_laamp_decision_events.txt b/events/dlc/ep3/ep3_laamp_decision_events.txt index 8fa5e3ae7..28357e8ca 100644 --- a/events/dlc/ep3/ep3_laamp_decision_events.txt +++ b/events/dlc/ep3/ep3_laamp_decision_events.txt @@ -171,11 +171,7 @@ scripted_trigger 1000_appropriate_visiting_partner_basic_trigger = { scripted_trigger 1000_is_a_nomadic_holding_trigger = { scope:visiting_location = { is_nomadic_location_trigger = yes - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } + holding_is_tribal = yes } } @@ -187,26 +183,21 @@ scripted_trigger 1000_time_to_go_home_trigger = { #Did we have, and are we done with the Church Holding option? trigger_if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } exists = scope:laamp_decision_finished_church_option } #Did we have, and are we done with the Castle Holding option? trigger_if = { limit = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } exists = scope:laamp_decision_finished_castle_option } #Did we have, and are we done with the City Holding option? trigger_if = { limit = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } exists = scope:laamp_decision_finished_craftsmen_option } @@ -240,10 +231,10 @@ scripted_trigger 1000_time_to_go_home_trigger = { #Don't sell levelling banners scripted_trigger 1000_is_unsellable_artifact_trigger = { - OR = { - has_variable = banner_house - has_variable = banner_dynasty - has_variable = 1025_treasure_map + has_variable = { + name = banner_house + name = banner_dynasty + name = 1025_treasure_map } } @@ -452,49 +443,32 @@ ep3_laamp_decision_event.1000 = { random_valid = { triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } desc = ep3_laamp_decision_event.1000.desc_intro_tribal_holding_01 } triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } desc = ep3_laamp_decision_event.1000.desc_intro_tribal_holding_02 } } triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } desc = ep3_laamp_decision_event.1000.desc_intro_church_holding } triggered_desc = { trigger = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } desc = ep3_laamp_decision_event.1000.desc_intro_castle_holding } triggered_desc = { trigger = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } desc = ep3_laamp_decision_event.1000.desc_intro_city_holding } @@ -528,9 +502,9 @@ ep3_laamp_decision_event.1000 = { has_variable = return_from_location NOT = { exists = scope:is_unique_location } #Block all RETURN outros for unique locations, they are handled in unique RETURN intro middle_of_year_season_trigger = yes #Light out - NOR = { - has_variable = 1000_is_currently_raining - has_variable = 1000_is_currently_snowing + has_none_of_variables = { + name = 1000_is_currently_raining + name = 1000_is_currently_snowing } scope:visiting_location = { geographical_region = world_europe_north } } @@ -580,9 +554,9 @@ ep3_laamp_decision_event.1000 = { trigger = { has_variable = return_from_location NOT = { exists = scope:is_unique_location } - NOR = { - has_variable = 1000_is_currently_raining - has_variable = 1000_is_currently_foggy + has_none_of_variables = { + name = 1000_is_currently_raining + name = 1000_is_currently_foggy } scope:visiting_location = { geographical_region = world_europe_west_britannia } } @@ -853,6 +827,7 @@ ep3_laamp_decision_event.1000 = { } desc = ep3_laamp_decision_event.1000.desc_outro_regional_east_africa_returned_04 } + # TODO desc for new part of the map #RETURN: Region - Generic triggered_desc = { trigger = { @@ -1032,26 +1007,21 @@ ep3_laamp_decision_event.1000 = { #Church Holding override_sound = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } reference = "event:/SFX/Events/Themes/sfx_event_theme_type_faith" } #Castle Holding override_sound = { trigger = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } reference = "event:/SFX/Events/Themes/sfx_event_theme_type_martial" } #City Holding override_sound = { trigger = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } reference = "event:/SFX/Events/Themes/sfx_event_theme_type_stewardship" } @@ -1074,13 +1044,7 @@ ep3_laamp_decision_event.1000 = { override_background = { trigger = { 1000_time_to_go_home_trigger = yes - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } reference = bp1_bonfire } @@ -1103,12 +1067,7 @@ ep3_laamp_decision_event.1000 = { } override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_nomad = yes } } reference = mpo_camp_steppe } @@ -1120,26 +1079,21 @@ ep3_laamp_decision_event.1000 = { #Church Holding override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } reference = holy_site_generic } #Castle Holding override_background = { trigger = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } reference = courtyard_location } #City Holding override_background = { trigger = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } reference = ep3_city_gate } @@ -1222,7 +1176,7 @@ ep3_laamp_decision_event.1000 = { } location = { random_neighboring_province = { - limit = { is_location_valid_for_travel_event_on_land = yes } + limit = { exists = county } save_scope_as = neighboring_county } } @@ -1322,12 +1276,7 @@ ep3_laamp_decision_event.1000 = { #Church Holding: Visit the local church grounds if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } add_to_variable_list = { name = list_of_options @@ -1337,7 +1286,7 @@ ep3_laamp_decision_event.1000 = { #Castle Holding: Visit the local castle grounds if = { limit = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } add_to_variable_list = { name = list_of_options @@ -1347,7 +1296,7 @@ ep3_laamp_decision_event.1000 = { #City Holding: Visit the local fine craftsmen if = { limit = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } add_to_variable_list = { name = list_of_options @@ -1373,10 +1322,7 @@ ep3_laamp_decision_event.1000 = { is_close_family_of = root 1000_has_illness_or_wound_to_treat_trigger = yes scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } + holding_is_church = yes } } modifier = { @@ -1384,20 +1330,14 @@ ep3_laamp_decision_event.1000 = { is_spouse_of = root 1000_has_illness_or_wound_to_treat_trigger = yes scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } + holding_is_church = yes } } modifier = { add = 100 has_relation_lover = root scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } + holding_is_church = yes } } modifier = { @@ -1630,7 +1570,7 @@ ep3_laamp_decision_event.1000 = { limit = { NOT = { exists = scope:been_to_second } } - always = yes + always = yes } trigger_else_if = { limit = { exists = scope:been_to_second } @@ -1801,13 +1741,7 @@ ep3_laamp_decision_event.1001 = { #FIRST TIME triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } NOT = { exists = scope:been_to_second } } desc = ep3_laamp_decision_event.1001.desc_intro_nomads @@ -2057,6 +1991,7 @@ ep3_laamp_decision_event.1001 = { } desc = ep3_laamp_decision_event.1000.desc_outro_regional_east_africa_returned_04 } + # TODO desc for new part of the map #RETURN: Region - Generic triggered_desc = { trigger = { exists = scope:been_to_second } @@ -2166,13 +2101,7 @@ ep3_laamp_decision_event.1001 = { override_background = { trigger = { 1000_time_to_go_home_trigger = yes - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } reference = bp1_bonfire } @@ -2195,12 +2124,7 @@ ep3_laamp_decision_event.1001 = { } override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_nomad = yes } } reference = mpo_camp_steppe } @@ -2212,26 +2136,21 @@ ep3_laamp_decision_event.1001 = { #Church Holding override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } } reference = holy_site_generic } #Castle Holding override_background = { trigger = { - scope:visiting_location = { has_holding_type = castle_holding } + scope:visiting_location = { holding_is_castle = yes } } reference = courtyard_location } #City Holding override_background = { trigger = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } reference = ep3_city_gate } @@ -2987,7 +2906,7 @@ ep3_laamp_decision_event.1010 = { triggered_desc = { trigger = { NOT = { exists = scope:did_not_buy_supplies } - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } desc = ep3_laamp_decision_event.1010.desc_posh_stalls } @@ -3345,13 +3264,7 @@ ep3_laamp_decision_event.1010 = { theme = stewardship override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } reference = army_camp } @@ -3548,6 +3461,7 @@ ep3_laamp_decision_event.1010 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_supply_merchant } } @@ -3678,7 +3592,7 @@ ep3_laamp_decision_event.1010 = { is_female = yes root = { OR = { - faith = { has_doctrine_parameter = male_dominated_law } + rite = { rite_has_parameter = male_dominated_law } has_realm_law = male_only_law } } @@ -3688,7 +3602,7 @@ ep3_laamp_decision_event.1010 = { is_male = yes root = { OR = { - faith = { has_doctrine_parameter = female_dominated_law } + rite = { rite_has_parameter = female_dominated_law } has_realm_law = female_only_law } } @@ -3816,7 +3730,7 @@ ep3_laamp_decision_event.1010 = { #Cheaper supplies in City Holding if = { limit = { - root.location = { has_holding_type = city_holding } + root.location = { holding_is_city = yes } } change_variable = { name = supply_gold_cost @@ -3953,7 +3867,7 @@ ep3_laamp_decision_event.1010 = { #Get supplies domicile ?= { change_provisions = max_provisions } #Give appropriate amounts of stress - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain } #Set correct variables and reroute us to main square @@ -4113,7 +4027,7 @@ scripted_effect 1020_set_artifact_value_variables_effect = { #Better buyers in City Holding if = { limit = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } multiply = { 1.15 1.25 } } @@ -4128,7 +4042,7 @@ scripted_effect 1020_set_artifact_value_variables_effect = { #Better buyers in City Holding if = { limit = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } multiply = { 1.15 1.25 } } @@ -4144,7 +4058,7 @@ scripted_effect 1020_set_artifact_value_variables_effect = { #Better buyers in City Holding if = { limit = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } multiply = { 1.15 1.25 } } @@ -4199,7 +4113,7 @@ ep3_laamp_decision_event.1020 = { triggered_desc = { trigger = { NOT = { exists = scope:did_not_sell_artifact } - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } } desc = ep3_laamp_decision_event.1020.desc_intro_posh_stalls } @@ -4502,6 +4416,7 @@ ep3_laamp_decision_event.1020 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_artifact_peddler } } @@ -4721,7 +4636,7 @@ ep3_laamp_decision_event.1020 = { limit = { has_lifestyle = stewardship_lifestyle } add_stewardship_lifestyle_xp = medium_lifestyle_xp } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss ambitious = minor_stress_impact_loss } @@ -4758,7 +4673,7 @@ ep3_laamp_decision_event.1020 = { limit = { exists = scope:1020_third_artifact_to_sell } custom_tooltip = ep3_laamp_decision_event.1020.b.failure.third_artifact.tt } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain greedy = minor_stress_impact_gain } @@ -4802,7 +4717,7 @@ ep3_laamp_decision_event.1020 = { } #Set correct variables and reroute us to main square 1020_sold_artifact_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain lazy = minor_stress_impact_loss } @@ -5080,7 +4995,7 @@ ep3_laamp_decision_event.1021 = { } #Stress - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain greedy = minor_stress_impact_loss callous = minor_stress_impact_loss @@ -5405,13 +5320,6 @@ scripted_effect 1025_set_contract_location_effect = { } 1025_save_random_county_province_effect = { REGION = world_tibet } } - # Burma - 10 = { - trigger = { - scope:visiting_location = { geographical_region = world_burma } - } - 1025_save_random_county_province_effect = { REGION = world_burma } - } # Mainland SE Asia 10 = { trigger = { @@ -5885,17 +5793,12 @@ scripted_effect 1025_randomize_and_remember_contract_type_effect = { add = 10 } modifier = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } add = 10 } #You're... academic? modifier = { - has_trait = scholar + has_trait = erudite factor = 2 } #Set the type @@ -5933,12 +5836,7 @@ scripted_effect 1025_randomize_and_remember_contract_type_effect = { } } modifier = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } - } + scope:visiting_location = { holding_is_church = yes } add = 10 } #You're... schemer? @@ -6020,6 +5918,7 @@ scripted_effect 1025_generate_employer_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = 1025_$NUM$_contract_employer } scope:1025_$NUM$_contract_employer = { @@ -6668,10 +6567,10 @@ scripted_effect 1025_translate_variable_into_flag_effect = { #This location has a saved contract variable scripted_trigger 1025_location_has_a_saved_contract_type_trigger = { scope:visiting_location = { - OR = { - has_variable = 1025_saved_first_contract_type - has_variable = 1025_saved_second_contract_type - has_variable = 1025_saved_third_contract_type + has_variable = { + name = 1025_saved_first_contract_type + name = 1025_saved_second_contract_type + name = 1025_saved_third_contract_type } } } @@ -6736,93 +6635,98 @@ scripted_trigger 1025_region_has_suitable_employer_trigger = { #... well, can we? scripted_trigger 1025_can_create_legendary_contract_trigger = { - OR = { - #North Europe - AND = { - scope:visiting_location = { geographical_region = world_europe_north } - any_county_in_region = { - region = world_europe_north - 1025_region_has_suitable_employer_trigger = yes + scope:visiting_location = { + switch = { + trigger = geographical_region + world_europe_north = { + any_county_in_region = { + region = world_europe_north + 1025_region_has_suitable_employer_trigger = yes + } } - } - #West Europe - AND = { - scope:visiting_location = { geographical_region = world_europe_west } - any_county_in_region = { - region = world_europe_west - 1025_region_has_suitable_employer_trigger = yes + world_europe_west = { + any_county_in_region = { + region = world_europe_west + 1025_region_has_suitable_employer_trigger = yes + } } - } - #East Europe - AND = { - scope:visiting_location = { geographical_region = world_europe_east } - any_county_in_region = { - region = world_europe_east - 1025_region_has_suitable_employer_trigger = yes + world_europe_east = { + any_county_in_region = { + region = world_europe_east + 1025_region_has_suitable_employer_trigger = yes + } } - } - #South Europe - AND = { - scope:visiting_location = { geographical_region = world_europe_south } - any_county_in_region = { - region = world_europe_south - 1025_region_has_suitable_employer_trigger = yes + world_europe_south = { + any_county_in_region = { + region = world_europe_south + 1025_region_has_suitable_employer_trigger = yes + } } - } - #Middle East - AND = { - scope:visiting_location = { geographical_region = world_middle_east } - any_county_in_region = { - region = world_middle_east - 1025_region_has_suitable_employer_trigger = yes + world_middle_east = { + any_county_in_region = { + region = world_middle_east + 1025_region_has_suitable_employer_trigger = yes + } } - } - #India - AND = { - scope:visiting_location = { geographical_region = world_india } - any_county_in_region = { - region = world_india - 1025_region_has_suitable_employer_trigger = yes + world_india = { + any_county_in_region = { + region = world_india + 1025_region_has_suitable_employer_trigger = yes + } } - } - #North Africa - AND = { - scope:visiting_location = { geographical_region = world_africa_north } - any_county_in_region = { - region = world_africa_north - 1025_region_has_suitable_employer_trigger = yes + world_africa_north = { + any_county_in_region = { + region = world_africa_north + 1025_region_has_suitable_employer_trigger = yes + } } - } - #West Africa - AND = { - scope:visiting_location = { geographical_region = world_africa_west } - any_county_in_region = { - region = world_africa_west - 1025_region_has_suitable_employer_trigger = yes + world_africa_west = { + any_county_in_region = { + region = world_africa_west + 1025_region_has_suitable_employer_trigger = yes + } } - } - #East Africa - AND = { - scope:visiting_location = { geographical_region = world_africa_east } - any_county_in_region = { - region = world_africa_east - 1025_region_has_suitable_employer_trigger = yes + world_africa_east = { + any_county_in_region = { + region = world_africa_east + 1025_region_has_suitable_employer_trigger = yes + } } - } - #West Steppe - AND = { - scope:visiting_location = { geographical_region = world_steppe_west } - any_county_in_region = { - region = world_steppe_west - 1025_region_has_suitable_employer_trigger = yes + world_steppe_west = { + any_county_in_region = { + region = world_steppe_west + 1025_region_has_suitable_employer_trigger = yes + } } - } - #East Steppe - AND = { - scope:visiting_location = { geographical_region = world_steppe_east } - any_county_in_region = { - region = world_steppe_east - 1025_region_has_suitable_employer_trigger = yes + world_steppe_east = { + any_county_in_region = { + region = world_steppe_east + 1025_region_has_suitable_employer_trigger = yes + } + } + world_tibet = { + any_county_in_region = { + region = world_tibet + 1025_region_has_suitable_employer_trigger = yes + } + } + world_asia_east = { + any_county_in_region = { + region = world_asia_east + 1025_region_has_suitable_employer_trigger = yes + } + } + world_asia_north_east = { + any_county_in_region = { + region = world_asia_north_east + 1025_region_has_suitable_employer_trigger = yes + } + } + world_asia_southeast = { + any_county_in_region = { + region = world_asia_southeast + 1025_region_has_suitable_employer_trigger = yes + } } } } @@ -6950,13 +6854,7 @@ ep3_laamp_decision_event.1025 = { random_valid = { triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } exists = scope:been_to_contract scope:contract_loc_tracker ?= 0 OR = { @@ -6969,13 +6867,7 @@ ep3_laamp_decision_event.1025 = { } triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } scope:contract_loc_tracker ?= 1 OR = { scope:1025_first_contract ?= flag:legendary_contract @@ -7016,13 +6908,7 @@ ep3_laamp_decision_event.1025 = { random_valid = { triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } exists = scope:been_to_contract scope:contract_loc_tracker ?= 0 } @@ -7030,13 +6916,7 @@ ep3_laamp_decision_event.1025 = { } triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } scope:contract_loc_tracker ?= 1 } desc = ep3_laamp_decision_event.1025.desc_tribal_returned_02 @@ -7059,13 +6939,7 @@ ep3_laamp_decision_event.1025 = { #FIRST TIME: Tribal - Legendary contract - Reused Elder triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } exists = scope:laamp_recurring_town_crier NOR = { exists = scope:been_to_contract @@ -7098,13 +6972,7 @@ ep3_laamp_decision_event.1025 = { #FIRST TIME: Tribal - Legendary contract triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } NOR = { exists = scope:been_to_contract has_variable = 1025_has_contracted_recently @@ -7135,13 +7003,7 @@ ep3_laamp_decision_event.1025 = { #FIRST TIME: Tribal - No legendary contract - Reused Town Crier triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } exists = scope:laamp_recurring_town_crier NOR = { exists = scope:been_to_contract @@ -7164,13 +7026,7 @@ ep3_laamp_decision_event.1025 = { #FIRST TIME: Tribal - No legendary contract triggered_desc = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } NOR = { exists = scope:been_to_contract has_variable = 1025_has_contracted_recently @@ -7321,13 +7177,7 @@ ep3_laamp_decision_event.1025 = { #_Elder_ trigger_if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } age >= 50 } @@ -7350,13 +7200,7 @@ ep3_laamp_decision_event.1025 = { #_Elder_ trigger_if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } age >= 50 } @@ -7372,13 +7216,7 @@ ep3_laamp_decision_event.1025 = { #Create Elder to stuff in pool if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } create_character = { template = generic_peasant_character @@ -7387,6 +7225,7 @@ ep3_laamp_decision_event.1025 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_town_crier } } @@ -7398,6 +7237,7 @@ ep3_laamp_decision_event.1025 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_town_crier } } @@ -8524,6 +8364,7 @@ ep3_laamp_decision_event.1030 = { root = { is_attracted_to_gender_of = prev } #Prev is the spouse scope #They might want to marry us is_attracted_to_gender_of = root + is_old_character = no } save_scope_as = laamp_spouse_material } @@ -8542,6 +8383,8 @@ ep3_laamp_decision_event.1030 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite + age = { 18 40 } diplomacy = { low_skill_rating high_skill_rating } martial = { low_skill_rating high_skill_rating } stewardship = { low_skill_rating high_skill_rating } @@ -8560,6 +8403,8 @@ ep3_laamp_decision_event.1030 = { gender = male culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite + age = { 18 40 } diplomacy = { low_skill_rating high_skill_rating } martial = { low_skill_rating high_skill_rating } stewardship = { low_skill_rating high_skill_rating } @@ -8577,6 +8422,8 @@ ep3_laamp_decision_event.1030 = { gender = female culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite + age = { 18 40 } diplomacy = { low_skill_rating high_skill_rating } martial = { low_skill_rating high_skill_rating } stewardship = { low_skill_rating high_skill_rating } @@ -8710,13 +8557,7 @@ ep3_laamp_decision_event.1030 = { 25 = { #More common in Tribal/No Settlement modifier = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } factor = 2 } #Has this person been our thief in the past 10 years? @@ -8771,6 +8612,7 @@ ep3_laamp_decision_event.1030 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite intrigue = { decent_skill_rating high_skill_rating } save_scope_as = laamp_hooded_figure } @@ -9160,23 +9002,52 @@ scripted_effect 1031_been_to_effect = { save_scope_as = been_to_$GUILD$ } #Go back to the previous screen + # to prevent exiting the event chain prematurely and without cleanup if = { - limit = { var:return_from_location ?= flag:tavern } + limit = { + OR = { + flag:$GUILD$ = flag:storyteller + flag:$GUILD$ = flag:recruit + flag:$GUILD$ = flag:spouse + flag:$GUILD$ = flag:hood + } + } 1031_return_to_tavern_effect = yes } #Go back to church grounds - if = { - limit = { var:return_from_location ?= flag:church_grounds } + else_if = { + limit = { + OR = { + flag:$GUILD$ = flag:healer + flag:$GUILD$ = flag:church + flag:$GUILD$ = flag:garden + flag:$GUILD$ = flag:physician + } + } 1041_return_to_church_grounds_effect = yes } #Go back to castle grounds - if = { - limit = { var:return_from_location ?= flag:castle_grounds } + else_if = { + limit = { + OR = { + flag:$GUILD$ = flag:training + flag:$GUILD$ = flag:garrison + flag:$GUILD$ = flag:reinforcers + flag:$GUILD$ = flag:bodyguard + } + } 1051_return_to_castle_effect = yes } #Go back to craftsmen district - if = { - limit = { var:return_from_location ?= flag:craftsmen } + else_if = { + limit = { + OR = { + flag:$GUILD$ = flag:weaponsmith + flag:$GUILD$ = flag:armorer + flag:$GUILD$ = flag:jeweler + flag:$GUILD$ = flag:quartermaster + } + } 1061_return_to_craftsmen_effect = yes } } @@ -9588,13 +9459,7 @@ ep3_laamp_decision_event.1031 = { } override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } reference = bp1_kitchen_western } @@ -9729,6 +9594,7 @@ ep3_laamp_decision_event.1031 = { trait = lifestyle_reveler culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_storyteller } } @@ -9871,7 +9737,7 @@ ep3_laamp_decision_event.1031 = { has_trait = zealous NOT = { has_trait = eccentric } } - stress_impact = { zealous = miniscule_stress_impact_gain } + stress_and_fulfillment_impact = { zealous = miniscule_stress_impact_gain } } #Set the variables and redirect us back to the tavern main room 1031_storied_effect = yes @@ -9884,41 +9750,24 @@ ep3_laamp_decision_event.1031 = { } } } - #Learn revelry or strong-arm the skill gain + #Strong-arm the skill gain - the reward is guaranteed, so it gets its own option instead of hiding inside a conditional option = { - name = { - text = { - first_valid = { - #I know this one! - triggered_desc = { - trigger = { 1031_is_max_witty_trigger = yes } - desc = ep3_laamp_decision_event.1031.b_reveler - } - #Yeeh narration! - desc = ep3_laamp_decision_event.1031.b - } - } - } + name = ep3_laamp_decision_event.1031.b_reveler trigger = { + 1031_is_max_witty_trigger = yes #Put a cooldown on strongarming it - trigger_if = { - limit = { 1031_is_max_witty_trigger = yes } - custom_tooltip = { - text = ep3_laamp_decision_event.1031.b.cooldown.tt - NOT = { has_variable = 1031_has_reveled_recently } - } + custom_tooltip = { + text = ep3_laamp_decision_event.1031.b.cooldown.tt + NOT = { has_variable = 1031_has_reveled_recently } } #If we're zealous, we also need to be eccentric trigger_if = { limit = { has_trait = zealous } has_trait = eccentric } - #Trigger for everyone else - trigger_else = { - always = yes - } } show_as_unavailable = { + 1031_is_max_witty_trigger = yes #Hide if what you're missing is a trait trigger_if = { limit = { @@ -9929,46 +9778,77 @@ ep3_laamp_decision_event.1031 = { } trigger_else = { always = yes } } - #Strongarm it - if = { - limit = { 1031_is_max_witty_trigger = yes } + send_interface_toast = { + type = event_toast_effect_good + title = ep3_laamp_decision_event.1031.a_success.t + left_icon = root 1031_actual_skill_increase_effect = yes - #Set the cooldown on the action - set_variable = { - name = 1031_has_reveled_recently - months = visit_settlement_small_cooldown_days - } - stress_impact = { - base = medium_stress_impact_gain - ambitious = minor_stress_impact_loss + } + #Set the cooldown on the action + set_variable = { + name = 1031_has_reveled_recently + months = visit_settlement_small_cooldown_days + } + stress_and_fulfillment_impact = { + base = medium_stress_impact_gain + ambitious = minor_stress_impact_loss + } + #Set the variables and redirect us back to the tavern main room + 1031_storied_effect = yes + ai_chance = { + base = 100 + modifier = { + stress_level > 1 + factor = 0 } } - #Otherwise learn something - else = { - #Pay up - pay_short_term_gold = { - target = scope:laamp_storyteller - gold = minor_gold_laamps_value + } + #Learn revelry + option = { + name = ep3_laamp_decision_event.1031.b + trigger = { + 1031_is_max_witty_trigger = no + #If we're zealous, we also need to be eccentric + trigger_if = { + limit = { has_trait = zealous } + has_trait = eccentric } - #Gain trait - if = { - limit = { - NOT = { has_trait = tourney_participant } - } - add_trait = tourney_participant - add_trait_xp = { - trait = tourney_participant - track = wit - value = scope:storyteller_xp + } + show_as_unavailable = { + 1031_is_max_witty_trigger = no + #Hide if what you're missing is a trait + trigger_if = { + limit = { + has_trait = zealous + NOT = { has_trait = eccentric } } + always = no } - #Or be educated - else = { - add_trait_xp = { - trait = tourney_participant - track = wit - value = scope:storyteller_xp - } + trigger_else = { always = yes } + } + #Pay up + pay_short_term_gold = { + target = scope:laamp_storyteller + gold = minor_gold_laamps_value + } + #Gain trait + if = { + limit = { + NOT = { has_trait = tourney_participant } + } + add_trait = tourney_participant + add_trait_xp = { + trait = tourney_participant + track = wit + value = scope:storyteller_xp + } + } + #Or be educated + else = { + add_trait_xp = { + trait = tourney_participant + track = wit + value = scope:storyteller_xp } } #Set the variables and redirect us back to the tavern main room @@ -9976,15 +9856,9 @@ ep3_laamp_decision_event.1031 = { ai_chance = { base = 100 modifier = { - 1031_is_max_witty_trigger = no short_term_gold < laamp_ai_spending_pants_value factor = 0 } - modifier = { - 1031_is_max_witty_trigger = yes - stress_level > 1 - factor = 0 - } } } #Stress relief @@ -10016,14 +9890,14 @@ ep3_laamp_decision_event.1031 = { add_piety = minor_piety_gain } #Took my mind off of things - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss zealous = minor_stress_impact_loss } #Set the cooldown on the action set_variable = { name = 1031_has_relaxed_recently - months = visit_settlement_minimum_cooldown_days + days = visit_settlement_minimum_cooldown_days } #Set the variables and redirect us back to the tavern main room 1031_storied_effect = yes @@ -10075,6 +9949,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite diplomacy = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10083,13 +9958,7 @@ scripted_effect 1033_generate_character_effect = { 10 = { #Some variation modifier = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } factor = 2 } create_character = { @@ -10098,6 +9967,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite diplomacy = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10114,6 +9984,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite martial = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10121,7 +9992,7 @@ scripted_effect 1033_generate_character_effect = { #Stewardship 10 = { modifier = { - scope:visiting_location = { has_holding_type = city_holding } + scope:visiting_location = { holding_is_city = yes } factor = 2 } create_character = { @@ -10130,6 +10001,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite stewardship = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10137,13 +10009,7 @@ scripted_effect 1033_generate_character_effect = { #Intrigue 10 = { modifier = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } factor = 2 } create_character = { @@ -10152,6 +10018,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite intrigue = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10159,11 +10026,8 @@ scripted_effect 1033_generate_character_effect = { #Learning 10 = { modifier = { - scope:visiting_location = { - OR = { - has_holding_type = church_holding - has_holding_type = temple_citadel_holding - } + scope:visiting_location = { + holding_is_church = yes } factor = 2 } @@ -10173,6 +10037,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite learning = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10180,13 +10045,7 @@ scripted_effect 1033_generate_character_effect = { #... witch 5 = { modifier = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } factor = 2 } create_character = { @@ -10195,6 +10054,7 @@ scripted_effect 1033_generate_character_effect = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite learning = { decent_skill_rating high_skill_rating } save_scope_as = 1033_new_character } @@ -10324,13 +10184,7 @@ scripted_effect 1033_set_cost_effect = { #Cheaper out in the wilds if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } multiply = 0.6 } @@ -10694,7 +10548,7 @@ ep3_laamp_decision_event.1033 = { weight = { base = 1 modifier = { - any_secret = { exists = this } + any_secret = {} factor = 2 } } @@ -10712,6 +10566,7 @@ ep3_laamp_decision_event.1033 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_generic_jane } #... you didn't think it would be _that_ easy, right? @@ -10726,9 +10581,10 @@ ep3_laamp_decision_event.1033 = { #Create a victim to kill create_character = { template = generic_peasant_character - culture = scope:visiting_location.location.county.culture - faith = scope:visiting_location.location.county.faith - location = scope:visiting_location.location + culture = scope:visiting_location.culture + faith = scope:visiting_location.faith + rite = scope:visiting_location.rite + location = scope:visiting_location after_creation = { set_to_lowborn = yes } save_scope_as = 1030_previous_victim } @@ -11066,13 +10922,7 @@ ep3_laamp_decision_event.1035 = { } override_background = { trigger = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } reference = tavern } @@ -11323,7 +11173,7 @@ ep3_laamp_decision_event.1035 = { #Cooldown for the action set_variable = { name = 1035_spouse_unwinded_recently - months = visit_settlement_minimum_cooldown_days + days = visit_settlement_minimum_cooldown_days } #Set the variables and redirect us back to the tavern main room 1035_spoused_effect = yes @@ -12099,6 +11949,7 @@ ep3_laamp_decision_event.1037 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite after_creation = { set_to_lowborn = yes } save_scope_as = 1037_local_ruffian } @@ -12151,13 +12002,7 @@ ep3_laamp_decision_event.1037 = { #Go outside of the city to drink, eh if = { limit = { - scope:visiting_location = { - OR = { - has_holding_type = tribal_holding - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } + scope:visiting_location = { holding_is_tribal = yes } } multiply = 0.5 } @@ -12175,7 +12020,7 @@ ep3_laamp_decision_event.1037 = { #Woo rewards 1037_noble_reward_effect = yes #Quite the molah - stress_impact = { greedy = minor_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } #Set the variables and redirect us back to the tavern main room 1037_hooded_effect = yes } @@ -12276,7 +12121,7 @@ ep3_laamp_decision_event.1037 = { #Woo rewards 1037_noble_reward_effect = yes #I just don't like being criminal, OK? - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain } #Set the variables and redirect us back to the tavern main room @@ -12512,7 +12357,7 @@ ep3_laamp_decision_event.1037 = { #Some Intrigue lifestyle gain, coming up add_intrigue_lifestyle_xp = medium_lifestyle_xp #Stressful for honest characters - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain } #Set the variables and redirect us back to the tavern main room @@ -13052,6 +12897,7 @@ ep3_laamp_decision_event.1040 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite learning = { decent_skill_rating high_skill_rating } save_scope_as = laamp_physician_recruit } @@ -13312,15 +13158,27 @@ scripted_effect 1041_chance_to_buff_item_rarity_effect = { random_list = { 20 = { trigger = { - exists = scope:laamp_healer_character - $VENDOR$ = scope:laamp_healer_character + scope:laamp_healer_character ?= $VENDOR$ } set_artifact_rarity_famed = yes } - 40 = { + 20 = { + trigger = { + trigger_if = { + limit = { + OR = { + scope:laamp_weaponsmith_craftsman ?= $VENDOR$ + scope:laamp_armorer_craftsman ?= $VENDOR$ + } + } + $VENDOR$.weapon_inspiration_average_skill_value >= medium_inspiration_skill + } + trigger_else = { + $VENDOR$.artisan_inspiration_average_skill_value >= medium_inspiration_skill + } + } modifier = { - exists = scope:laamp_jeweler_craftsman - $VENDOR$ = scope:laamp_jeweler_craftsman + scope:laamp_jeweler_craftsman ?= $VENDOR$ factor = 2 } set_artifact_rarity_masterwork = yes @@ -13382,9 +13240,9 @@ scripted_effect 1041_set_item_value_effect = { #Accessory cost if = { limit = { - OR = { - has_variable = 1041_laamp_decision_health_artifact - has_variable = 1065_laamp_decision_accessory + has_variable = { + name = 1041_laamp_decision_health_artifact + name = 1065_laamp_decision_accessory } } if = { @@ -13912,6 +13770,7 @@ ep3_laamp_decision_event.1041 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_healer_character } } @@ -14421,7 +14280,11 @@ ep3_laamp_decision_event.1043 = { trait = devoted culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_clergy_character + after_creation = { + remove_character_flag = peasant_outfit + } } } #Remember the clerger @@ -14595,7 +14458,7 @@ ep3_laamp_decision_event.1043 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain zealous = minor_stress_impact_loss generous = minor_stress_impact_loss @@ -14624,6 +14487,12 @@ ep3_laamp_decision_event.1043 = { has_character_modifier = laamp_decision_church_blessing_stress_gain_modifier piety_level < low_piety_level } + faith = { + faith_hostility_level = { + target = scope:visiting_location.faith + value <= faith_astray_level + } + } } show_as_unavailable = { always = yes } reason = piety @@ -14634,6 +14503,9 @@ ep3_laamp_decision_event.1043 = { } #Set the variables and redirect us back to the Church Grounds 1043_churched_effect = yes + stress_and_fulfillment_impact = { + zealous = minor_stress_impact_loss + } ai_chance = { base = 200 modifier = { @@ -14841,7 +14713,7 @@ ep3_laamp_decision_event.1043 = { #Super-stressful for honest characters and zealous characters, IF you share faith if = { limit = { scope:visiting_location.county.faith = root.faith } - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain zealous = major_stress_impact_gain deceitful = minor_stress_impact_loss @@ -14849,7 +14721,7 @@ ep3_laamp_decision_event.1043 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { honest = major_stress_impact_gain deceitful = minor_stress_impact_loss } @@ -14971,6 +14843,9 @@ ep3_laamp_decision_event.1044 = { modifier = laamp_decision_church_blessing_stress_gain_modifier years = 5 } + stress_and_fulfillment_impact = { + zealous = miniscule_stress_impact_loss + } ai_chance = { base = 100 modifier = { @@ -15208,14 +15083,14 @@ ep3_laamp_decision_event.1045 = { } custom_description_no_bullet = { text = mandala_monotheist_warning_tt } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss zealous = major_stress_impact_gain } } #Contemplate faith else = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss content = minor_stress_impact_loss zealous = medium_stress_impact_loss @@ -15301,11 +15176,11 @@ ep3_laamp_decision_event.1045 = { #Probably holy somewhere if = { limit = { - faith = { + rite = { OR = { - has_doctrine = tenet_sanctity_of_nature - trait_is_virtue = lifestyle_gardener - trait_is_virtue = lifestyle_herbalist + rite_has_tenet = tenet_sanctity_of_nature + trait_is_virtue_rite = lifestyle_gardener + trait_is_virtue_rite = lifestyle_herbalist } } } @@ -15353,18 +15228,18 @@ ep3_laamp_decision_event.1045 = { #Probably holy to some? if = { limit = { - faith = { has_doctrine = tenet_carnal_exaltation } + rite = { rite_has_tenet = tenet_carnal_exaltation } } add_piety = medium_piety_gain } #Or not else_if = { limit = { - faith = { + rite = { OR = { - trait_is_sin = lustful - trait_is_sin = rakish - trait_is_sin = seducer + trait_is_sin_rite = lustful + trait_is_sin_rite = rakish + trait_is_sin_rite = seducer } } } @@ -15376,7 +15251,7 @@ ep3_laamp_decision_event.1045 = { days = visit_settlement_minimum_cooldown_days } #Stress loss with some factors - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss rakish = medium_stress_impact_loss seducer = minor_stress_impact_loss @@ -15585,7 +15460,7 @@ ep3_laamp_decision_event.1047 = { } modifier = { OR = { - has_trait = scholar + has_trait = erudite has_trait = whole_of_body has_trait = crusader_king } @@ -16047,6 +15922,7 @@ ep3_laamp_decision_event.1050 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite prowess = { decent_skill_rating high_skill_rating } save_scope_as = laamp_bodyguard_recruit } @@ -16396,7 +16272,7 @@ scripted_effect 1051_actual_training_effect = { #Gain martial lifestyle xp add_martial_lifestyle_xp = medium_lifestyle_xp #... and some stress relief? - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } } @@ -16634,6 +16510,7 @@ ep3_laamp_decision_event.1051 = { gender_female_chance = root_soldier_female_chance culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_disgruntled_moa } } @@ -17017,6 +16894,7 @@ ep3_laamp_decision_event.1053 = { gender_female_chance = root_soldier_female_chance culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_plain_guard } } @@ -17026,7 +16904,7 @@ ep3_laamp_decision_event.1053 = { random_pool_character = { province = scope:visiting_location limit = { 1053_random_martial_character_trigger = yes } - save_scope_as = laamp_plain_guard + save_scope_as = laamp_talented_guard } #Otherwise create a suiting talented guard if = { @@ -17041,6 +16919,7 @@ ep3_laamp_decision_event.1053 = { gender_female_chance = root_soldier_female_chance culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_talented_guard } } @@ -17156,7 +17035,7 @@ ep3_laamp_decision_event.1053 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arbitrary = minor_stress_impact_loss improvident = minor_stress_impact_loss @@ -17435,7 +17314,7 @@ ep3_laamp_decision_event.1055 = { #Otherwise create a spokesperson if = { limit = { - NOT = { exists = scope:laamp_plain_guard } + NOT = { exists = scope:laamp_maa_reinforcer } } #Create spokesperson to stuff in pool create_character = { @@ -17445,6 +17324,7 @@ ep3_laamp_decision_event.1055 = { gender_female_chance = root_soldier_female_chance culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_maa_reinforcer } } @@ -17510,7 +17390,13 @@ ep3_laamp_decision_event.1055 = { option = { name = ep3_laamp_decision_event.1055.b trigger = { - piety_level >= low_piety_level + piety_level >= low_piety_level + faith = { + faith_hostility_level = { + target = scope:visiting_location.faith + value <= faith_astray_level + } + } } show_as_unavailable = { always = yes } flavor = ep3_laamp_decision_event.1055.b.flavor @@ -18236,6 +18122,7 @@ ep3_laamp_decision_event.1060 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_weaponsmith_craftsman } } @@ -18299,6 +18186,7 @@ ep3_laamp_decision_event.1060 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_armorer_craftsman } } @@ -18362,6 +18250,7 @@ ep3_laamp_decision_event.1060 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite save_scope_as = laamp_jeweler_craftsman } } @@ -18438,6 +18327,7 @@ ep3_laamp_decision_event.1060 = { dynasty = none culture = scope:visiting_location.culture faith = scope:visiting_location.faith + rite = scope:visiting_location.rite stewardship = { decent_skill_rating high_skill_rating } save_scope_as = laamp_quartermaster_recruit } @@ -19669,7 +19559,7 @@ ep3_laamp_decision_event.1065 = { NOT = { exists = scope:1065_first_accessory } } #Set rarity, maybe - 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_armorer_craftsman } + 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_jeweler_craftsman } #Generate accessory random_list = { 50 = { @@ -19705,7 +19595,7 @@ ep3_laamp_decision_event.1065 = { NOT = { exists = scope:1065_second_accessory } } #Set rarity, maybe - 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_armorer_craftsman } + 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_jeweler_craftsman } #Generate accessory random_list = { 50 = { @@ -19735,7 +19625,7 @@ ep3_laamp_decision_event.1065 = { NOT = { exists = scope:1065_third_accessory } } #Set rarity, maybe - 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_armorer_craftsman } + 1041_chance_to_buff_item_rarity_effect = { VENDOR = scope:laamp_jeweler_craftsman } #Generate accessory random_list = { #Don't need two rings etc @@ -20298,6 +20188,9 @@ ep3_laamp_decision_event.1101 = { option = { name = ep3_laamp_decision_event.1101.a custom_tooltip = ep3_laamp_decision_event.1101.a.desc + stress_and_fulfillment_impact = { + zealous = miniscule_stress_impact_loss + } } } @@ -20345,6 +20238,9 @@ ep3_laamp_decision_event.1102 = { name = num_counties_converted value = 0 } + stress_and_fulfillment_impact = { + zealous = minor_stress_impact_loss + } ai_chance = { base = 100 @@ -20449,14 +20345,6 @@ ep3_laamp_decision_event.1103 = { subtract = location.county.county_opinion } } - modifier = { - factor = 0.75 - location.county.faith.religion = root.religion - } - modifier = { - factor = 0.75 - knows_language_of_culture = location.county.culture - } send_interface_toast = { type = event_toast_effect_good title = ep3_laamp_decision_event.1103.a.success @@ -20477,8 +20365,16 @@ ep3_laamp_decision_event.1103 = { modifier = { add = location.county.development_level } + modifier = { + factor = 0.75 + location.county.faith.religion = root.religion + } + modifier = { + factor = 0.75 + knows_language_of_culture = location.county.culture + } send_interface_toast = { - type = event_toast_effect_good + type = event_toast_effect_bad title = ep3_laamp_decision_event.1103.a.failure left_icon = root right_icon = location.county @@ -20493,10 +20389,15 @@ ep3_laamp_decision_event.1103 = { min = 20 } - reverse_add_opinion = { - modifier = vengeful_opinion - opinion = -75 - target = location.county.holder + if = { + limit = { + location.county.holder.faith != root.faith + } + reverse_add_opinion = { + modifier = vengeful_opinion + opinion = -75 + target = location.county.holder + } } ai_chance = { @@ -20509,10 +20410,10 @@ ep3_laamp_decision_event.1103 = { option = { trigger = { - root.faith = { + root.rite = { NOR = { - has_doctrine = tenet_dharmic_pacifism - has_doctrine = tenet_pacifism + rite_has_tenet = tenet_dharmic_pacifism + rite_has_tenet = tenet_pacifism } } @@ -20549,8 +20450,8 @@ ep3_laamp_decision_event.1103 = { } modifier = { factor = 1.2 - root.faith = { - has_doctrine = tenet_armed_pilgrimages + root.rite = { + rite_has_tenet = tenet_armed_pilgrimages } } send_interface_toast = { @@ -20732,7 +20633,10 @@ ep3_laamp_decision_event.1104 = { } name = ep3_laamp_decision_event.1104.a add_piety = omega_piety_gain - add_trait = saint + add_trait = herald + stress_and_fulfillment_impact = { + zealous = medium_stress_impact_loss + } } option = { @@ -20743,6 +20647,7 @@ ep3_laamp_decision_event.1104 = { add_stress = monumental_stress_gain add_piety_level = -5 + change_spiritual_fulfillment = medium_spiritual_fulfillment_loss if = { limit = { has_nickname = nick_the_missionary @@ -21179,7 +21084,7 @@ ep3_laamp_decision_event.1133 = { #get a mill add_character_flag = laamp_city_builder_mill show_as_tooltip = { scope:city_location = { - add_building = watermills_01 + add_building = watermills_02 } } remove_short_term_gold = 80 @@ -21423,7 +21328,6 @@ ep3_laamp_decision_event.1135 = { #argue for more favorable land assigment from base = 0 } } - } ep3_laamp_decision_event.1136 = { #utilize connections, get merchant building @@ -21432,7 +21336,7 @@ ep3_laamp_decision_event.1136 = { #utilize connections, get merchant building window = visit_settlement_window desc = ep3_laamp_decision_event.1136.desc - orphan = yes + orphan = yes # for balance reasons theme = stewardship @@ -21461,13 +21365,13 @@ ep3_laamp_decision_event.1136 = { #utilize connections, get merchant building limit = { has_variable = city_construction_is_temple_citadel } add_character_flag = laamp_city_builder_spice_plantation scope:city_location = { - show_as_tooltip = { add_building = spice_plantation_01 } + show_as_tooltip = { add_building = spice_plantation_02 } } } else = { add_character_flag = laamp_city_builder_workshops scope:city_location = { - show_as_tooltip = { add_building = workshops_01 } + show_as_tooltip = { add_building = workshops_02 } } } add_prestige = -400 @@ -21545,13 +21449,13 @@ ep3_laamp_decision_event.1137 = { #utilize connections, get prayer hall limit = { has_variable = city_construction_is_temple_citadel } add_character_flag = laamp_city_builder_vihara_halls scope:city_location = { - show_as_tooltip = { add_building = vihara_halls_01 } + show_as_tooltip = { add_building = vihara_halls_02 } } } else = { add_character_flag = laamp_city_builder_prayer_hall scope:city_location = { - show_as_tooltip = { add_building = monastic_schools_01 } + show_as_tooltip = { add_building = monastic_schools_02 } } } add_piety = -400 @@ -21848,14 +21752,14 @@ ep3_laamp_decision_event.1201 = { text = ep3_laamp_decision_event.1201.tt.your_dog_lost 1201_prune_dog_stories_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -21891,7 +21795,7 @@ ep3_laamp_decision_event.1201 = { } } - stress_impact = { callous = massive_stress_impact_loss } + stress_and_fulfillment_impact = { callous = massive_stress_impact_loss } # If the AI is callous, they should always take this. ai_chance = { base = 1000 } } @@ -22067,14 +21971,14 @@ ep3_laamp_decision_event.1202 = { text = ep3_laamp_decision_event.1202.tt.your_cat_lost 1202_prune_cat_stories_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -22111,7 +22015,7 @@ ep3_laamp_decision_event.1202 = { } } - stress_impact = { callous = massive_stress_impact_loss } + stress_and_fulfillment_impact = { callous = massive_stress_impact_loss } # If the AI is callous, they should always take this. ai_chance = { base = 1000 } } @@ -22213,7 +22117,7 @@ ep3_laamp_decision_event.1203 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -22228,7 +22132,7 @@ ep3_laamp_decision_event.1203 = { trigger = { has_trait = callous } trait = callous - stress_impact = { callous = massive_stress_impact_loss } + stress_and_fulfillment_impact = { callous = massive_stress_impact_loss } # If the AI is callous, they should always take this. ai_chance = { base = 1000 } } @@ -22274,7 +22178,7 @@ ep3_laamp_decision_event.1204 = { option = { name = ep3_laamp_decision_event.1204.a - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_gain sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -22289,7 +22193,7 @@ ep3_laamp_decision_event.1204 = { trigger = { has_trait = callous } trait = callous - stress_impact = { callous = massive_stress_impact_loss } + stress_and_fulfillment_impact = { callous = massive_stress_impact_loss } # If the AI is callous, they should always take this. ai_chance = { base = 1000 } } @@ -22391,6 +22295,7 @@ ep3_laamp_decision_event.1300 = { employer = root culture = root.culture faith = root.faith + rite = root.rite age = root.age gender_female_chance = root_soldier_female_chance after_creation = { add_to_list = created_chars_list } @@ -22403,6 +22308,7 @@ ep3_laamp_decision_event.1300 = { employer = root culture = root.culture faith = root.faith + rite = root.rite gender_female_chance = root_soldier_female_chance after_creation = { add_to_list = created_chars_list } } diff --git a/events/dlc/ep3/ep3_laamp_events.txt b/events/dlc/ep3/ep3_laamp_events.txt index 063d99664..be0db4ad1 100644 --- a/events/dlc/ep3/ep3_laamp_events.txt +++ b/events/dlc/ep3/ep3_laamp_events.txt @@ -68,6 +68,7 @@ scripted_trigger ep3_laamp_conquest_title_trigger = { ep3_laamps.0001 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = { desc = { first_valid = { @@ -207,6 +208,17 @@ ep3_laamps.0002 = { immediate = { save_scope_as = adventurer + # destroy any title you keep - you should not bring them to laamp! + if = { + limit = { + is_landed = no + NOT = { has_variable = deposed_primary_title } + } + every_held_title = { + limit = { is_landless_type_title = no } + prev = { destroy_title = prev } + } + } # AI chance if = { limit = { @@ -299,6 +311,7 @@ ep3_laamps.0003 = { ep3_laamps.0004 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = { desc = { first_valid = { @@ -370,7 +383,7 @@ ep3_laamps.0004 = { } } } - + option = { name = ep3_laamps.0001.a create_landless_adventurer_title_tooltip_effect = yes @@ -405,6 +418,7 @@ ep3_laamps.0004 = { ep3_laamps.0005 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = { desc = { first_valid = { @@ -469,7 +483,7 @@ ep3_laamps.0005 = { } scope:conquered.current_heir = { save_scope_as = heir } } - + option = { name = ep3_laamps.0001.a show_as_tooltip = { depose = yes } # depose not actually used as it is immediate gameover @@ -560,6 +574,7 @@ scripted_trigger ep3_laamp_inheritor_title_trigger = { ep3_laamps.0010 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = ep3_laamps.0010.t desc = { first_valid = { @@ -774,6 +789,7 @@ ep3_laamps.0012 = { ep3_laamps.0020 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = ep3_laamps.0020.t desc = ep3_laamps.0020.desc theme = realm @@ -876,7 +892,7 @@ ep3_laamps.0020 = { hidden_effect = { if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -891,7 +907,7 @@ ep3_laamps.0020 = { hidden_effect = { if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -908,7 +924,7 @@ ep3_laamps.0020 = { hidden_effect = { if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -922,7 +938,7 @@ ep3_laamps.0020 = { hidden_effect = { if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -944,7 +960,7 @@ ep3_laamps.0021 = { on_trigger_fail = { if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -1026,7 +1042,7 @@ ep3_laamps.0021 = { } if = { limit = { - government_allows = administrative + government_has_mechanic = administrative } force_step_down_landed_titles = yes } @@ -1069,6 +1085,7 @@ ep3_laamps.0022 = { ep3_laamps.0030 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = ep3_laamps.0030.t desc = { desc = ep3_laamps.0030.desc @@ -1111,6 +1128,7 @@ ep3_laamps.0030 = { OR = { is_landless_type_title = no is_nomad_title = yes + has_clerical_region = yes } } add_to_list = target_titles @@ -1186,125 +1204,6 @@ ep3_laamps.0032 = { } } -ep3_laamps.1030 = { - type = character_event - window = fullscreen_event - title = ep3_laamps.1030.t - desc = { - desc = ep3_laamps.1030.desc - first_valid = { - triggered_desc = { - trigger = { exists = scope:laamp_heir } - desc = ep3_laamps.1030.heir - } - triggered_desc = { - trigger = { exists = scope:laamp_liege } - desc = ep3_laamps.1030.liege - } - desc = ep3_laamps.1030.new - } - } - theme = realm - left_portrait = { - character = root - animation = marshal - } - lower_right_portrait = scope:laamp_inheritor - override_background = { reference = ep3_fullscreen_adventurer_positive } - cooldown = { days = 5 } - - trigger = { exists = scope:laamp_inheritor } - - immediate = { - # Save scopes for loc - primary_title = { save_scope_as = old_primary_title } - capital_province = { save_scope_as = old_capital_province } - if = { - limit = { top_liege != this } - liege = { save_scope_as = old_liege } - } - # Transfer landed titles - every_held_title = { - title_tier > barony - limit = { - OR = { - is_landless_type_title = no - is_nomad_title = yes - } - } - add_to_list = target_titles - } - create_title_and_vassal_change = { - type = conquest - save_scope_as = change - add_claim_on_loss = no - } - hidden_effect = { - every_in_list = { - list = target_titles - change_title_holder_include_vassals = { - holder = scope:laamp_inheritor - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - } - # Create Adventurer - create_landless_minority_title_effect = { - REASON = flag:voluntary - FLAVOR_CHAR = scope:laamp_inheritor - } - scope:laamp_inheritor = { - # Tooltip for player - custom_tooltip = become_landless_adventurer_decision_title_scope_tt - # Create a loving family so inheritance isn't so borked - if = { - limit = { has_character_flag = new_laamp_inheritor } - trigger_event = game_rule.1001 - remove_character_flag = new_laamp_inheritor - } - } - scope:old_liege ?= { trigger_event = ep3_laamps.1032 } - adventurer_prestige_reset_effect = yes - hidden_effect = { - every_held_title = { - limit = { - is_noble_family_title = yes - } - root = { destroy_title = prev } - } - } - } - - option = { - name = ep3_laamps.1030.a - create_landless_minority_title_tooltip_effect = yes - add_prestige = medium_prestige_gain - add_character_modifier = { - modifier = ep3_voluntary_laamp_character_modifier - years = 5 - } - } - } - - # Liege event - ep3_laamps.1032 = { - type = letter_event - opening = ep3_laamps.1032.opening - desc = ep3_laamps.1032.desc - sender = scope:minority_leader - - trigger = { is_ai = no } - - immediate = { - scope:minority_leader = { create_landless_minority_title_tooltip_effect = yes } - } - - option = { - name = ep3_laamps.1032.a - } - } - ################################################## # Become Adventurer - Revocation # by Joe Parkin @@ -1321,6 +1220,7 @@ scripted_trigger ep3_laamp_revoked_title_trigger = { ep3_laamps.0040 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_laamp.dds" title = ep3_laamps.0040.t desc = { first_valid = { @@ -1496,8 +1396,12 @@ scripted_trigger ep3_laamp_runaway_child_trigger = { save_temporary_scope_as = runaway_temp # Less important kids as rank increases liege ?= { - primary_title = { + primary_title = { trigger_if = { + limit = { tier = tier_hegemony } + place_in_line_of_succession = { target = scope:runaway_temp value < 8 } + } + trigger_else_if = { limit = { tier = tier_empire } place_in_line_of_succession = { target = scope:runaway_temp value < 6 } } @@ -1529,7 +1433,7 @@ ep3_laamps.0050 = { trigger = { has_ep3_dlc_trigger = yes - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes any_close_family_member = { ep3_laamp_runaway_child_trigger = yes } OR = { is_ai = no @@ -1581,7 +1485,7 @@ ep3_laamps.0050 = { save_scope_as = adventurer } } - + option = { # Encourage name = ep3_laamps.0050.a trigger = { is_ai = no } @@ -1595,10 +1499,10 @@ ep3_laamps.0050 = { } add_internal_flag = special set_player_character = scope:potential_laamp - scope:potential_laamp = { - create_landless_adventurer_title_tooltip_effect = yes + scope:potential_laamp = { + create_landless_adventurer_title_tooltip_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain craven = minor_stress_impact_gain } @@ -1621,7 +1525,7 @@ ep3_laamps.0050 = { name = runaway_laamp_encourager value = scope:potential_laamp } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain craven = minor_stress_impact_gain } @@ -1683,7 +1587,7 @@ ep3_laamps.0050 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain } ai_chance = { @@ -1723,7 +1627,7 @@ ep3_laamps.0051 = { } add_prestige = minor_prestige_loss } - + option = { name = ep3_laamps.0051.a } @@ -1807,7 +1711,7 @@ ep3_laamps.0100 = { purchase_land_interaction_effect = yes scope:recipient = { trigger_event = ep3_laamps.0101 } } - + option = { name = ep3_laamps.0100.a if = { # Vassal obligations @@ -1816,6 +1720,16 @@ ep3_laamps.0100 = { vassal_contract_set_obligation_level = { type = feudal_government_levies level = 4 } } } + + after = { + hidden_effect = { + every_courtier = { + limit = { is_in_army = no } + set_location_to_default = yes + } + every_prisoner = { set_location_to_default = yes } + } + } } ep3_laamps.0101 = { @@ -1861,7 +1775,7 @@ ep3_laamps.0101 = { } } } - + option = { name = ep3_laamps.0101.a trigger = { scope:new_liege ?= scope:recipient } @@ -1898,6 +1812,20 @@ ep3_laamps.0102 = { } } +ep3_laamps.0103 = { + type = character_event + hidden = yes + + trigger = { + has_ep3_dlc_trigger = yes + is_landed = yes + } + + immediate = { + change_government = faith.faith_theocratic_goverment_type + } +} + ################################################## # Become Landed - Invasion # by Joe Parkin @@ -1945,7 +1873,7 @@ ep3_laamps.0200 = { } scope:actor = { custom_tooltip = adventurer_invasion_supporter_victory_tt } } - + option = { name = ep3_laamps.0200.a } @@ -1960,7 +1888,7 @@ ep3_laamps.0201 = { trigger = { has_ep3_dlc_trigger = yes } - + option = { name = ep3_laamps.0201.a } @@ -2017,7 +1945,7 @@ ep3_laamps.0300 = { negotiate_settlement_interaction_effect = yes scope:recipient = { trigger_event = ep3_laamps.0301 } } - + option = { name = ep3_laamps.0300.a } @@ -2066,7 +1994,7 @@ ep3_laamps.0301 = { } } } - + option = { name = ep3_laamps.0301.a trigger = { scope:new_liege ?= scope:actor } @@ -2146,12 +2074,12 @@ ep3_laamps.0401 = { seize_realm_scheme_success_effect = yes } - option = { + option = { name = ep3_laamps.0401.a } after = { - + } } @@ -2250,7 +2178,7 @@ ep3_laamps.0402 = { exists = scope:death } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -2266,7 +2194,7 @@ ep3_laamps.0402 = { option = { name = ep3_laamps.0402.b trigger = { exists = scope:imprison } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -2450,7 +2378,7 @@ scripted_trigger grantable_close_family_trigger = { is_imprisoned = no trigger_if = { limit = { is_clergy = yes } - faith = { has_doctrine_parameter = theocracy_temple_ownership } + rite = { rite_has_parameter = theocracy_temple_ownership } } NOR = { has_trait = incapable @@ -2473,7 +2401,7 @@ scripted_trigger grantable_claimant_trigger = { is_imprisoned = no trigger_if = { limit = { is_clergy = yes } - faith = { has_doctrine_parameter = theocracy_temple_ownership } + rite = { rite_has_parameter = theocracy_temple_ownership } } NOR = { has_trait = incapable @@ -2898,7 +2826,7 @@ ep3_laamps.0800 = { # Player adventurer has gained a landed title scope:alt_3 ?= { save_scope_as = portrait_scope } } } - + option = { # Become Landed name = ep3_laamps.0800.a if = { @@ -2995,6 +2923,7 @@ ep3_laamps.0800 = { # Player adventurer has gained a landed title template = laamp_inheritor_template culture = scope:new_capital.culture faith = scope:new_capital.faith + rite = scope:new_capital.rite dynasty = generate location = scope:new_capital.title_province after_creation = { save_scope_as = land_grantee } @@ -3174,6 +3103,7 @@ scripted_effect ep3_laamps_1001_generate_diplomacy_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = diplomacy_1 diplomacy = { @@ -3207,6 +3137,7 @@ scripted_effect ep3_laamps_1001_generate_diplomacy_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = diplomacy_2 diplomacy = { @@ -3242,6 +3173,7 @@ scripted_effect ep3_laamps_1001_generate_martial_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = martial_1 diplomacy = { @@ -3275,6 +3207,7 @@ scripted_effect ep3_laamps_1001_generate_martial_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = martial_2 diplomacy = { @@ -3310,6 +3243,7 @@ scripted_effect ep3_laamps_1001_generate_stewardship_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = stewardship_1 diplomacy = { @@ -3343,6 +3277,7 @@ scripted_effect ep3_laamps_1001_generate_stewardship_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = stewardship_2 diplomacy = { @@ -3378,6 +3313,7 @@ scripted_effect ep3_laamps_1001_generate_intrigue_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = intrigue_1 diplomacy = { @@ -3411,6 +3347,7 @@ scripted_effect ep3_laamps_1001_generate_intrigue_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = intrigue_2 diplomacy = { @@ -3446,6 +3383,7 @@ scripted_effect ep3_laamps_1001_generate_learning_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = learning_1 diplomacy = { @@ -3479,6 +3417,7 @@ scripted_effect ep3_laamps_1001_generate_learning_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = learning_2 diplomacy = { @@ -3514,6 +3453,7 @@ scripted_effect ep3_laamps_1001_generate_prowess_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = prowess_1 diplomacy = { @@ -3547,6 +3487,7 @@ scripted_effect ep3_laamps_1001_generate_prowess_char_effect = { dynasty = none culture = root.location.culture faith = root.location.faith + rite = root.location.rite location = root.location save_scope_as = prowess_2 diplomacy = { @@ -3611,9 +3552,9 @@ scripted_effect ep3_laamps_1001_add_courtiers_effect = { } scripted_trigger ep3_laamps_1001_basic_trigger = { - NOR = { - has_character_flag = special_laamp_char - has_character_flag = got_starting_courtiers + has_none_of_variables = { + name = special_laamp_char + name = got_starting_courtiers } # In case you become a laamp then immediately become landed again. has_government = landless_adventurer_government @@ -3741,7 +3682,7 @@ ep3_laamps.1001 = { } } } - + # Martial. option = { name = ep3_laamps.1001.b @@ -3784,7 +3725,7 @@ ep3_laamps.1001 = { } } } - + # Stewardship. option = { name = ep3_laamps.1001.c @@ -3815,7 +3756,7 @@ ep3_laamps.1001 = { } } } - + # Intrigue. option = { name = ep3_laamps.1001.d @@ -3846,7 +3787,7 @@ ep3_laamps.1001 = { } } } - + # Learning. option = { name = ep3_laamps.1001.e @@ -3877,7 +3818,7 @@ ep3_laamps.1001 = { } } } - + # Prowess. option = { name = ep3_laamps.1001.f @@ -3923,7 +3864,7 @@ ep3_laamps.1001 = { } } } - + # Larry Loner of the Clan McNoMates. option = { name = ep3_laamps.1001.g @@ -4098,7 +4039,7 @@ ep3_laamps.1011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = major_stress_impact_loss arbitrary = major_stress_impact_gain } @@ -4107,7 +4048,7 @@ ep3_laamps.1011 = { ai_value_modifier = { ai_honor = 2 } } } - + # One-way + weak hook. option = { name = ep3_laamps.1011.b @@ -4144,7 +4085,7 @@ ep3_laamps.1021 = { immediate = { if = { limit = { - domicile = { + domicile = { OR = { has_domicile_building = supply_tent_reserve_provisions has_domicile_construction = supply_tent_reserve_provisions @@ -4156,7 +4097,7 @@ ep3_laamps.1021 = { } if = { limit = { - domicile = { + domicile = { OR = { has_domicile_building = supply_tent_reserve_water has_domicile_construction = supply_tent_reserve_water @@ -4428,7 +4369,7 @@ ep3_laamps.1021 = { ################################################## # Poach for food -ep3_laamps.5000 = { +ep3_laamps.5000 = { type = character_event title = ep3_laamps.5000.t desc = { @@ -4438,7 +4379,7 @@ ep3_laamps.5000 = { trigger = { domicile = { provisions < provisions_privation_threshold_low - } + } } desc = ep3_laamps.5000.provisionslow } @@ -4459,13 +4400,13 @@ ep3_laamps.5000 = { character = scope:local_lord } cooldown = { years = 10 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government is_available = yes - + #Ensure we have a hunter any_courtier = { can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } @@ -4477,7 +4418,7 @@ ep3_laamps.5000 = { is_vegetarian_trigger = no } - + weight_multiplier = { base = 1 modifier = { @@ -4499,7 +4440,7 @@ ep3_laamps.5000 = { } } } - + immediate = { random_courtier = { limit = { @@ -4515,9 +4456,9 @@ ep3_laamps.5000 = { save_scope_as = location } } - + #Petition them for rights to hunt - option = { + option = { name = ep3_laamps.5000.a flavor = ep3_laamps.5000.a.tt @@ -4597,7 +4538,7 @@ ep3_laamps.5000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = miniscule_stress_impact_loss deceitful = medium_stress_impact_gain } @@ -4605,13 +4546,13 @@ ep3_laamps.5000 = { ai_chance = { base = 100 ai_value_modifier = { - ai_boldness = 0.5 + ai_boldness = 0.5 } } } - + #Risk it for the biscuit - option = { + option = { name = ep3_laamps.5000.b scope:hunter = { @@ -4688,7 +4629,7 @@ ep3_laamps.5000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_gain deceitful = miniscule_stress_impact_loss } @@ -4700,9 +4641,9 @@ ep3_laamps.5000 = { } } } - + #Forage for berries n stuff - option = { + option = { name = ep3_laamps.5000.c random_list = { @@ -4751,7 +4692,7 @@ ep3_laamps.5000 = { } # Meet a wandering priest -ep3_laamps.5005 = { +ep3_laamps.5005 = { type = character_event title = ep3_laamps.5005.t desc = { @@ -4777,27 +4718,28 @@ ep3_laamps.5005 = { animation = obsequious_bow } cooldown = { years = 10 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes #Ensure we're in a place that's held by someone exists = location.county.holder } - + weight_multiplier = { base = 1 modifier = { factor = 3 OR = { - faith = { has_doctrine = tenet_mendicant_preachers } - location.county.holder.faith = { has_doctrine = tenet_mendicant_preachers } + rite = { rite_has_tenet = tenet_mendicant_preachers } + location.county.holder.rite = { rite_has_tenet = tenet_mendicant_preachers } } } } - + immediate = { create_character = { template = mendicant_mystic_character @@ -4806,6 +4748,7 @@ ep3_laamps.5005 = { location = root.location culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite save_scope_as = priest after_creation = { add_character_flag = created @@ -4822,9 +4765,9 @@ ep3_laamps.5005 = { scope:priest = { assign_random_nickname_effect = yes } } } - + #Ask him to join your followers - option = { + option = { name = ep3_laamps.5005.a duel = { @@ -4888,7 +4831,7 @@ ep3_laamps.5005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss callous = medium_stress_impact_gain } @@ -4896,13 +4839,13 @@ ep3_laamps.5005 = { ai_chance = { base = 100 ai_value_modifier = { - ai_boldness = 0.5 + ai_boldness = 0.5 } } } - + #Invite him to sit and stay a night - option = { + option = { name = ep3_laamps.5005.b if = { @@ -4936,7 +4879,7 @@ ep3_laamps.5005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain trusting = miniscule_stress_impact_loss } @@ -4948,9 +4891,9 @@ ep3_laamps.5005 = { } } } - + #Turn him away - option = { + option = { name = ep3_laamps.5005.c trigger = { @@ -4985,7 +4928,7 @@ ep3_laamps.5005 = { } #Turn him away, since he's a heretic - option = { + option = { name = ep3_laamps.5005.d trigger = { @@ -5015,7 +4958,7 @@ ep3_laamps.5005 = { } # The rough life begins to hurt -ep3_laamps.5010 = { +ep3_laamps.5010 = { type = character_event title = ep3_laamps.5010.t desc = ep3_laamps.5010.desc @@ -5029,23 +4972,26 @@ ep3_laamps.5010 = { animation = pain } cooldown = { years = 10 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government age < 65 #Just for loc tonality + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes any_courtier = { + is_available_allow_travelling = yes is_valid_active_event_recurrer_trigger = { LIEGE = ROOT } is_adult = yes # is an adult age < 65 # but not too old, so wincing in pain isn't just from being real old } } - + immediate = { random_courtier = { limit = { + is_available_allow_travelling = yes is_valid_active_event_recurrer_trigger = { LIEGE = ROOT } is_adult = yes # is an adult age < 65 # but not too old, so wincing in pain isn't just from being real old @@ -5092,9 +5038,9 @@ ep3_laamps.5010 = { } } } - + #Buy some beds at an inn for the night - option = { + option = { name = ep3_laamps.5010.a remove_short_term_gold = minor_gold_value @@ -5115,9 +5061,9 @@ ep3_laamps.5010 = { modifier = ep3_rested_and_refreshed_modifier years = 5 } - } + } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss generous = miniscule_stress_impact_loss greedy = medium_stress_impact_gain @@ -5128,13 +5074,13 @@ ep3_laamps.5010 = { ai_chance = { base = 100 ai_value_modifier = { - ai_compassion = 1 + ai_compassion = 1 } } } - + #Build a Pavilion upgrade at a discount - option = { + option = { name = ep3_laamps.5010.b trigger = { NOT = { @@ -5161,7 +5107,7 @@ ep3_laamps.5010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss content = minor_stress_impact_gain } @@ -5173,9 +5119,9 @@ ep3_laamps.5010 = { } } } - + #Soldier on - option = { + option = { name = ep3_laamps.5010.c random_list = { @@ -5227,7 +5173,7 @@ ep3_laamps.5010 = { type = event_toast_effect_bad title = ep3_laamps.5010.c.failure left_icon = root - right_icon = scope:hunter + right_icon = scope:follower add_stress = minor_stress_gain add_character_modifier = { @@ -5248,7 +5194,7 @@ ep3_laamps.5010 = { } # Offer a life to hardened fighters -ep3_laamps.5015 = { +ep3_laamps.5015 = { type = character_event title = ep3_laamps.5015.t desc = ep3_laamps.5015.desc @@ -5266,11 +5212,12 @@ ep3_laamps.5015 = { position = lower_center_portrait } cooldown = { years = 35 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes } @@ -5323,6 +5270,7 @@ ep3_laamps.5015 = { location = root.location culture = location.culture faith = location.faith + rite = location.rite gender_female_chance = root_soldier_female_chance dynasty = none save_scope_as = knight @@ -5362,7 +5310,7 @@ ep3_laamps.5015 = { } #Rob him - option = { + option = { name = ep3_laamps.5015.a trigger = { @@ -5418,7 +5366,7 @@ ep3_laamps.5015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss compassionate = medium_stress_impact_gain just = medium_stress_impact_gain @@ -5434,7 +5382,7 @@ ep3_laamps.5015 = { } #Bring 'em all - option = { + option = { name = ep3_laamps.5015.b trigger = { @@ -5454,7 +5402,7 @@ ep3_laamps.5015 = { remove_short_term_gold = { 10 30 } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss greedy = medium_stress_impact_gain compassionate = miniscule_stress_impact_loss @@ -5464,13 +5412,13 @@ ep3_laamps.5015 = { ai_chance = { base = 100 ai_value_modifier = { - ai_compassion = 1 + ai_compassion = 1 } } } - + #Hire the fella as a knight - option = { + option = { name = ep3_laamps.5015.c add_courtier = scope:knight @@ -5478,7 +5426,7 @@ ep3_laamps.5015 = { set_knight_status = force } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -5490,9 +5438,9 @@ ep3_laamps.5015 = { } } } - + #Offer them a place to rest, but only that - option = { + option = { name = ep3_laamps.5015.d domicile = { @@ -5513,7 +5461,7 @@ ep3_laamps.5015 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss generous = minor_stress_impact_gain } @@ -5533,7 +5481,7 @@ ep3_laamps.5015 = { } # Learn new local recipes -ep3_laamps.5020 = { +ep3_laamps.5020 = { type = character_event title = ep3_laamps.5020.t desc = ep3_laamps.5020.desc @@ -5547,11 +5495,12 @@ ep3_laamps.5020 = { animation = personality_compassionate } cooldown = { years = 10 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes culture != location.culture any_courtier = { @@ -5604,7 +5553,7 @@ ep3_laamps.5020 = { } #Suggest a *special* new addition - option = { + option = { name = ep3_laamps.5020.a trigger = { @@ -5646,7 +5595,7 @@ ep3_laamps.5020 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } @@ -5659,7 +5608,7 @@ ep3_laamps.5020 = { } #Suggest fusion cuisine - option = { + option = { name = ep3_laamps.5020.b trigger = { @@ -5698,7 +5647,7 @@ ep3_laamps.5020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss gluttonous = medium_stress_impact_loss inappetetic = medium_stress_impact_gain @@ -5713,7 +5662,7 @@ ep3_laamps.5020 = { } #Try some of this local cuisine - option = { + option = { name = ep3_laamps.5020.c random_list = { @@ -5762,7 +5711,7 @@ ep3_laamps.5020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gluttonous = minor_stress_impact_loss arrogant = minor_stress_impact_gain humble = miniscule_stress_impact_loss @@ -5772,13 +5721,13 @@ ep3_laamps.5020 = { ai_chance = { base = 100 ai_value_modifier = { - ai_compassion = 1 + ai_compassion = 1 } } } - + #Refuse to try it - option = { + option = { name = ep3_laamps.5020.d random = { @@ -5792,11 +5741,11 @@ ep3_laamps.5020 = { title = ep3_laamps.5020.d.tt left_icon = root - give_nickname = nick_the_narrow_minded + give_nickname = nick_the_narrow_minded } } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -5823,7 +5772,7 @@ scripted_trigger 5025_can_spawn_contract_trigger = { } # What is your purpose? -ep3_laamps.5025 = { +ep3_laamps.5025 = { type = character_event title = ep3_laamps.5025.t desc = ep3_laamps.5025.desc @@ -5833,11 +5782,12 @@ ep3_laamps.5025 = { animation = thinking } cooldown = { years = 30 } - + trigger = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes } immediate = { @@ -5858,7 +5808,7 @@ ep3_laamps.5025 = { save_temporary_scope_as = vassal_check 5025_can_spawn_contract_trigger = { LAAMP = root EMPLOYER = scope:vassal_check } } - add_to_temporary_list = potential_contract_employers + add_to_temporary_list = potential_contract_employers } } #Can we _actually_ spawn two contracts? @@ -5866,7 +5816,7 @@ ep3_laamps.5025 = { limit = { any_in_list = { list = potential_contract_employers - count >= 2 + count >= 2 } } save_scope_as = spawn_task_contract_option_available @@ -5875,7 +5825,7 @@ ep3_laamps.5025 = { } #I wanna be landed! - option = { + option = { name = ep3_laamps.5025.a add_character_modifier = { @@ -5883,7 +5833,7 @@ ep3_laamps.5025 = { years = 35 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss ambitious = minor_stress_impact_loss humble = medium_stress_impact_gain @@ -5902,7 +5852,7 @@ ep3_laamps.5025 = { } #I like being landless :) - option = { + option = { name = ep3_laamps.5025.b flavor = ep3_laamps.5025.b.flavor @@ -5950,7 +5900,7 @@ ep3_laamps.5025 = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain humble = minor_stress_impact_loss } @@ -5962,9 +5912,9 @@ ep3_laamps.5025 = { } } } - + #It's best to keep options open - option = { + option = { name = ep3_laamps.5025.c flavor = ep3_laamps.5025.c.flavor @@ -5982,7 +5932,7 @@ ep3_laamps.5025 = { title = ep3_laamps.5025.c.toast left_icon = root - add_trait = flexible_leader + add_trait = flexible_leader } } } @@ -5994,7 +5944,7 @@ ep3_laamps.5025 = { change_provisions = medium_provisions_gain } - stress_impact = { + stress_and_fulfillment_impact = { fickle = medium_stress_impact_loss stubborn = medium_stress_impact_gain } @@ -6009,7 +5959,7 @@ ep3_laamps.5025 = { } # Local tavern owner disrespects you -ep3_laamps.5030 = { +ep3_laamps.5030 = { type = character_event title = ep3_laamps.5030.t desc = ep3_laamps.5030.desc @@ -6029,6 +5979,7 @@ ep3_laamps.5030 = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes } @@ -6073,13 +6024,14 @@ ep3_laamps.5030 = { location = root.location culture = location.culture faith = location.faith + rite = location.rite gender_female_chance = { if = { - limit = { root.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { root.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 100 } else_if = { - limit = { root.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { root.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 0 } else = { @@ -6096,7 +6048,7 @@ ep3_laamps.5030 = { } #Ah, forget about it, give me a drink - option = { + option = { name = ep3_laamps.5030.a trigger = { @@ -6110,7 +6062,7 @@ ep3_laamps.5030 = { years = 3 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss } @@ -6123,10 +6075,10 @@ ep3_laamps.5030 = { } #Don't you know who I am? - option = { + option = { name = ep3_laamps.5030.b - trigger = { + trigger = { dynasty = { dynasty_prestige_level >= medium_dynasty_prestige_level } @@ -6154,7 +6106,7 @@ ep3_laamps.5030 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arrogant = minor_stress_impact_loss humble = medium_stress_impact_gain @@ -6169,7 +6121,7 @@ ep3_laamps.5030 = { } #Threaten them - option = { + option = { name = ep3_laamps.5030.c add_internal_flag = dangerous @@ -6281,7 +6233,7 @@ ep3_laamps.5030 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -6295,7 +6247,7 @@ ep3_laamps.5030 = { } #Try to barter - option = { + option = { name = ep3_laamps.5030.d duel = { @@ -6344,16 +6296,16 @@ ep3_laamps.5030 = { ai_chance = { base = 100 ai_value_modifier = { - ai_compassion = 1 + ai_compassion = 1 } } } #Take the insult - option = { + option = { name = tournament_events.0161.c - - stress_impact = { + + stress_and_fulfillment_impact = { base = minor_stress_gain arrogant = minor_stress_impact_gain } @@ -6361,11 +6313,11 @@ ep3_laamps.5030 = { ai_chance = { base = 100 ai_value_modifier = { - ai_compassion = 1 + ai_compassion = 1 } } } - + after = { scope:innkeeper = { silent_disappearance_ai_if_created_effect = yes @@ -6380,7 +6332,7 @@ ep3_laamps.5035 = { desc = ep3_laamps.5035.desc theme = landless_adventurer override_background = { - reference = terrain + reference = terrain } left_portrait = { character = root @@ -6411,6 +6363,7 @@ ep3_laamps.5035 = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes } @@ -6433,32 +6386,6 @@ ep3_laamps.5035 = { location = { save_scope_as = location } - if = { #Grab a random, inexpensive artifact if you have it - limit = { - any_character_artifact = { - NOT = { - has_artifact_modifier = artifact_guide_map_modifier - } - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:guide } - } - } - random_character_artifact = { - limit = { - NOT = { - has_artifact_modifier = artifact_guide_map_modifier - } - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:guide } - } - weight = { - base = 1 - modifier = { - rarity = common - add = 2 - } - } - save_scope_as = random_artifact - } - } if = { limit = { any_pool_character = { @@ -6486,6 +6413,7 @@ ep3_laamps.5035 = { location = root.location culture = location.culture faith = location.faith + rite = location.rite gender_female_chance = 50 dynasty = none save_scope_as = guide @@ -6518,10 +6446,36 @@ ep3_laamps.5035 = { set_max_durability = 25 } } + if = { #Grab a random, inexpensive artifact if you have it + limit = { + any_character_artifact = { + NOT = { + has_artifact_modifier = artifact_guide_map_modifier + } + artifact_can_be_gift_to_trigger = { RECIPIENT = scope:guide } + } + } + random_character_artifact = { + limit = { + NOT = { + has_artifact_modifier = artifact_guide_map_modifier + } + artifact_can_be_gift_to_trigger = { RECIPIENT = scope:guide } + } + weight = { + base = 1 + modifier = { + rarity = common + add = 2 + } + } + save_scope_as = random_artifact + } + } } #Recruit them permanently - option = { + option = { name = ep3_laamps.5035.a pay_short_term_gold = { @@ -6537,7 +6491,7 @@ ep3_laamps.5035 = { CANDIDATE = scope:guide } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -6551,7 +6505,7 @@ ep3_laamps.5035 = { } #Buy maps off them - option = { + option = { name = ep3_laamps.5035.b pay_short_term_gold = { @@ -6563,7 +6517,7 @@ ep3_laamps.5035 = { set_owner = root } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain paranoid = minor_stress_impact_loss } @@ -6577,7 +6531,7 @@ ep3_laamps.5035 = { } #Trust their guidance - option = { + option = { name = ep3_laamps.5035.c pay_short_term_gold = { @@ -6632,7 +6586,7 @@ ep3_laamps.5035 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -6646,7 +6600,7 @@ ep3_laamps.5035 = { } #Reject them - option = { + option = { name = ep3_laamps.5035.d flavor = ep3_laamps.5035.d.tt @@ -6667,7 +6621,7 @@ ep3_laamps.5035 = { ai_chance = { base = 100 ai_value_modifier = { - ai_greed = 1 + ai_greed = 1 } } } @@ -6691,6 +6645,7 @@ ep3_laamps.5040 = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes } @@ -6725,6 +6680,7 @@ ep3_laamps.5040 = { location = root.location culture = location.culture faith = location.faith + rite = location.rite dynasty = none save_scope_as = merchant after_creation = { @@ -6739,7 +6695,7 @@ ep3_laamps.5040 = { } #Go searching in the ruins - option = { + option = { name = ep3_laamps.5040.a random_list = { @@ -6756,7 +6712,7 @@ ep3_laamps.5040 = { title = ep3_laamps.5040.a.bigsuccess left_icon = root right_icon = scope:newly_created_artifact - custom_tooltip = ep3_laamps.5040.a.bigsuccess.tt + custom_tooltip = ep3_laamps.5040.a.bigsuccess.tt } } 64 = { #You discover a small trinket @@ -6787,7 +6743,7 @@ ep3_laamps.5040 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain brave = miniscule_stress_impact_loss @@ -6803,7 +6759,7 @@ ep3_laamps.5040 = { } #Buy supplies - option = { + option = { name = ep3_laamps.5040.b domicile = { @@ -6812,7 +6768,7 @@ ep3_laamps.5040 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain generous = minor_stress_impact_loss } @@ -6852,6 +6808,7 @@ ep3_laamps.5045 = { #Standard checks has_ep3_dlc_trigger = yes has_government = landless_adventurer_government + is_available_allow_travelling = yes is_location_valid_for_travel_event_on_land = yes location.barony.holder ?= { is_available_ai_adult = yes @@ -6888,7 +6845,7 @@ ep3_laamps.5045 = { save_temporary_scope_as = vassal_check 5025_can_spawn_contract_trigger = { LAAMP = root EMPLOYER = scope:vassal_check } } - add_to_temporary_list = potential_contract_employers + add_to_temporary_list = potential_contract_employers } } #Can we _actually_ spawn two contracts? @@ -6896,7 +6853,7 @@ ep3_laamps.5045 = { limit = { any_in_list = { list = potential_contract_employers - count >= 2 + count >= 2 } } save_scope_as = spawn_task_contract_option_available @@ -7015,7 +6972,7 @@ ep3_laamps.5045 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss content = minor_stress_impact_gain diligent = miniscule_stress_impact_loss @@ -7031,7 +6988,7 @@ ep3_laamps.5045 = { } #Ask for gold - option = { + option = { name = ep3_laamps.5045.b add_gold = { 5 20 } @@ -7043,7 +7000,7 @@ ep3_laamps.5045 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss } @@ -7056,7 +7013,7 @@ ep3_laamps.5045 = { } #Ask for provisions - option = { + option = { name = ep3_laamps.5045.c domicile = { @@ -7072,7 +7029,7 @@ ep3_laamps.5045 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain content = miniscule_stress_impact_loss greedy = miniscule_stress_impact_loss @@ -7087,7 +7044,7 @@ ep3_laamps.5045 = { } #Ask for work - option = { + option = { name = ep3_laamps.5045.d trigger = { exists = scope:spawn_task_contract_option_available } reverse_add_opinion = { @@ -7101,7 +7058,7 @@ ep3_laamps.5045 = { SPAWN_CONTRACTS = 2 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss content = minor_stress_impact_gain brave = miniscule_stress_impact_loss @@ -7164,7 +7121,7 @@ ep3_laamps.5999 = { is_alive = yes } save_scope_as = harald - } + } } character:364 = { if = { @@ -7172,16 +7129,16 @@ ep3_laamps.5999 = { is_alive = yes } save_scope_as = flanders #I can't be bothered spelling Boujewijingjn ok - } + } } character:114 = { - save_scope_as = edward + save_scope_as = edward } location = { save_scope_as = location } } - + option = { #Let's wait and see name = ep3_laamps.5999.a @@ -7190,7 +7147,7 @@ ep3_laamps.5999 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss } @@ -7210,7 +7167,7 @@ ep3_laamps.5999 = { SPAWN_CONTRACTS = 1 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain } @@ -7277,7 +7234,7 @@ ep3_laamps.6000 = { save_scope_as = ely } } - + option = { #Set sail at once! name = { text = ep3_laamps.6000.a.dead @@ -7310,7 +7267,7 @@ ep3_laamps.6000 = { travel_with_domicile = yes } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss } @@ -7334,7 +7291,7 @@ ep3_laamps.6000 = { modifier = demanded_eviction_opinion } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain } @@ -8323,11 +8280,11 @@ ep3_laamps.7001 = { trigger = { has_ep3_dlc_trigger = yes has_government = landless_adventurer_government - character:90028 = { - exists = this + character:90028 ?= { + is_alive = yes } - character:161266 = { - exists = this + character:161266 ?= { + is_alive = yes } } @@ -8341,7 +8298,7 @@ ep3_laamps.7001 = { } ep3_harrying_widget_setup_effect = yes } - + option = { #Of course, come on in! name = ep3_laamps.7001.a @@ -8349,21 +8306,23 @@ ep3_laamps.7001 = { ep3_increase_resistance_effect = { AMOUNT = harrying_medium_increase_value } - random = { - chance = { - value = 5 - if = { - limit = { is_ai = no } - add = 95 + hidden_effect = { + random = { + chance = { + value = 5 + if = { + limit = { is_ai = no } + add = 95 + } + } + trigger_event = { + id = ep3_laamps.7002 + days = { 150 200 } } - } - trigger_event = { - id = ep3_laamps.7002 - days = { 150 200 } } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss gregarious = minor_stress_impact_loss } @@ -8386,7 +8345,7 @@ ep3_laamps.7001 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain callous = minor_stress_impact_loss } @@ -8438,23 +8397,21 @@ ep3_laamps.7002 = { trigger = { has_ep3_dlc_trigger = yes - character:90028 = { - exists = this + character:90028 ?= { + is_alive = yes } - character:161266 = { - exists = this + character:161266 ?= { + is_alive = yes location = root.location } title:e_byzantium = { - exists = this + exists = holder } title:k_england = { - exists = this + exists = holder } - title:c_zichia.holder = { - NOT = { - this = title:e_byzantium.holder - } + title:c_zichia.holder ?= { + this != title:e_byzantium.holder } } @@ -8477,7 +8434,7 @@ ep3_laamps.7002 = { ep3_laamps_7002_ai_siward_leaves_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss } @@ -8622,7 +8579,7 @@ ep3_laamps.7003 = { return_trip = no # One way } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss } @@ -8821,6 +8778,7 @@ ep3_laamps.7004 = { immediate = { scope:zichia.holder.top_liege = { save_scope_as = title_holder + save_scope_as = government_giver } hidden_effect = { add_unpressed_claim = title:c_zichia @@ -8870,89 +8828,11 @@ ep3_laamps.7004 = { modifier = ep3_ennobled_adventurer_modifier_1 years = 10 } - ## Nomad. - if = { - limit = { - OR = { - government_has_flag = government_is_nomadic - scope:new_liege ?= { government_has_flag = government_is_nomadic } - scope:old_government ?= flag:nomad - scope:new_capital.capital_province = { - OR = { - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } - } - } - change_government = nomad_government - } - ## Administrative. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_administrative } - } - change_government = administrative_government - } - ## Clan. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_clan } - } - change_government = clan_government - } - ## Tribal. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_tribal } - } - change_government = tribal_government - } - ## Else feudal. - else = { change_government = feudal_government } + assign_new_government_effect = yes } hidden_effect = { - ## Nomad. - if = { - limit = { - OR = { - government_has_flag = government_is_nomadic - scope:new_liege ?= { government_has_flag = government_is_nomadic } - scope:old_government ?= flag:nomad - scope:new_capital.capital_province = { - OR = { - has_holding_type = nomad_holding - has_holding_type = herder_holding - } - } - } - } - change_government = nomad_government - } - ## Administrative. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_administrative } - } - change_government = administrative_government - } - ## Clan. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_clan } - } - change_government = clan_government - } - ## Tribal. - else_if = { - limit = { - scope:new_liege ?= { government_has_flag = government_is_tribal } - } - change_government = tribal_government - } - ## Else feudal. - else = { change_government = feudal_government } + assign_new_government_effect = yes } scope:zichia = { @@ -8960,7 +8840,7 @@ ep3_laamps.7004 = { set_color_from_title = title:k_england } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss greedy = medium_stress_impact_gain } @@ -8979,7 +8859,7 @@ ep3_laamps.7004 = { target_title = title:c_zichia } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss greedy = minor_stress_impact_loss craven = medium_stress_impact_gain @@ -9016,6 +8896,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } create_character = { @@ -9023,6 +8904,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } create_character = { @@ -9030,6 +8912,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } create_character = { @@ -9037,6 +8920,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } create_character = { @@ -9044,6 +8928,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } create_character = { @@ -9051,6 +8936,7 @@ ep3_laamps.9971 = { location = root.location culture = root.location.culture faith = root.location.faith + rite = root.location.rite gender_female_chance = 50 } } @@ -9099,7 +8985,7 @@ ep3_laamps.9981 = { } # And fire us again in a bit. if = { - limit = { + limit = { var:contract_passive_spawn_tally < 2 } trigger_event = { diff --git a/events/dlc/ep3/ep3_laamp_events_8.txt b/events/dlc/ep3/ep3_laamp_events_8.txt index 5b546480c..5dbbe6caa 100644 --- a/events/dlc/ep3/ep3_laamp_events_8.txt +++ b/events/dlc/ep3/ep3_laamp_events_8.txt @@ -368,7 +368,7 @@ ep3_laamps.8020 = { CANDIDATE = scope:wouldbe_companion EMPLOYER = root } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain humble = minor_stress_impact_gain } @@ -392,7 +392,7 @@ ep3_laamps.8020 = { opinion = 70 } add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_gain humble = minor_stress_impact_gain } @@ -413,7 +413,7 @@ ep3_laamps.8020 = { CHARACTER = root.location.county.holder OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain ambitious = minor_stress_impact_gain stubborn = minor_stress_impact_gain @@ -538,7 +538,7 @@ ep3_laamps.8030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain humble = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -577,7 +577,7 @@ ep3_laamps.8030 = { } add_durability = 25 } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain brave = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -596,7 +596,7 @@ ep3_laamps.8030 = { option = { name = ep3_laamps.8030.c add_gold = medium_gold_value - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain brave = minor_stress_impact_gain generous = minor_stress_impact_gain @@ -722,7 +722,7 @@ ep3_laamps.8040 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain humble = minor_stress_impact_gain @@ -801,7 +801,7 @@ ep3_laamps.8040 = { give_nickname = nick_wolf_mother } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain sadistic = medium_stress_impact_gain callous = minor_stress_impact_gain @@ -843,7 +843,7 @@ ep3_laamps.8040 = { } add_domicile_building = baggage_train_kennel } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain sadistic = medium_stress_impact_gain callous = minor_stress_impact_gain @@ -861,7 +861,7 @@ ep3_laamps.8040 = { # We'll get you a new tent option = { name = ep3_laamps.8040.d - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = medium_stress_impact_gain sadistic = minor_stress_impact_gain @@ -1052,14 +1052,14 @@ ep3_laamps.8050 = { scope:minority.faith = root.faith } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain shy = minor_stress_impact_gain } } else = { - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -1105,13 +1105,13 @@ ep3_laamps.8050 = { scope:minority.faith = root.faith } add_piety = medium_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_gain callous = minor_stress_impact_gain } } else = { - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_gain callous = minor_stress_impact_gain zealous = minor_stress_impact_gain @@ -1137,7 +1137,7 @@ ep3_laamps.8050 = { add_piety = medium_piety_gain } else = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_gain stubborn = minor_stress_impact_gain callous = minor_stress_impact_loss @@ -1178,6 +1178,7 @@ ep3_laamps.8060 = { is_available_allow_travelling = yes domicile ?= { domicile_location = { + this = root.location # Water should be precious is_desert_trigger = yes NOT = { terrain = oasis } @@ -1254,7 +1255,7 @@ ep3_laamps.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain vengeful = medium_stress_impact_gain callous = minor_stress_impact_gain @@ -1289,7 +1290,7 @@ ep3_laamps.8060 = { contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain arrogant = medium_stress_impact_gain wrathful = medium_stress_impact_gain @@ -1346,7 +1347,7 @@ ep3_laamps.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = medium_stress_impact_gain humble = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -1382,7 +1383,7 @@ ep3_laamps.8060 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { fickle = medium_stress_impact_gain humble = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -1406,7 +1407,7 @@ ep3_laamps.8060 = { option = { name = ep3_laamps.8060.e domicile = { change_provisions = medium_provisions_loss } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain vengeful = medium_stress_impact_gain callous = minor_stress_impact_gain @@ -1526,7 +1527,7 @@ ep3_laamps.8070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain diligent = minor_stress_impact_gain } @@ -1542,7 +1543,7 @@ ep3_laamps.8070 = { # I think we'll survive without them option = { name = ep3_laamps.8070.d - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain eccentric = medium_stress_impact_gain ambitious = minor_stress_impact_gain @@ -1611,6 +1612,7 @@ ep3_laamps.8080 = { is_coastal = yes any_neighboring_province = { is_river_province = yes } } + is_sea_province = no } NOT = { employs_court_position = quartermaster_camp_officer } can_employ_court_position_type = quartermaster_camp_officer @@ -1632,6 +1634,12 @@ ep3_laamps.8080 = { save_scope_as = sailor_home } } + if = { # Fallback in case there is no neighboring province (like madeira) + limit = { + NOT = { exists = scope:sailor_home } + } + root.location = { save_scope_as = sailor_home } + } hidden_effect = { random_pool_character = { province = scope:sailor_home @@ -1661,6 +1669,7 @@ ep3_laamps.8080 = { template = weird_sailor_template culture = scope:sailor_home.culture faith = scope:sailor_home.faith + rite = scope:sailor_home.rite save_scope_as = sailor after_creation = { random_list = { @@ -1698,7 +1707,7 @@ ep3_laamps.8080 = { POS = second CANDIDATE = scope:sailor } - stress_impact = { + stress_and_fulfillment_impact = { eccentric = medium_stress_impact_loss shy = minor_stress_impact_loss cynical = medium_stress_impact_gain @@ -1727,7 +1736,7 @@ ep3_laamps.8080 = { target = scope:sailor gold = minor_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain cynical = medium_stress_impact_gain shy = minor_stress_impact_gain @@ -1790,7 +1799,7 @@ ep3_laamps.8080 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain gregarious = minor_stress_impact_gain } @@ -1807,7 +1816,7 @@ ep3_laamps.8080 = { # Get away from me you mad old sea dog option = { name = ep3_laamps.8080.d - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_gain gregarious = minor_stress_impact_gain eccentric = major_stress_impact_gain @@ -1884,6 +1893,7 @@ ep3_laamps.8090 = { } desc = ep3_laamps.8090.desc.world_tibet } + # it's subset of SEA now, but don't waste text triggered_desc = { trigger = { root.domicile.domicile_location = { @@ -1984,12 +1994,6 @@ ep3_laamps.8090 = { root.culture = { culture_overlaps_geographical_region = world_tibet } } } - AND = { - root.domicile.domicile_location = { geographical_region = world_burma } - NOT = { - root.culture = { culture_overlaps_geographical_region = world_burma } - } - } AND = { root.domicile.domicile_location = { geographical_region = world_asia_china } NOT = { @@ -2039,7 +2043,7 @@ ep3_laamps.8090 = { desc = cultural_acceptance_distant_hero } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain stubborn = medium_stress_impact_gain gregarious = minor_stress_impact_gain @@ -2067,7 +2071,7 @@ ep3_laamps.8090 = { set_culture = scope:culture } set_culture = scope:culture - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_loss eccentric = medium_stress_impact_loss arrogant = medium_stress_impact_gain @@ -2086,7 +2090,7 @@ ep3_laamps.8090 = { modifier = laamps_8090_preparing_invasion years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain humble = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -2312,7 +2316,7 @@ ep3_laamps.8102 = { if = { limit = { scope:claimed_title = { - tier = tier_empire + tier >= tier_empire } } add = 4 @@ -3594,7 +3598,7 @@ ep3_laamps.8110 = { option = { #huzzah! name = ep3_laamps.8110.a - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_loss greedy = massive_stress_loss } @@ -3851,6 +3855,7 @@ ep3_laamps.8200 = { max_template_high_skill } faith = location.faith + rite = location.rite culture = location.culture gender_female_chance = { add = 25 @@ -3945,7 +3950,7 @@ ep3_laamps.8200 = { ai_chance = 100 - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_loss } } @@ -3960,7 +3965,7 @@ ep3_laamps.8200 = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_loss shy = medium_stress_loss } @@ -3975,7 +3980,7 @@ ep3_laamps.8200 = { scope:new_person = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_loss paranoid = major_stress_loss shy = major_stress_loss diff --git a/events/dlc/ep3/ep3_laamp_flavor.txt b/events/dlc/ep3/ep3_laamp_flavor.txt index c286eac6e..7e66efec0 100644 --- a/events/dlc/ep3/ep3_laamp_flavor.txt +++ b/events/dlc/ep3/ep3_laamp_flavor.txt @@ -324,7 +324,7 @@ ep3_laamp_flavor.0020 = { target = scope:town_leader gold = major_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain } } @@ -333,7 +333,7 @@ ep3_laamp_flavor.0020 = { target = scope:town_leader gold = medium_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } } @@ -412,7 +412,7 @@ ep3_laamp_flavor.0020 = { has_trait = gallowsbait } add_prestige = major_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain ambitious = medium_stress_impact_gain stubborn = medium_stress_impact_gain @@ -421,7 +421,7 @@ ep3_laamp_flavor.0020 = { } else = { add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain ambitious = minor_stress_impact_gain stubborn = minor_stress_impact_gain @@ -550,7 +550,7 @@ ep3_laamp_flavor.0030 = { modifier = dream_ambitious years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss ambitious = minor_stress_impact_loss impatient = minor_stress_impact_loss @@ -574,7 +574,7 @@ ep3_laamp_flavor.0030 = { modifier = dream_envious years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss lifestyle_reveler = minor_stress_impact_loss gluttonous = minor_stress_impact_loss @@ -599,7 +599,7 @@ ep3_laamp_flavor.0030 = { modifier = dream_content years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss temperate = minor_stress_impact_loss calm = minor_stress_impact_loss @@ -716,7 +716,7 @@ ep3_laamp_flavor.0040 = { XP_MIN = gallowsbait_xp_minor_gain XP_MAX = gallowsbait_xp_minor_gain } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss greedy = minor_stress_impact_loss sadistic = minor_stress_impact_loss @@ -821,6 +821,7 @@ ep3_laamp_flavor.0050 = { template = priest_character_template culture = root.location.culture faith = root.location.faith + rite = root.location.rite dynasty = none location = root.location gender = male @@ -883,6 +884,7 @@ ep3_laamp_flavor.0050 = { } } } + pam_witch_justice_fulfillment_effect = yes stress_impact = { zealous = minor_stress_impact_loss cynical = minor_stress_impact_gain @@ -904,7 +906,8 @@ ep3_laamp_flavor.0050 = { modifier = learned_in_demonology years = 10 } - stress_impact = { + pam_witch_embrace_fulfillment_effect = yes + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain cynical = minor_stress_impact_gain craven = medium_stress_impact_gain @@ -925,7 +928,8 @@ ep3_laamp_flavor.0050 = { trigger = { exists = scope:player_heir_scope } - stress_impact = { + pam_witch_embrace_fulfillment_effect = yes + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain cynical = minor_stress_impact_gain craven = medium_stress_impact_gain @@ -949,7 +953,7 @@ ep3_laamp_flavor.0050 = { # 3spooky5me option = { name = ep3_laamp_flavor.0050.d - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_loss } add_prestige = minor_prestige_loss diff --git a/events/dlc/ep3/ep3_laamp_flavor_oltner.txt b/events/dlc/ep3/ep3_laamp_flavor_oltner.txt deleted file mode 100644 index fdc43fe51..000000000 --- a/events/dlc/ep3/ep3_laamp_flavor_oltner.txt +++ /dev/null @@ -1,329 +0,0 @@ -namespace = ep3_laamp_flavor_oltner - -scripted_trigger suitable_pool_marriage_trigger = { - save_temporary_scope_as = pool_marriage_target - is_physically_able_adult = yes - allowed_to_marry_character_gender_trigger = { CHARACTER = $FOLLOWER_TARGET$ } - $FOLLOWER_TARGET$ ?= { allowed_to_marry_character_gender_trigger = { CHARACTER = prev } } - are_characters_sensible_lovers_trigger = { INSTIGATING_LOVER = $FOLLOWER_TARGET$ TARGET_OF_LOVE = scope:pool_marriage_target } - is_married = no - can_marry_trigger = yes - is_concubine = no - NOT = { - exists = betrothed - } - has_no_particular_noble_roots_trigger = yes -} - -scripted_trigger suitable_follower_marriage_character_trigger = { - is_physically_able_adult = yes - this != root - is_married = no - can_marry_trigger = yes - is_concubine = no - age <= 50 - health >= fine_health - is_faith_dominant_gender = no - NOR = { - house = root.house - is_close_family_of = root - exists = betrothed - has_relation_rival = root - } - save_temporary_scope_as = entourage_member - any_pool_character = { - province = root.location - age <= 40 - health >= fine_health - suitable_pool_marriage_trigger = { FOLLOWER_TARGET = scope:entourage_member } - } -} - -# A Follower's Heart -ep3_laamp_flavor_oltner.0001 = { - type = character_event - title = ep3_laamp_flavor_oltner.3001.t - desc = ep3_laamp_flavor_oltner.3001.desc - theme = marriage - override_background = { reference = market_scope } - left_portrait = { - character = scope:entourage_to_marry_2 - animation = beg - camera = camera_event_very_left - } - right_portrait = { - character = scope:marriage_material - animation = dismissal - camera = camera_event_right_pointing_left - } - cooldown = { years = 10 } - - trigger = { - has_government = landless_adventurer_government - location = { - has_holding = yes - } - any_courtier = { - suitable_follower_marriage_character_trigger = yes - } - } - - immediate = { - save_scope_as = root_char - random_courtier = { - limit = { - suitable_follower_marriage_character_trigger = yes - } - save_scope_as = entourage_to_marry_2 - } - random_pool_character = { - province = root.location - limit = { - suitable_pool_marriage_trigger = { FOLLOWER_TARGET = scope:entourage_to_marry_2 } - } - save_scope_as = marriage_material - } - location.county.title_province = { save_scope_as = background_market_scope } - } - - option = { # Tell them to pay it themselves - name = ep3_laamp_flavor_oltner.0001.a - - trigger = { - scope:entourage_to_marry_2.gold >= { - add = scope:marriage_material.sum_of_all_skills_and_prowess_value - } - } - - scope:entourage_to_marry_2 = { - remove_short_term_gold = { - add = scope:marriage_material.sum_of_all_skills_value - add = scope:marriage_material.prowess - } - } - - add_courtier = scope:marriage_material - scope:entourage_to_marry_2 = { - if = { - limit = { - is_female = yes - is_lowborn = no - scope:marriage_material = { - is_lowborn = yes - } - } - marry_matrilineal = scope:marriage_material - } - else_if = { - limit = { - is_male = yes - is_lowborn = yes - scope:marriage_material = { - is_lowborn = no - } - } - marry_matrilineal = scope:marriage_material - } - else = { - marry = scope:marriage_material - } - } - - ai_chance = { - base = 100 - } - } - - option = { # Pay the dowry - name = ep3_laamp_flavor_oltner.0001.b - stress_impact = { - generous = massive_stress_impact_loss - greedy = medium_stress_impact_gain - } - - remove_short_term_gold = { - add = scope:marriage_material.sum_of_all_skills_and_prowess_value - } - - add_courtier = scope:marriage_material - scope:entourage_to_marry_2 = { - if = { - limit = { - is_female = yes - is_lowborn = no - scope:marriage_material = { - is_lowborn = yes - } - } - marry_matrilineal = scope:marriage_material - } - else_if = { - limit = { - is_male = yes - is_lowborn = yes - scope:marriage_material = { - is_lowborn = no - } - } - marry_matrilineal = scope:marriage_material - } - else = { - marry = scope:marriage_material - } - progress_towards_friend_effect = { - CHARACTER = root - OPINION = 0 - REASON = friend_helped_me_marry - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - } - - scope:marriage_material = { save_scope_as = relationship_reason_involved_character } - - clear_saved_scope = relationship_reason_involved_character - - ai_chance = { - base = 10 - - modifier = { - factor = 0 - OR = { - has_trait = greedy - gold <= { - add = scope:marriage_material.sum_of_all_skills_and_prowess_value - multiply = 2 - } - } - } - } - } - - option = { # Convince them to run away with you - name = ep3_laamp_flavor_oltner.0001.c - skill = intrigue - stress_impact = { - generous = medium_stress_impact_gain - } - - duel = { - skill = intrigue - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep3_laamp_flavor_oltner.0001.c.success - send_interface_toast = { - title = ep3_laamp_flavor_oltner.0001.c.success - left_icon = scope:entourage_to_marry_2 - right_icon = scope:marriage_material - add_courtier = scope:marriage_material - scope:entourage_to_marry_2 = { - if = { - limit = { - is_female = yes - is_lowborn = no - scope:marriage_material = { - is_lowborn = yes - } - } - marry_matrilineal = scope:marriage_material - } - else_if = { - limit = { - is_male = yes - is_lowborn = yes - scope:marriage_material = { - is_lowborn = no - } - } - marry_matrilineal = scope:marriage_material - } - else = { - marry = scope:marriage_material - } - progress_towards_friend_effect = { - CHARACTER = root - OPINION = 0 - REASON = friend_helped_me_marry - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - } - - scope:marriage_material = { save_scope_as = relationship_reason_involved_character } - clear_saved_scope = relationship_reason_involved_character - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep3_laamp_flavor_oltner.0001.c.failure - send_interface_toast = { - title = ep3_laamp_flavor_oltner.0001.c.failure - left_icon = scope:entourage_to_marry_2 - right_icon = scope:marriage_material - scope:entourage_to_marry_2 = { - add_stress = medium_stress_gain - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -30 - } - } - } - } - } - - ai_chance = { - base = 10 - - modifier = { - factor = 0 - has_trait = generous - } - } - } - - option = { # Ignore your follower - name = ep3_laamp_flavor_oltner.0001.d - stress_impact = { - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - chaste = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - scope:entourage_to_marry_2 = { - add_opinion = { - target = root - modifier = heartbroken_opinion - opinion = -30 - } - } - ai_chance = { - base = 10 - - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = generous - } - } - } - } -} diff --git a/events/dlc/ep3/ep3_laamp_flavour_ewan_events.txt b/events/dlc/ep3/ep3_laamp_flavour_ewan_events.txt deleted file mode 100644 index 30246157f..000000000 --- a/events/dlc/ep3/ep3_laamp_flavour_ewan_events.txt +++ /dev/null @@ -1,23555 +0,0 @@ -@ep3_laamp_flavour_ewan_event_cooldown = 10 -@ep3_laamp_flavour_ewan_event_cooldown_shorter = 2 -@ep3_laamp_flavour_ewan_event_cooldown_short = 5 -@ep3_laamp_flavour_ewan_event_cooldown_long = 20 -@ep3_laamp_flavour_ewan_event_cooldown_longer = 35 -@ep3_laamp_flavour_ewan_event_cooldown_longest = 70 - -@ep3_laamp_flavour_ewan_baggage_train_has_significant_armed_force = 2000 -@ep3_laamp_flavour_ewan_baggage_train_has_very_significant_armed_force = 4000 - -@ep3_laamp_flavour_ewan_1001_dynasty_prestige_level = 3 -@ep3_laamp_flavour_ewan_1041_years_since_rule = 5 -@ep3_laamp_flavour_ewan_1103_age_threshold_young = 6 -@ep3_laamp_flavour_ewan_1103_age_threshold_older = 12 -@ep3_laamp_flavour_ewan_4000_min_provisions_worth_attacking = 75 -@ep3_laamp_flavour_ewan_4051_minimum_provisions_count = 150 - -namespace = ep3_laamp_flavour_ewan - -################################################## -# #SIMPLE JOYS -# 0001 - 0010 Pinkish Hues - Watching the sunrise/sunset. -# 0011 - 0020 Fire & Friends - Larks at the campfire. -# 0021 - 0030 A Little Follower - Happy cat or dog follows you. -# 0031 - 0040 Tumbling Down - Stooge falls down hill. -# 0041 - 0050 Travails of a Cook - Recipes on the road. -# 0051 - 0060 A Friendly Clamour - A pleasant evening buzz as the camp settles down. -# 0061 - 0070 An Unexpected Faire - Locals react with impromptu faire. -# 0071 - 0080 Pounding Hooves - Riding with a hangover-stricken friend. -# -# #CHILDREARING -# 1001 - 1010 Friends in Low Places - Highborn befriends a lowborn. -# 1011 - 1020 Learning from Example - Learning from officer. -# 1021 - 1030 Love at First Camp - Crush on a local girl/boy. -# 1031 - 1040 Nurture - Taking after camp purpose. -# 1041 - 1050 The Old Country - Child too young to remember asks what old home was like. -# 1051 - 1060 It Isn't Fair - Child unhappy with life on the road. -# 1061 - 1070 Quick Study - Child picks up local language quickly. -# 1071 - 1080 At the Edge of Camp - Children playing in local terrain. -# 1081 - 1090 Growing Up - Child demands own tent. -# 1091 - 1100 Every Parent's Duty - Teaching a youngling how to ride. -# 1101 - 1110 Helping Out - Child helps with packing. -# 1111 - 1120 A Nose for Trouble - Child adopts puppy. -# -# #PERSONAL TENSIONS -# 2001 - 2010 Plenty in Common - Friendship blooms over shared traits. -# 2011 - 2020 Camp Gossip - Someone shagged someone else's spouse. -# 2021 - 2030 Bound Together - Marriage/concubinage at camp. -# 2031 - 2040 Through with You - Someone who hates you up and leaves. -# 2041 - 2050 Closer Quarters - Lover developing from various sources. -# 2051 - 2060 What's the Point? - Someone abandons bathing. -# 2061 - 2070 My Spot - Fight at dinner over tent pitch location. -# 2071 - 2080 Second-in-Command - People scrabble for empty/ineffectual SiC position. -# 2081 - 2090 A Well-Oiled Machine - Helping each other out at pitch time. -# 2091 - 2100 Crimes of Passion - Followers attack each other. -# -# #CAMP PURPOSE -# 3001 - 3010 Heard of You - Brigands attract cool local criminals, scaled to prestige level. -# 3011 - 3020 Arguing the Toss - Scholars debate a learned follower. -# 3021 - 3030 Over the Horizon - Explorer gets a passion for stories of a distant land, populating contracts there & learning the local language. -# 3031 - 3040 Mine by Right - Legitimist broods & extends their claims. -# 3041 - 3050 People from a Better Time - Old loyalists join legitimist. -# 3051 - 3060 Map Painting - Explorer writes/draws map of local area. -# 3061 - 3070 A Guide to ... - Scholar writes book on local subject. -# 3071 - 3080 The Law in Location.GetNameNoTier - Law attacks criminal gang. -# 3081 - 3090 Wrestle for It - Merc challenged to a wrastlin'. -# -# #TRAVEL DANGER / SUPPLIES -# 4001 - 4010 Bandits! - Bandit raid. -# 4011 - 4020 A Land of Milk & Honey - Bountiful hunting/foraging. -# 4021 - 4030 Parched - Difficulty finding water. -# 4031 - 4040 Sickness in the Herd - Pack animals are sick or wounded. -# 4041 - 4050 Fortuna's Tithe - Bad weather destroys wagons or pack animals. -# 4051 - 4060 Supplies Unaccounted For - Supplies go missing in large armies. -# 4061 - 4070 Eyes in the Night - local predator picking off people each evening. -# 4071 - 4080 Slavers - bastards try to kidnap people from the edges of your train. -# 4081 - 4090 Born of Desperation - hungry locals swarm at you, searching for food. -# 4091 - 4100 Night Attack - unknown group assaults your camp one evening. -# -# #MISC MINOR EVENTS -# 9501 - 9510 Core Tombola - Takes care of returning to camp after a period away. -# 9511 - 9520 Follower Returned - follower comes back to you, mostly the same. -# 9521 - 9530 Not As I Remember You - follower comes back to you, having taken on a local culture/faith. -# 9531 - 9540 Missing Follower - follower fails to come back after a loan. -# 9541 - 9550 Camp Activity Feed Message - something minor happens at camp. -# -# #MAINTENANCE -# 9801 - 9810 General Maintenance - Reserved for w/e turns up. -################################################## - - - - - - - - - - -################################################## -# MISC SCRIPTED TRIGGERS & EFFECTS - -scripted_trigger ep3_laamp_flavour_ewan_available_courtier_trigger = { - is_adult = yes - is_courtier_of = root - location = root.location - is_available_allow_travelling = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_available_child_trigger = { - child_can_have_full_conversations_trigger = yes - is_courtier_of = root - location = root.location - is_available_allow_travelling = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_available_anybody_trigger = { - OR = { - is_adult = yes - child_can_have_full_conversations_trigger = yes - } - is_courtier_of = root - location = root.location - is_available_allow_travelling = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = { - is_adult = yes - location = root.location -} - -scripted_trigger ep3_laamp_flavour_ewan_no_dog_trigger = { - NOR = { - any_owned_story = { type = story_cycle_pet_dog } - has_character_modifier = dog_story_modifier - } -} - -scripted_trigger ep3_laamp_flavour_ewan_no_cat_trigger = { - NOR = { - any_owned_story = { type = story_cycle_pet_cat } - has_character_modifier = cat_story_modifier - } -} - -scripted_effect ep3_laamp_flavour_ewan_clean_up_excess_childhood_traits_effect = { - if = { - limit = { number_of_personality_traits >= 3 } - remove_trait = rowdy - remove_trait = charming - remove_trait = curious - remove_trait = pensive - remove_trait = bossy - } -} - -scripted_effect ep3_laamp_flavour_ewan_register_terrain_effect = { - location = { - switch = { - trigger = terrain - plains = { - save_scope_value_as = { - name = terrain_type - value = flag:plains - } - } - farmlands = { - save_scope_value_as = { - name = terrain_type - value = flag:farmlands - } - } - hills = { - save_scope_value_as = { - name = terrain_type - value = flag:hills - } - } - mountains = { - save_scope_value_as = { - name = terrain_type - value = flag:mountains - } - } - desert = { - save_scope_value_as = { - name = terrain_type - value = flag:desert - } - } - desert_mountains = { - save_scope_value_as = { - name = terrain_type - value = flag:desert_mountains - } - } - oasis = { - save_scope_value_as = { - name = terrain_type - value = flag:oasis - } - } - jungle = { - save_scope_value_as = { - name = terrain_type - value = flag:jungle - } - } - forest = { - save_scope_value_as = { - name = terrain_type - value = flag:forest - } - } - taiga = { - save_scope_value_as = { - name = terrain_type - value = flag:taiga - } - } - wetlands = { - save_scope_value_as = { - name = terrain_type - value = flag:wetlands - } - } - steppe = { - save_scope_value_as = { - name = terrain_type - value = flag:steppe - } - } - floodplains = { - save_scope_value_as = { - name = terrain_type - value = flag:floodplains - } - } - drylands = { - save_scope_value_as = { - name = terrain_type - value = flag:drylands - } - } - } - } -} - - - - - - - - - - - -################################################## -# SIMPLE JOYS - -################################################## -# Pinkish Hues -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0001_watch_partner_trigger = { - ep3_laamp_flavour_ewan_available_$CONFIG$_trigger = yes - NOT = { has_trait = blind } - opinion = { - target = root - value >= 40 - } - trigger_if = { - limit = { - root = { is_ai = yes } - } - reverse_opinion = { - target = root - value >= 40 - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_0002_watch_partner_trigger = { - ep3_laamp_flavour_ewan_0001_watch_partner_trigger = { CONFIG = courtier } - NOR = { - is_close_family_of = root - is_consort_of = root - trigger_if = { - limit = { exists = scope:watch_partner_1 } - this = scope:watch_partner_1 - } - } -} - -# Watching the sunset. -ep3_laamp_flavour_ewan.0001 = { - type = character_event - title = ep3_laamp_flavour_ewan.0001.t - desc = { - desc = ep3_laamp_flavour_ewan.0001.desc.intro.preamble - first_valid = { - triggered_desc = { - trigger = { has_trait = lazy } - desc = ep3_laamp_flavour_ewan.0001.desc.intro.lazy - } - triggered_desc = { - trigger = { has_trait = diligent } - desc = ep3_laamp_flavour_ewan.0001.desc.intro.diligent - } - desc = ep3_laamp_flavour_ewan.0001.desc.intro.fallback - } - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:terrain_type = flag:plains - scope:terrain_type = flag:farmlands - scope:terrain_type = flag:hills - } - } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.small_hill - } - triggered_desc = { - trigger = { - OR = { - scope:terrain_type = flag:jungle - scope:terrain_type = flag:forest - scope:terrain_type = flag:taiga - } - } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.tree_covered_hill - } - triggered_desc = { - trigger = { scope:terrain_type = flag:mountains } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.small_ridge - } - triggered_desc = { - trigger = { - OR = { - scope:terrain_type = flag:desert - scope:terrain_type = flag:oasis - } - } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.small_dune - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert_mountains } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.dusty_ridge - } - triggered_desc = { - trigger = { - OR = { - scope:terrain_type = flag:wetlands - scope:terrain_type = flag:floodplains - scope:terrain_type = flag:steppe - } - } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.stubby_hillock - } - triggered_desc = { - trigger = { scope:terrain_type = flag:drylands } - desc = ep3_laamp_flavour_ewan.0001.desc.midtro.dusty_hill - } - } - first_valid = { - triggered_desc = { - trigger = { scope:terrain_type = flag:plains } - desc = ep3_laamp_flavour_ewan.0001.desc.plains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:farmlands } - desc = ep3_laamp_flavour_ewan.0001.desc.farmlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:hills } - desc = ep3_laamp_flavour_ewan.0001.desc.hills - } - triggered_desc = { - trigger = { scope:terrain_type = flag:mountains } - desc = ep3_laamp_flavour_ewan.0001.desc.mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert } - desc = ep3_laamp_flavour_ewan.0001.desc.desert - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert_mountains } - desc = ep3_laamp_flavour_ewan.0001.desc.desert_mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:oasis } - desc = ep3_laamp_flavour_ewan.0001.desc.oasis - } - triggered_desc = { - trigger = { scope:terrain_type = flag:jungle } - desc = ep3_laamp_flavour_ewan.0001.desc.jungle - } - triggered_desc = { - trigger = { scope:terrain_type = flag:forest } - desc = ep3_laamp_flavour_ewan.0001.desc.forest - } - triggered_desc = { - trigger = { scope:terrain_type = flag:taiga } - desc = ep3_laamp_flavour_ewan.0001.desc.taiga - } - triggered_desc = { - trigger = { scope:terrain_type = flag:wetlands } - desc = ep3_laamp_flavour_ewan.0001.desc.wetlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:steppe } - desc = ep3_laamp_flavour_ewan.0001.desc.steppe - } - triggered_desc = { - trigger = { scope:terrain_type = flag:floodplains } - desc = ep3_laamp_flavour_ewan.0001.desc.floodplains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:drylands } - desc = ep3_laamp_flavour_ewan.0001.desc.drylands - } - } - desc = ep3_laamp_flavour_ewan.0001.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = admiration - } - lower_center_portrait = scope:watch_partner_2 - lower_right_portrait = scope:watch_partner_1 - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0001 } - # And check that we've had this title for a decent amount of time, so that we don't get this immediately every time. - title_held_years >= 10 - } - # And uhhh. Unfortunately. - NOT = { has_trait = blind } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0001 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0001 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longest - } - } - # Grab our terrain. - ep3_laamp_flavour_ewan_register_terrain_effect = yes - # Flag a consort or child to watch it with. - ## Consorts. - every_consort = { - limit = { - ep3_laamp_flavour_ewan_0001_watch_partner_trigger = { CONFIG = courtier } - } - add_to_list = possible_watch_partner_1_list - } - ## Children. - every_child = { - limit = { - ep3_laamp_flavour_ewan_0001_watch_partner_trigger = { CONFIG = child } - } - add_to_list = possible_watch_partner_1_list - } - ## Now, sort through them to find our best candidate. - ordered_in_list = { - list = possible_watch_partner_1_list - order_by = { - value = "opinion(root)" - # If we're already friends/lovers, lower the score, as this should be for making new ones. - if = { - limit = { - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root } - } - multiply = 0.5 - } - } - save_scope_as = watch_partner_1 - } - # Flag a potential friend or friend to watch it with. - ## Potential friends. - every_relation = { - type = potential_friend - limit = { ep3_laamp_flavour_ewan_0002_watch_partner_trigger = yes } - add_to_list = possible_watch_partner_2_list - } - ## Friends & best friends. - every_relation = { - type = friend - limit = { ep3_laamp_flavour_ewan_0002_watch_partner_trigger = yes } - add_to_list = possible_watch_partner_2_list - } - ## Now, sort through them to find our best candidate. - ordered_in_list = { - list = possible_watch_partner_2_list - order_by = "opinion(root)" - save_scope_as = watch_partner_2 - } - } - - # Appreciate the solitude. - option = { - name = ep3_laamp_flavour_ewan.0001.a - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0001_the_little_things_modifier - years = 10 - } - - stress_impact = { - base = medium_stress_loss - shy = medium_stress_impact_loss - gregarious = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } - - # Call up consort or child. - option = { - name = ep3_laamp_flavour_ewan.0001.b - trigger = { exists = scope:watch_partner_1 } - - progress_towards_friend_effect = { - REASON = friend_adventurer_watched_sunset - CHARACTER = scope:watch_partner_1 - OPINION = 30 - } - - stress_impact = { gregarious = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:watch_partner_1 } - } - } - - # Call up friend/potential friend. - option = { - name = ep3_laamp_flavour_ewan.0001.c - trigger = { exists = scope:watch_partner_2 } - - progress_towards_friend_effect = { - REASON = friend_adventurer_watched_sunset - CHARACTER = scope:watch_partner_2 - OPINION = 40 - } - - stress_impact = { gregarious = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - opinion_modifier = { opinion_target = scope:watch_partner_2 } - } - } - - # Get on with the evening/morning's work. - option = { - name = ep3_laamp_flavour_ewan.0001.d - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0001_all_business_modifier - years = 10 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 2 } - } - } -} - -################################################## -# Fire & Friends -# by Ewan Cowhig Croft -# 0011 - 0020 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0011_mocker_trigger = { - has_trait = gregarious - ep3_laamp_flavour_ewan_available_courtier_trigger = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_0011_mockee_trigger = { - NOT = { has_trait = gregarious } - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - # Filter out anyone that most folks'd be _reluctant_ to criticise. - NOR = { - is_close_or_extended_family_of = root - is_consort_of = root - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root } - } -} - -# Larks at the campfire. -ep3_laamp_flavour_ewan.0011 = { - type = character_event - title = ep3_laamp_flavour_ewan.0011.t - desc = { - desc = ep3_laamp_flavour_ewan.0011.desc.intro - random_valid = { - triggered_desc = { - trigger = { - scope:mockee = { has_trait = lustful } - } - desc = ep3_laamp_flavour_ewan.0011.desc.lustful - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = chaste } - } - desc = ep3_laamp_flavour_ewan.0011.desc.chaste - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = gluttonous } - } - desc = ep3_laamp_flavour_ewan.0011.desc.gluttonous - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = temperate } - } - desc = ep3_laamp_flavour_ewan.0011.desc.temperate - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = greedy } - } - desc = ep3_laamp_flavour_ewan.0011.desc.greedy - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = generous } - } - desc = ep3_laamp_flavour_ewan.0011.desc.generous - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = lazy } - } - desc = ep3_laamp_flavour_ewan.0011.desc.lazy - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = diligent } - } - desc = ep3_laamp_flavour_ewan.0011.desc.diligent - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = wrathful } - } - desc = ep3_laamp_flavour_ewan.0011.desc.wrathful - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = calm } - } - desc = ep3_laamp_flavour_ewan.0011.desc.calm - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = patient } - } - desc = ep3_laamp_flavour_ewan.0011.desc.patient - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = impatient } - } - desc = ep3_laamp_flavour_ewan.0011.desc.impatient - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = arrogant } - } - desc = ep3_laamp_flavour_ewan.0011.desc.arrogant - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = humble } - } - desc = ep3_laamp_flavour_ewan.0011.desc.humble - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = deceitful } - } - desc = ep3_laamp_flavour_ewan.0011.desc.deceitful - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = honest } - } - desc = ep3_laamp_flavour_ewan.0011.desc.honest - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = craven } - } - desc = ep3_laamp_flavour_ewan.0011.desc.craven - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = brave } - } - desc = ep3_laamp_flavour_ewan.0011.desc.brave - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = shy } - } - desc = ep3_laamp_flavour_ewan.0011.desc.shy - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = gregarious } - } - desc = ep3_laamp_flavour_ewan.0011.desc.gregarious - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = ambitious } - } - desc = ep3_laamp_flavour_ewan.0011.desc.ambitious - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = content } - } - desc = ep3_laamp_flavour_ewan.0011.desc.content - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = arbitrary } - } - desc = ep3_laamp_flavour_ewan.0011.desc.arbitrary - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = just } - } - desc = ep3_laamp_flavour_ewan.0011.desc.just - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = cynical } - } - desc = ep3_laamp_flavour_ewan.0011.desc.cynical - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = zealous } - } - desc = ep3_laamp_flavour_ewan.0011.desc.zealous - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = paranoid } - } - desc = ep3_laamp_flavour_ewan.0011.desc.paranoid - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = trusting } - } - desc = ep3_laamp_flavour_ewan.0011.desc.trusting - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = compassionate } - } - desc = ep3_laamp_flavour_ewan.0011.desc.compassionate - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = callous } - } - desc = ep3_laamp_flavour_ewan.0011.desc.callous - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = sadistic } - } - desc = ep3_laamp_flavour_ewan.0011.desc.sadistic - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = stubborn } - } - desc = ep3_laamp_flavour_ewan.0011.desc.stubborn - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = fickle } - } - desc = ep3_laamp_flavour_ewan.0011.desc.fickle - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = vengeful } - } - desc = ep3_laamp_flavour_ewan.0011.desc.vengeful - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = forgiving } - } - desc = ep3_laamp_flavour_ewan.0011.desc.forgiving - } - triggered_desc = { - trigger = { - scope:mockee = { has_trait = eccentric } - } - desc = ep3_laamp_flavour_ewan.0011.desc.eccentric - } - } - desc = ep3_laamp_flavour_ewan.0011.desc.outro - } - theme = laamp - left_portrait = { - character = scope:mocker - animation = laugh - } - right_portrait = { - character = scope:mockee - animation = disapproval - } - override_background = { reference = ep3_campfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0011 } - } - # Make sure we've got at least one mocker & one mockee. - any_courtier = { ep3_laamp_flavour_ewan_0011_mocker_trigger = yes } - any_courtier = { ep3_laamp_flavour_ewan_0011_mockee_trigger = yes } - } - - weight_multiplier = { - modifier = { - add = -0.5 - has_trait = shy - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0011 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0011 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab our courtiers. - random_courtier = { - limit = { ep3_laamp_flavour_ewan_0011_mocker_trigger = yes } - save_scope_as = mocker - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_0011_mockee_trigger = yes } - save_scope_as = mockee - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Join in the ribbing of scope:mockee. - option = { - name = ep3_laamp_flavour_ewan.0011.a - - duel = { - skill = diplomacy - target = scope:mockee - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.a.tt.success - left_icon = scope:mockee - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = proper_jokes_opinion - opinion = 20 - } - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.a.tt.failure - left_icon = scope:mockee - scope:mockee = { - add_opinion = { - target = root - modifier = humiliated_opinion - opinion = -30 - } - } - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -0.25 } - opinion_modifier = { - opinion_target = scope:mockee - multiplier = -1 - } - } - } - - # Turn the tables on scope:mocker. - option = { - name = ep3_laamp_flavour_ewan.0011.b - - duel = { - skill = diplomacy - target = scope:mocker - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.b.tt.success - left_icon = scope:mocker - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = proper_jokes_opinion - opinion = 20 - } - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.b.tt.failure - left_icon = scope:mocker - scope:mocker = { - add_opinion = { - target = root - modifier = humiliated_opinion - opinion = -30 - } - } - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 0.5 } - opinion_modifier = { opinion_target = scope:mocker } - } - } - - # Tell a joke of your own. - option = { - name = ep3_laamp_flavour_ewan.0011.c - - duel = { - skill = diplomacy - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.c.tt.success - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = proper_jokes_opinion - opinion = 20 - } - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0011.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0011.c.tt.failure - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 0.5 } - } - } - - # Soak it all in. - option = { - name = ep3_laamp_flavour_ewan.0011.d - - # Main effect is stress loss. - stress_impact = { - base = medium_stress_loss - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } -} - -################################################## -# A Little Follower -# by Ewan Cowhig Croft -# 0021 - 0030 -################################################## - -# Happy cat or dog follows you. -ep3_laamp_flavour_ewan.0021 = { - type = character_event - title = ep3_laamp_flavour_ewan.0021.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.intro.cat - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.intro.dog - } - } - random_valid = { - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.cat.1 - } - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.cat.2 - } - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.cat.3 - } - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.cat.4 - } - triggered_desc = { - trigger = { scope:animal_type = flag:cat } - desc = ep3_laamp_flavour_ewan.0021.desc.cat.5 - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.dog.1 - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.dog.2 - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.dog.3 - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.dog.4 - } - triggered_desc = { - trigger = { scope:animal_type = flag:dog } - desc = ep3_laamp_flavour_ewan.0021.desc.dog.5 - } - } - desc = ep3_laamp_flavour_ewan.0021.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = admiration - } - override_background = { reference = corridor_day } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0021 } - } - # This one won't make sense if you could just get a dog at any point, so rule that out. - NOT = { - domicile = { has_domicile_building = baggage_train_kennel } - } - # Plus make sure that we don't _already_ have both dog & cat. - OR = { - ep3_laamp_flavour_ewan_no_dog_trigger = no - ep3_laamp_flavour_ewan_no_cat_trigger = no - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0021 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0021 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Pick whether this'll be a cat or a dog. - random_list = { - # Prefer cats over dogs because: - # A) You can get dogs via the kennels. - # B) They are innately superior. - 50 = { - trigger = { ep3_laamp_flavour_ewan_no_dog_trigger = yes } - save_scope_value_as = { - name = animal_type - value = flag:dog - } - } - 150 = { - trigger = { ep3_laamp_flavour_ewan_no_cat_trigger = yes } - save_scope_value_as = { - name = animal_type - value = flag:cat - } - } - } - } - - # Adopt the animal. - option = { - name = ep3_laamp_flavour_ewan.0021.a - - if = { - limit = { scope:animal_type = flag:cat } - start_cat_story_cycle_effect = yes - } - else = { start_dog_story_cycle_effect = yes } - - # Everyone likes a pet. - add_stress = medium_stress_impact_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Low on provisions: that's... a meal... - option = { - name = ep3_laamp_flavour_ewan.0021.b - trigger = { domicile.provisions <= provisions_privation_threshold_start } - - domicile = { change_provisions = microscopic_provisions_gain } - - stress_impact = { - gluttonous = minor_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = miniscule_stress_impact_gain - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # Sadistic: kick the animal. - option = { - name = ep3_laamp_flavour_ewan.0021.c - trigger = { has_trait = sadistic } - trait = sadistic - - # Remember that time - random = { - chance = 1 - increase_wounds_effect = { REASON = wild_animal } - } - - # Main effect is the stress loss. - stress_impact = { sadistic = major_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -3 } - } - } - - # It's just a fellow traveller, leave it be. - option = { - name = ep3_laamp_flavour_ewan.0021.d - - if = { - limit = { scope:animal_type = flag:cat } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0021_respected_cat_modifier - years = 10 - } - } - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0021_respected_dog_modifier - years = 10 - } - } - - stress_impact = { shy = minor_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } -} - -################################################## -# Tumbling Down -# by Ewan Cowhig Croft -# 0031 - 0040 -################################################## - -# Stooge falls down hill. -ep3_laamp_flavour_ewan.0031 = { - type = character_event - title = ep3_laamp_flavour_ewan.0031.t - desc = { - desc = ep3_laamp_flavour_ewan.0031.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:terrain_type = flag:plains } - desc = ep3_laamp_flavour_ewan.0031.desc.plains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:farmlands } - desc = ep3_laamp_flavour_ewan.0031.desc.farmlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:hills } - desc = ep3_laamp_flavour_ewan.0031.desc.hills - } - triggered_desc = { - trigger = { scope:terrain_type = flag:mountains } - desc = ep3_laamp_flavour_ewan.0031.desc.mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert } - desc = ep3_laamp_flavour_ewan.0031.desc.desert - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert_mountains } - desc = ep3_laamp_flavour_ewan.0031.desc.desert_mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:oasis } - desc = ep3_laamp_flavour_ewan.0031.desc.oasis - } - triggered_desc = { - trigger = { scope:terrain_type = flag:jungle } - desc = ep3_laamp_flavour_ewan.0031.desc.jungle - } - triggered_desc = { - trigger = { scope:terrain_type = flag:forest } - desc = ep3_laamp_flavour_ewan.0031.desc.forest - } - triggered_desc = { - trigger = { scope:terrain_type = flag:taiga } - desc = ep3_laamp_flavour_ewan.0031.desc.taiga - } - triggered_desc = { - trigger = { scope:terrain_type = flag:wetlands } - desc = ep3_laamp_flavour_ewan.0031.desc.wetlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:steppe } - desc = ep3_laamp_flavour_ewan.0031.desc.steppe - } - triggered_desc = { - trigger = { scope:terrain_type = flag:floodplains } - desc = ep3_laamp_flavour_ewan.0031.desc.floodplains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:drylands } - desc = ep3_laamp_flavour_ewan.0031.desc.drylands - } - } - desc = ep3_laamp_flavour_ewan.0031.desc.midtro - first_valid = { - triggered_desc = { - trigger = { - scope:stooge = { is_alive = no } - } - desc = ep3_laamp_flavour_ewan.0031.desc.outro.dead - } - desc = ep3_laamp_flavour_ewan.0031.desc.outro.fallback - } - } - theme = laamp - left_portrait = { - character = root - animation = schadenfreude - } - right_portrait = { - character = scope:stooge - animation = fear - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0031 } - } - # This event'll be pointless if we don't have some stress, so make sure we're a little tense. - stress >= 25 - # Make sure we've got a stooge. - court_position:stooge_camp_officer ?= { is_available_allow_travelling = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0031 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0031 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Grab our stooge. - court_position:stooge_camp_officer = { save_scope_as = stooge } - # Grab our terrain. - ep3_laamp_flavour_ewan_register_terrain_effect = yes - ## Plus, this means injury. - scope:stooge = { - increase_wounds_effect = { REASON = fell_wilderness } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Laugh. - option = { - name = ep3_laamp_flavour_ewan.0031.a - - scope:stooge = { - if = { - limit = { is_alive = yes } - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -40 - } - } - # Acknowledge that this is a wee bit ghoulish if they've died. - else = { - root = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0031_grisly_modifier - years = 5 - } - } - } - } - - # Main effect comes from stress loss. - stress_impact = { - base = major_stress_loss - sadistic = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - # Snicker, but leave it at that. - option = { - name = ep3_laamp_flavour_ewan.0031.b - - scope:stooge = { - if = { - limit = { is_alive = yes } - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - } - # Acknowledge that this is a wee bit ghoulish if they've died. - else = { - root = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0031_macabre_modifier - years = 5 - } - } - } - } - - # Main effect comes from stress loss. - stress_impact = { - base = medium_stress_loss - sadistic = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = -0.5 - ai_sociability = 0.5 - } - } - } - - # Move on, this is beneath you. - option = { - name = ep3_laamp_flavour_ewan.0031.c - - add_prestige = miniscule_prestige_gain - - stress_impact = { arrogant = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } -} - -################################################## -# Travails of a Cook -# by Ewan Cowhig Croft -# 0041 - 0050 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = { - domicile.provisions >= domicile.max_provisions - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = no -} - -scripted_trigger ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = { - domicile.provisions < domicile.max_provisions - domicile.provisions > provisions_privation_threshold_start - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = no -} - -scripted_trigger ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = { - domicile.provisions <= provisions_privation_threshold_start - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = no -} - -scripted_trigger ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = { - location = { - geographical_region = custom_sahara_proper - # If we're in an oasis, we should act like it. - NOT = { terrain = oasis } - } -} - -# Recipes on the road. -ep3_laamp_flavour_ewan.0041 = { - type = character_event - title = ep3_laamp_flavour_ewan.0041.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:camp_cook } - desc = ep3_laamp_flavour_ewan.0041.desc.has_cook - } - desc = ep3_laamp_flavour_ewan.0041.desc.nameless_cook - } - first_valid = { - triggered_desc = { - trigger = { scope:terrain_type = flag:plains } - desc = ep3_laamp_flavour_ewan.0041.desc.plains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:farmlands } - desc = ep3_laamp_flavour_ewan.0041.desc.farmlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:hills } - desc = ep3_laamp_flavour_ewan.0041.desc.hills - } - triggered_desc = { - trigger = { scope:terrain_type = flag:mountains } - desc = ep3_laamp_flavour_ewan.0041.desc.mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert } - desc = ep3_laamp_flavour_ewan.0041.desc.desert - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert_mountains } - desc = ep3_laamp_flavour_ewan.0041.desc.desert_mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:oasis } - desc = ep3_laamp_flavour_ewan.0041.desc.oasis - } - triggered_desc = { - trigger = { scope:terrain_type = flag:jungle } - desc = ep3_laamp_flavour_ewan.0041.desc.jungle - } - triggered_desc = { - trigger = { scope:terrain_type = flag:forest } - desc = ep3_laamp_flavour_ewan.0041.desc.forest - } - triggered_desc = { - trigger = { scope:terrain_type = flag:taiga } - desc = ep3_laamp_flavour_ewan.0041.desc.taiga - } - triggered_desc = { - trigger = { scope:terrain_type = flag:wetlands } - desc = ep3_laamp_flavour_ewan.0041.desc.wetlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:steppe } - desc = ep3_laamp_flavour_ewan.0041.desc.steppe - } - triggered_desc = { - trigger = { scope:terrain_type = flag:floodplains } - desc = ep3_laamp_flavour_ewan.0041.desc.floodplains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:drylands } - desc = ep3_laamp_flavour_ewan.0041.desc.drylands - } - } - desc = ep3_laamp_flavour_ewan.0041.desc.outro - first_valid = { - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = yes } - desc = ep3_laamp_flavour_ewan.0041.desc.provisions.high - } - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = yes } - desc = ep3_laamp_flavour_ewan.0041.desc.provisions.medium - } - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = yes } - desc = ep3_laamp_flavour_ewan.0041.desc.provisions.low - } - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = yes } - desc = ep3_laamp_flavour_ewan.0041.desc.provisions.sahara - } - } - } - theme = laamp - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:camp_cook - animation = anger - } - override_background = { reference = corridor_day } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0041 } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = yes - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0041 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0041 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab our terrain. - ep3_laamp_flavour_ewan_register_terrain_effect = yes - # If we've got a camp cook, nab them. - court_position:camp_cook_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - save_scope_as = camp_cook - } - } - } - - # High prov: what're you even complaining about? - option = { - name = ep3_laamp_flavour_ewan.0041.a - trigger = { ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = yes } - - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = piqued_opinion - opinion = -25 - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0041_well_provided_camp_modifier - years = 10 - } - - stress_impact = { - temperate = minor_stress_impact_loss - gluttonous = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # High prov: fine, we can restock. - option = { - name = ep3_laamp_flavour_ewan.0041.b - trigger = { ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = yes } - - duel = { - skill = stewardship - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.b.tt.success - left_icon = scope:camp_cook - remove_short_term_gold = minor_gold_laamps_value - domicile = { change_provisions = medium_provisions_gain } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.b.tt.failure - left_icon = scope:camp_cook - remove_short_term_gold = minor_gold_laamps_value - domicile = { change_provisions = miniscule_provisions_gain } - } - } - } - if = { - limit = { exists = scope:camp_cook } - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - add_favour_hook_if_possible_simple_effect = { TARGET = scope:camp_cook } - } - - stress_impact = { - gluttonous = minor_stress_impact_loss - temperate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - modifier = { - factor = 0 - gold <= major_gold_laamps_value - } - } - } - - # High prov: absolutely not, work with what you've got. - option = { - name = ep3_laamp_flavour_ewan.0041.c - trigger = { ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = yes } - - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = frustrated_opinion - opinion = -40 - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0041_stern_camp_modifier - years = 10 - } - - stress_impact = { - temperate = minor_stress_impact_loss - gluttonous = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = -1 } - } - } - - # mess_tent_cooks: I'm sure you can come up with something between you. - option = { - name = ep3_laamp_flavour_ewan.0041.d - trigger = { - ep3_laamp_flavour_ewan_0041_access_high_provision_options_trigger = yes - domicile = { has_domicile_building = mess_tent_cooks } - } - reason = has_building_mess_tent_cooks - - if = { - limit = { exists = scope:camp_cook } - reverse_add_opinion = { - target = scope:camp_cook - modifier = flattered_opinion - opinion = 30 - } - } - add_prestige = medium_prestige_gain - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Med prov: we can probably find something. - option = { - name = ep3_laamp_flavour_ewan.0041.e - trigger = { ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = yes } - - duel = { - skill = learning - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.e.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.e.tt.success - left_icon = scope:camp_cook - domicile = { change_provisions = medium_provisions_gain } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.e.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.e.tt.failure - left_icon = scope:camp_cook - domicile = { change_provisions = miniscule_provisions_gain } - } - } - } - - stress_impact = { - gluttonous = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Med prov: restocking would be a good idea anyway, let's make some deals. - option = { - name = ep3_laamp_flavour_ewan.0041.f - trigger = { ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = yes } - - duel = { - skill = stewardship - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.f.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.f.tt.success - left_icon = scope:camp_cook - remove_short_term_gold = medium_gold_laamps_value - domicile = { change_provisions = major_provisions_gain } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.f.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.f.tt.failure - left_icon = scope:camp_cook - remove_short_term_gold = medium_gold_laamps_value - domicile = { change_provisions = medium_provisions_gain } - } - } - } - if = { - limit = { exists = scope:camp_cook } - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - add_favour_hook_if_possible_simple_effect = { TARGET = scope:camp_cook } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - modifier = { - factor = 0 - gold <= massive_gold_laamps_value - } - } - } - - # Med prov: it's not in the budget. - option = { - name = ep3_laamp_flavour_ewan.0041.g - trigger = { ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = yes } - - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = frustrated_opinion - opinion = -40 - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0041_quite_stern_camp_modifier - years = 10 - } - - stress_impact = { - greedy = miniscule_stress_impact_loss - generous = minor_stress_impact_gain - gluttonous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - } - } - - # mess_tent_brewers: just double the beer rations and call it a day. - option = { - name = ep3_laamp_flavour_ewan.0041.h - trigger = { - ep3_laamp_flavour_ewan_0041_access_medium_provision_options_trigger = yes - domicile = { has_domicile_building = mess_tent_brewers } - } - reason = has_building_mess_tent_brewers - - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = piqued_opinion - opinion = -20 - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0041_doubled_beer_rations_camp_modifier - years = 10 - } - - stress_impact = { - gluttonous = minor_stress_impact_loss - gregarious = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Low prov: we can stop to forage. - option = { - name = ep3_laamp_flavour_ewan.0041.i - trigger = { ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = yes } - - current_travel_plan = { - delay_travel_plan = { months = 1 } - } - duel = { - skill = learning - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.i.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.i.tt.success - left_icon = scope:camp_cook - domicile = { change_provisions = major_provisions_gain } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.i.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.i.tt.failure - left_icon = scope:camp_cook - domicile = { change_provisions = medium_provisions_gain } - } - } - } - - # No stress — regardless of your opinions on food, you're at a stage where you recognise what's necessary. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Low prov: we'll buy what extra provisions we can... - option = { - name = ep3_laamp_flavour_ewan.0041.j - trigger = { ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = yes } - - duel = { - skill = stewardship - value = extremely_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.j.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.j.tt.success - left_icon = scope:camp_cook - remove_short_term_gold = medium_gold_laamps_value - domicile = { change_provisions = major_provisions_gain } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.0041.j.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.0041.j.tt.failure - left_icon = scope:camp_cook - remove_short_term_gold = medium_gold_laamps_value - domicile = { change_provisions = medium_provisions_gain } - } - } - } - if = { - limit = { exists = scope:camp_cook } - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - add_favour_hook_if_possible_simple_effect = { TARGET = scope:camp_cook } - } - - # No stress — regardless of your opinions on food, you're at a stage where you recognise what's necessary. - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - modifier = { - factor = 0 - gold <= massive_gold_laamps_value - } - } - } - - # Low prov: we _have_ to push on. - option = { - name = ep3_laamp_flavour_ewan.0041.k - trigger = { ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = yes } - - scope:camp_cook ?= { - add_opinion = { - target = root - modifier = frustrated_opinion - opinion = -40 - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0041_very_stern_camp_modifier - years = 10 - } - - # No stress — regardless of your opinions on food, you're at a stage where you recognise what's necessary. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # supply_tent_reserve_provisions: hmm, we might have _something_ reserved. - option = { - name = ep3_laamp_flavour_ewan.0041.l - trigger = { - ep3_laamp_flavour_ewan_0041_access_low_provision_options_trigger = yes - domicile = { has_domicile_building = supply_tent_reserve_provisions } - } - reason = has_building_supply_tent_reserve_provisions - - if = { - limit = { exists = scope:camp_cook } - reverse_add_opinion = { - target = scope:camp_cook - modifier = grateful_opinion - opinion = 20 - } - } - add_prestige = medium_prestige_gain - - stress_impact = { gluttonous = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = -1 } - } - } - - # Sahara: do you _see_ anywhere to buy provisions you idiot? - option = { - name = ep3_laamp_flavour_ewan.0041.m - trigger = { ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = yes } - - if = { - limit = { exists = scope:camp_cook } - reverse_add_opinion = { - target = scope:camp_cook - modifier = frustrated_opinion - opinion = -40 - } - } - else = { add_prestige = minor_prestige_loss } - - stress_impact = { - base = medium_stress_gain - temperate = minor_stress_impact_loss - gluttonous = medium_stress_impact_gain - } - ai_chance = { - # This'll generally be your only option, so we don't care about modifiers. - base = 1 - } - } - - # Sahara + supply_tent_reserve_water: I don't care if we're eating gruel till we're through this. - option = { - name = ep3_laamp_flavour_ewan.0041.n - trigger = { - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = yes - domicile = { has_domicile_building = supply_tent_reserve_water } - } - reason = has_building_supply_tent_reserve_water - - if = { - limit = { exists = scope:camp_cook } - reverse_add_opinion = { - target = scope:camp_cook - modifier = frustrated_opinion - opinion = -20 - } - } - add_prestige = medium_prestige_gain - - # No stress gain here — narratively appropriate but we don't want you to feel like you're punished for planning ahead. - ai_chance = { - # If you've got this, take it. - base = 1000 - } - } -} - -################################################## -# A Friendly Clamour -# by Ewan Cowhig Croft -# 0051 - 0060 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = { - provisions >= max_provisions -} - -scripted_effect ep3_laamp_flavour_ewan_0051_roll_camp_visit_locations_effect = { - random_list = { - # Supply Tent - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = supply_tent_01 } - NOT = { exists = scope:supply_tent } - } - save_scope_value_as = { - name = supply_tent - value = yes - } - } - # Barber Tent - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = barber_tent_01 } - NOT = { exists = scope:barber_tent } - } - save_scope_value_as = { - name = barber_tent - value = yes - } - } - # Baggage Train - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = baggage_train_01 } - NOT = { exists = scope:baggage_train } - } - save_scope_value_as = { - name = baggage_train - value = yes - } - } - # Mess Tent - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = mess_tent_01 } - NOT = { exists = scope:mess_tent } - } - save_scope_value_as = { - name = mess_tent - value = yes - } - } - # Camp Fire - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = camp_fire_01 } - NOT = { exists = scope:camp_fire } - } - save_scope_value_as = { - name = camp_fire - value = yes - } - } - # Proving Grounds - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = proving_grounds_01 } - NOT = { exists = scope:proving_grounds } - } - save_scope_value_as = { - name = proving_grounds - value = yes - } - } - # Camp Perimeter - 100 = { - trigger = { - domicile = { has_domicile_building_or_higher = camp_perimeter_01 } - NOT = { exists = scope:camp_perimeter } - } - save_scope_value_as = { - name = camp_perimeter - value = yes - } - } - } -} - -# A pleasant evening buzz as the camp settles down. -ep3_laamp_flavour_ewan.0051 = { - type = character_event - title = ep3_laamp_flavour_ewan.0051.t - desc = { - desc = ep3_laamp_flavour_ewan.0051.desc.intro - # Purpose. - random_valid = { - triggered_desc = { - trigger = { has_realm_law = camp_purpose_wanderers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.wanderers.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_wanderers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.wanderers.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_wanderers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.wanderers.3 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_mercenaries } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.mercenaries.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_mercenaries } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.mercenaries.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_mercenaries } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.mercenaries.3 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_scholars } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.scholars.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_scholars } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.scholars.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_scholars } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.scholars.3 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_explorers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.explorers.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_explorers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.explorers.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_explorers } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.explorers.3 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_brigands } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.brigands.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_brigands } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.brigands.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_brigands } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.brigands.3 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_legitimists } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.legitimists.1 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_legitimists } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.legitimists.2 - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_legitimists } - desc = ep3_laamp_flavour_ewan.0051.desc.purpose.legitimists.3 - } - } - # Buildings. - random_valid = { - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = supply_tent_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.supply_tent_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = supply_tent_sutler } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.supply_tent_sutler - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = supply_tent_smithy } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.supply_tent_smithy - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = supply_tent_arsenal } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.supply_tent_arsenal - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = barber_tent_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.barber_tent_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = barber_tent_surgeons_tools } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.barber_tent_surgeons_tools - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = barber_tent_dentists_tools } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.barber_tent_dentists_tools - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = barber_tent_torturers_tools } - any_prisoner = { } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.barber_tent_torturers_tools - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = baggage_train_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_ample_steeds } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_ample_steeds - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_porters } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_porters - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_trackers } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_trackers - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_kennel } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_kennel - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_siege_engineers } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_siege_engineers - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_shrine } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_shrine - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_scribes } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_scribes - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_bartering_grounds } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_bartering_grounds - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_ransom_cages } - any_prisoner = { } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_ransom_cages - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_pleasure_tents } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.baggage_train_pleasure_tents - } - triggered_desc = { - trigger = { - domicile = { - has_domicile_building_or_higher = mess_tent_01 - ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.mess_tent_01 - } - triggered_desc = { - trigger = { - domicile = { - has_domicile_building = mess_tent_herbalists - ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.mess_tent_herbalists - } - triggered_desc = { - trigger = { - domicile = { - has_domicile_building = mess_tent_brewers - ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.mess_tent_brewers - } - triggered_desc = { - trigger = { - domicile = { - has_domicile_building = mess_tent_bakers - ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.mess_tent_bakers - } - triggered_desc = { - trigger = { - domicile = { - has_domicile_building = mess_tent_cooks - ep3_laamp_flavour_ewan_0051_camp_has_food_to_burn_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.mess_tent_cooks - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = camp_fire_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_fire_trailing_musicians } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_trailing_musicians - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_fire_wandering_poets } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_wandering_poets - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_fire_capering_fools } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_capering_fools - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_fire_local_hangers_on } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_local_hangers_on - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_fire_juicy_rumors } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_fire_juicy_rumors - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = proving_grounds_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_horse_run } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_horse_run - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_camel_run } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_camel_run - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_elephantry_reserve } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_elephantry_reserve - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_nightly_barding_drills } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_nightly_barding_drills - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_the_stump } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_the_stump - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_personal_bouts } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_personal_bouts - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_training_circle } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_training_circle - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_mock_battle_drills } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_mock_battle_drills - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_the_stick_game } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_the_stick_game - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = proving_grounds_bodyguard_drills } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.proving_grounds_bodyguard_drills - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building_or_higher = camp_perimeter_01 } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_perimeter_01 - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_perimeter_fixed_layout } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_perimeter_fixed_layout - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_perimeter_palisade } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_perimeter_palisade - } - triggered_desc = { - trigger = { - domicile = { has_domicile_building = camp_perimeter_ditch } - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.camp_perimeter_ditch - } - desc = ep3_laamp_flavour_ewan.0051.desc.buildings.fallback - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.connector - # Courtiers. - random_valid = { - # Their relations. - triggered_desc = { - trigger = { - OR = { - exists = scope:courtier_friend_1 - exists = scope:courtier_best_friend_1 - exists = scope:courtier_rival_1 - exists = scope:courtier_nemesis_1 - exists = scope:courtier_lover_1 - exists = scope:courtier_soulmate_1 - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { exists = scope:courtier_friend_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.friends - } - triggered_desc = { - trigger = { exists = scope:courtier_best_friend_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.best_friends - } - triggered_desc = { - trigger = { exists = scope:courtier_rival_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.rivals - } - triggered_desc = { - trigger = { exists = scope:courtier_nemesis_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.nemeses - } - triggered_desc = { - trigger = { exists = scope:courtier_lover_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.lovers - } - triggered_desc = { - trigger = { exists = scope:courtier_soulmate_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_relations.soulmates - } - } - } - } - # How many you have of different kinds. - triggered_desc = { - trigger = { - OR = { - exists = scope:leading_child - exists = scope:leading_knight - exists = scope:culture_1 - exists = scope:faith_1 - } - } - desc = { - random_valid = { - triggered_desc = { - trigger = { exists = scope:leading_child } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_count.many_children - } - triggered_desc = { - trigger = { exists = scope:leading_knight } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_count.many_knights - } - triggered_desc = { - trigger = { exists = scope:culture_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_count.many_languages - } - triggered_desc = { - trigger = { exists = scope:faith_1 } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.courtier_count.many_faiths - } - } - } - } - # Notable characters. - triggered_desc = { - trigger = { exists = scope:notable_char } - desc = { - random_valid = { - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = lustful } - # Rule this out if it might be narratively upsetting, as we don't want to deal with that headache. - OR = { - NOR = { - is_consort_of = root - has_relation_lover = root - } - accepts_adultery_without_penalty_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.lustful - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = gluttonous } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.gluttonous - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = temperate } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.temperate - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = greedy } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.greedy - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = generous } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.generous - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = lazy } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.lazy - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = diligent } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.diligent - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = wrathful } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.wrathful - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = calm } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.calm - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = patient } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.patient - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = impatient } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.impatient - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = arrogant } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.arrogant - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = humble } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.humble - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = deceitful } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.deceitful - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = honest } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.honest - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = gregarious } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.gregarious - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = arbitrary } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.arbitrary - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = just } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.just - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = cynical } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.cynical - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = zealous } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.zealous - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = paranoid } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.paranoid - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = trusting } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.trusting - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = compassionate } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.compassionate - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = callous } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.callous - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = sadistic } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.sadistic - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = stubborn } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.stubborn - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = fickle } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.fickle - } - triggered_desc = { - trigger = { - scope:notable_char = { has_trait = vengeful } - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.vengeful - } - desc = ep3_laamp_flavour_ewan.0051.desc.followers.notable_char.fallback - } - } - } - # Fallbacks. - ## Wrap these up so that their weighting doesn't get all weird. - desc = { - random_valid = { - desc = ep3_laamp_flavour_ewan.0051.desc.followers.fallback.1 - desc = ep3_laamp_flavour_ewan.0051.desc.followers.fallback.2 - desc = ep3_laamp_flavour_ewan.0051.desc.followers.fallback.3 - } - } - } - desc = ep3_laamp_flavour_ewan.0051.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = happiness - } - override_background = { reference = corridor_night } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0051 } - } - # Make sure that we've got at least one mainline building built outside of our pavillion, so that our options aren't totally boring. - domicile = { - OR = { - has_domicile_building_or_higher = supply_tent_01 - has_domicile_building_or_higher = barber_tent_01 - has_domicile_building_or_higher = baggage_train_01 - has_domicile_building_or_higher = mess_tent_01 - has_domicile_building_or_higher = camp_fire_01 - has_domicile_building_or_higher = proving_grounds_01 - has_domicile_building_or_higher = camp_perimeter_01 - } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0051 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0051 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Roll which camp options we want to show. - ep3_laamp_flavour_ewan_0051_roll_camp_visit_locations_effect = yes - ep3_laamp_flavour_ewan_0051_roll_camp_visit_locations_effect = yes - ep3_laamp_flavour_ewan_0051_roll_camp_visit_locations_effect = yes - # If we're a player, grab our courtier desc. - ## Camp relations. - ### Friends. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = friend - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_best_friend = prev } - } - } - save_scope_as = courtier_friend_1 - random_relation = { - type = friend - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_best_friend = prev } - } - save_scope_as = courtier_friend_2 - } - } - ### Best friends. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = best_friend - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - } - } - save_scope_as = courtier_best_friend_1 - random_relation = { - type = best_friend - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - save_scope_as = courtier_best_friend_2 - } - } - ### Rivals. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = rival - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_nemesis = prev } - } - } - save_scope_as = courtier_rival_1 - random_relation = { - type = rival - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_nemesis = prev } - } - save_scope_as = courtier_rival_2 - } - } - ### Nemeses. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = nemesis - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - } - } - save_scope_as = courtier_nemesis_1 - random_relation = { - type = nemesis - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - save_scope_as = courtier_nemesis_2 - } - } - ### Lovers. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = lover - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_soulmate = prev } - } - } - save_scope_as = courtier_lover_1 - random_relation = { - type = lover - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_relation_soulmate = prev } - } - save_scope_as = courtier_lover_2 - } - } - ### Soulmates. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - any_relation = { - type = soulmate - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - } - } - save_scope_as = courtier_soulmate_1 - random_relation = { - type = soulmate - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - save_scope_as = courtier_soulmate_2 - } - } - ## Follower states. - ### Lots of children. - if = { - limit = { - any_courtier = { - count >= 8 - ep3_laamp_flavour_ewan_available_child_trigger = yes - } - } - # Nab a suitable child to be leading play. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - order_by = { - value = age - if = { - limit = { has_trait = rowdy } - add = 3 - } - if = { - limit = { has_trait = charming } - add = 2 - } - if = { - limit = { has_trait = pensive } - add = -5 - } - if = { - limit = { has_trait = bossy } - add = 5 - } - } - save_scope_as = leading_child - } - } - ### Lots of knights. - if = { - limit = { - any_knight = { - count >= 10 - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - } - } - ordered_knight = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - order_by = prowess - save_scope_as = leading_knight - } - } - ### Lots of different languages being spoken. - #### First, assemble our list. - culture = { add_to_list = cultures_with_unique_languages_list } - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_anybody_trigger = yes } - culture = { - save_scope_as = culture_temp - if = { - limit = { - NOT = { - any_in_list = { - list = cultures_with_unique_languages_list - has_same_culture_language = scope:culture_temp - } - } - } - add_to_list = cultures_with_unique_languages_list - } - } - } - #### Then, check how long it is. - if = { - limit = { "list_size(cultures_with_unique_languages_list)" >= 8 } - random_in_list = { - list = cultures_with_unique_languages_list - limit = { - this != root.culture - } - save_scope_as = culture_1 - } - random_in_list = { - list = cultures_with_unique_languages_list - limit = { - NOR = { - this = root.culture - this = scope:culture_1 - } - } - save_scope_as = culture_2 - } - random_in_list = { - list = cultures_with_unique_languages_list - limit = { - NOR = { - this = root.culture - this = scope:culture_1 - this = scope:culture_2 - } - } - save_scope_as = culture_3 - } - } - ### Lots of different faiths around. - #### First, assemble our list. - faith = { add_to_list = unique_faiths_list } - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_anybody_trigger = yes } - faith = { add_to_list = unique_faiths_list } - } - #### Then, check how long it is. - if = { - limit = { "list_size(unique_faiths_list)" >= 5 } - random_in_list = { - list = unique_faiths_list - limit = { - this != root.faith - } - save_scope_as = faith_1 - } - random_in_list = { - list = unique_faiths_list - limit = { - NOR = { - this = root.faith - this = scope:faith_1 - } - } - save_scope_as = faith_2 - } - random_in_list = { - list = unique_faiths_list - limit = { - NOR = { - this = root.faith - this = scope:faith_1 - this = scope:faith_2 - } - } - save_scope_as = faith_3 - } - } - ## Notable character traits. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - OR = { - is_close_family_of = root - is_consort_of = root - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root } - has_any_court_position = yes - } - } - save_scope_as = notable_char - } - } - - # camp_main_01: retire to my own tent. - option = { - name = ep3_laamp_flavour_ewan.0051.a - - # Consolation prestige. - add_prestige = minor_prestige_gain - - stress_impact = { - base = medium_stress_loss - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } - - # supply_tent_01: visit the supply tent, check the stores. - option = { - name = ep3_laamp_flavour_ewan.0051.b - trigger = { exists = scope:supply_tent } - reason = has_building_supply_tent_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_supply_tent_modifier - years = 10 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - } - } - - # barber_tent_01: go for a check-up and a shave/trim at the barbers - option = { - name = { - text = { - first_valid = { - # Bald woman. - triggered_desc = { - trigger = { - is_female = yes - is_bald_trigger = yes - } - desc = ep3_laamp_flavour_ewan.0051.c.bald.female - } - # Bald man. - triggered_desc = { - trigger = { - is_male = yes - is_bald_trigger = yes - } - desc = ep3_laamp_flavour_ewan.0051.c.bald.male - } - # Non-bald man. - triggered_desc = { - trigger = { is_male = yes } - desc = ep3_laamp_flavour_ewan.0051.c.hairy.male - } - # Non-bald woman. - desc = ep3_laamp_flavour_ewan.0051.c.fallback - } - } - } - trigger = { exists = scope:barber_tent } - reason = has_building_barber_tent_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_barber_tent_modifier - years = 10 - } - - stress_impact = { arrogant = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # baggage_train_01: organise the chaos of the baggage train. - option = { - name = ep3_laamp_flavour_ewan.0051.d - trigger = { exists = scope:baggage_train } - reason = has_building_baggage_train_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_baggage_train_modifier - years = 10 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # mess_tent_01: get some grub before a line forms. - option = { - name = ep3_laamp_flavour_ewan.0051.e - trigger = { exists = scope:mess_tent } - reason = has_building_mess_tent_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_mess_tent_modifier - years = 10 - } - - stress_impact = { - gluttonous = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - # Anyone who's ever worked in a field knows that this is the only logical thing to do AQAP. - ai_value_modifier = { ai_rationality = 5 } - } - } - - # camp_fire_01: nab a good seat at the fire. - option = { - name = ep3_laamp_flavour_ewan.0051.f - trigger = { exists = scope:camp_fire } - reason = has_building_camp_fire_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_camp_fire_modifier - years = 10 - } - - stress_impact = { - lazy = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - # Don't bully the shies here, they can enjoy a nice fire too. - diligent = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = -0.5 - } - } - } - - # proving_grounds_01: check the soldiery are being diligent. - option = { - name = ep3_laamp_flavour_ewan.0051.g - trigger = { exists = scope:proving_grounds } - reason = has_building_proving_grounds_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_proving_grounds_modifier - years = 10 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # camp_perimeter_01: walk the perimeter, check we're being vigilant. - option = { - name = ep3_laamp_flavour_ewan.0051.h - trigger = { exists = scope:camp_perimeter } - reason = has_building_camp_perimeter_01_or_higher - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_0051_check_building_camp_perimeter_modifier - years = 10 - } - - stress_impact = { - paranoid = miniscule_stress_impact_loss - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } -} - -################################################## -# An Unexpected Faire -# by Ewan Cowhig Croft -# 0061 - 0070 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0061_sahara_trigger = { - geographical_region = custom_sahara_proper - # If we're in an oasis, we should act like it. - NOT = { terrain = oasis } -} - -scripted_trigger ep3_laamp_flavour_ewan_0061_steppe_trigger = { - geographical_region = world_steppe - # We only lack cities on the steppe _proper_. - terrain = steppe -} - -# Locals react with impromptu faire. -ep3_laamp_flavour_ewan.0061 = { - type = character_event - title = ep3_laamp_flavour_ewan.0061.t - desc = ep3_laamp_flavour_ewan.0061.desc - theme = laamp - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:local_merchant - animation = admiration - } - override_background = { reference = market_scope } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0061 } - } - # No one likes brigands. - NOT = { has_realm_law = camp_purpose_brigands } - # Make sure the location is suitable for there to be a fair. - location = { - # Gotta have somewhere hosting us. - has_holding = yes - # And some infrastructure. - county = { - # We should have some level of urbanisation. - development_level >= 20 - # And be fully secure. - county_control >= 100 - } - # Plus no plagues. - any_province_epidemic = { count <= 0 } - # Finally, no major regional blockers. - ep3_laamp_flavour_ewan_0061_sahara_trigger = no - ep3_laamp_flavour_ewan_0061_steppe_trigger = no - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0061 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0061 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Everyone's a little happier whatever we do. - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_anybody_trigger = yes } - custom = ep3_laamp_flavour_ewan.0061.tt.everyone_loves_faires - add_opinion = { - target = root - modifier = spirits_lifted_opinion - opinion = 20 - } - add_stress = massive_stress_loss - } - # Generate our local dude. - create_character = { - template = merchant_template - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = local_merchant - } - ## Plus give 'em a nickname. - hidden_effect = { - scope:local_merchant = { assign_random_nickname_effect = yes } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - # And our location for our background. - location = { save_scope_as = background_market_scope } - } - - # What a welcome surprise! - option = { - name = ep3_laamp_flavour_ewan.0061.a - - add_prestige = medium_prestige_gain - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Enroll a talented local. - option = { - name = ep3_laamp_flavour_ewan.0061.b - - add_courtier = scope:local_merchant - reverse_add_opinion = { - target = scope:local_merchant - modifier = grateful_opinion - opinion = 80 - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # Pick up some provisions. - option = { - name = ep3_laamp_flavour_ewan.0061.c - - remove_short_term_gold = minor_gold_laamps_value - domicile = { change_provisions = medium_provisions_gain } - - stress_impact = { - gluttonous = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - modifier = { - factor = 0 - gold <= medium_gold_laamps_value - } - } - } - - # Stay at camp. - option = { - name = ep3_laamp_flavour_ewan.0061.d - - # Mostly just stress loss. - stress_impact = { - base = medium_stress_loss - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } - - after = { - # Clean up our local if we're not a player. - if = { - limit = { - is_ai = yes - this != scope:local_merchant.liege - } - scope:local_merchant = { - death = { death_reason = death_vanished } - } - } - } -} - -################################################## -# Pounding Hooves -# by Ewan Cowhig Croft -# 0071 - 0080 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_0071_drinking_follower_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - drinks_alcohol_trigger = yes - NOR = { - has_trait = temperate - has_trait = shy - } -} - -# Riding with a hangover-stricken friend. -ep3_laamp_flavour_ewan.0071 = { - type = character_event - title = ep3_laamp_flavour_ewan.0071.t - desc = ep3_laamp_flavour_ewan.0071.desc - theme = laamp - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:hanger - animation = stress - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_0071 } - } - # And we've got a suitable follower. - any_courtier = { ep3_laamp_flavour_ewan_0071_drinking_follower_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_0071 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_0071 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Try to nab our most party-prone follower. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_0071_drinking_follower_trigger = yes } - order_by = { - value = diplomacy - if = { - limit = { has_trait = drunkard } - add = 50 - } - if = { - limit = { has_trait = gluttonous } - add = 20 - } - if = { - limit = { has_trait = gregarious } - add = 10 - } - } - save_scope_as = hanger - add_character_modifier = { - modifier = legend_hangover_modifier - months = 3 - } - } - } - - # Slow down for herhim. - option = { - name = ep3_laamp_flavour_ewan.0071.a - - reverse_add_opinion = { - target = scope:hanger - modifier = grateful_opinion - opinion = 30 - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 2 } - } - } - - # Laugh at herhis predicament. - option = { - name = ep3_laamp_flavour_ewan.0071.b - - reverse_add_opinion = { - target = scope:hanger - modifier = annoyed_opinion - opinion = -15 - } - - # Plus stress loss. - stress_impact = { - base = medium_stress_loss - sadistic = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - # Kick herhis horse into gear. - option = { - name = ep3_laamp_flavour_ewan.0071.c - - reverse_add_opinion = { - target = scope:hanger - modifier = angry_opinion - opinion = -30 - } - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - this != scope:hanger - } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = proper_jokes_opinion - opinion = 20 - } - } - - stress_impact = { - sadistic = major_stress_impact_loss - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = -0.5 - ai_vengefulness = -0.5 - } - } - } - - # Speed up and leave herhim to his misery. - option = { - name = ep3_laamp_flavour_ewan.0071.d - - reverse_add_opinion = { - target = scope:hanger - modifier = hurt_opinion - opinion = -10 - } - - stress_impact = { - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } -} - - - - - - - - - - - - -################################################## -# CHILDREARING - -################################################## -# Friends in Low Places -# by Ewan Cowhig Croft -# 1001 - 1010 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1001_valid_other_child_trigger = { - age >= scope:lower_age_bound_temp - age <= scope:upper_age_bound_temp - ep3_laamp_flavour_ewan_available_child_trigger = yes - OR = { - is_lowborn = yes - dynasty.dynasty_prestige_level < @ep3_laamp_flavour_ewan_1001_dynasty_prestige_level - } - NOR = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:char_temp } - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = scope:char_temp } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1001_valid_own_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - num_of_relation_friend <= 1 - # Your child must also be suitably posh (since bastards'n'diff-house children exist). - dynasty ?= { dynasty_prestige_level >= @ep3_laamp_flavour_ewan_1001_dynasty_prestige_level } - save_temporary_scope_as = char_temp - save_temporary_scope_value_as = { - name = lower_age_bound_temp - value = { - add = age - add = -3 - } - } - save_temporary_scope_value_as = { - name = upper_age_bound_temp - value = { - add = age - add = 3 - } - } - root = { - any_courtier = { ep3_laamp_flavour_ewan_1001_valid_other_child_trigger = yes } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1001_parent_is_important_at_camp_trigger = { - liege = root - OR = { - has_any_court_position = yes - has_important_relationship_with_character_trigger = { CHARACTER = root } - } -} - -# Highborn befriends a lowborn. -ep3_laamp_flavour_ewan.1001 = { - type = character_event - title = ep3_laamp_flavour_ewan.1001.t - desc = ep3_laamp_flavour_ewan.1001.desc - theme = laamp - left_portrait = { - character = scope:own_child - animation = admiration - } - right_portrait = { - character = scope:other_child - animation = happiness - } - override_background = { reference = corridor_day } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1001 } - } - # You've gotta be suitably posh. - dynasty ?= { dynasty_prestige_level >= @ep3_laamp_flavour_ewan_1001_dynasty_prestige_level } - # You have at least one valid child. - ## This includes checking for a partner child. - any_child = { ep3_laamp_flavour_ewan_1001_valid_own_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1001 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1001 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab a random child of ours who fits the criteria. - random_child = { - limit = { ep3_laamp_flavour_ewan_1001_valid_own_child_trigger = yes } - save_scope_as = own_child - } - # Ok, now let's sort a partner child. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_1001_valid_other_child_trigger = yes } - order_by = { - value = diplomacy - # Boost lowborns. - if = { - limit = { is_lowborn = yes } - add = 1000 - } - # And anyone who isn't the spawn of someone important. - if = { - limit = { - NOR = { - mother ?= { ep3_laamp_flavour_ewan_1001_parent_is_important_at_camp_trigger = yes } - father ?= { ep3_laamp_flavour_ewan_1001_parent_is_important_at_camp_trigger = yes } - } - } - add = 100 - } - } - save_scope_as = other_child - } - } - - # Run along then, you two. - option = { - name = ep3_laamp_flavour_ewan.1001.a - - random_list = { - 50 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1001.set_friendship - left_icon = scope:own_child - right_icon = scope:other_child - scope:own_child = { - set_relation_friend = { - reason = friend_children_grew_up_in_same_camp - target = scope:other_child - } - add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - reverse_add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - } - } - } - 50 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1001.set_hidden_potential_friendship - left_icon = scope:own_child - right_icon = scope:other_child - scope:own_child = { - add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 25 - } - reverse_add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 25 - } - hidden_effect = { set_relation_potential_friend = scope:other_child } - } - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # I think you've made a friend for life there, my DaughterSon. - option = { - name = ep3_laamp_flavour_ewan.1001.b - trigger = { - scope:own_child = { num_of_relation_best_friend <= 0 } - } - - random_list = { - 70 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1001.set_best_friendship - left_icon = scope:own_child - right_icon = scope:other_child - scope:own_child = { - set_relation_best_friend = { - reason = friend_children_grew_up_in_same_camp - target = scope:other_child - } - add_mutual_gendered_blood_sibling_hook_effect = { TARGET = scope:other_child } - } - } - scope:own_child = { - add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - reverse_add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - } - } - 20 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1001.set_friendship - left_icon = scope:own_child - right_icon = scope:other_child - scope:own_child = { - set_relation_friend = { - reason = friend_children_grew_up_in_same_camp - target = scope:other_child - } - add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - reverse_add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 50 - } - } - } - } - 10 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1001.friendship_fizzles - left_icon = scope:own_child - right_icon = scope:other_child - scope:own_child = { - add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 10 - } - reverse_add_opinion = { - target = scope:other_child - modifier = friendliness_opinion - opinion = 10 - } - } - } - } - } - - stress_impact = { - humble = miniscule_stress_impact_loss - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Child.GetFirstName, GetSheHe's beneath you. - option = { - name = ep3_laamp_flavour_ewan.1001.c - - scope:own_child = { - add_opinion = { - target = scope:other_child - modifier = estranged_opinion - opinion = -25 - } - reverse_add_opinion = { - target = scope:other_child - modifier = hurt_opinion - opinion = -50 - } - hidden_effect = { set_relation_potential_rival = scope:other_child } - } - hidden_effect = { - # Scope:other_child will remember this. - reverse_add_opinion = { - target = scope:other_child - modifier = respect_opinion - opinion = -50 - } - } - - stress_impact = { - arrogant = medium_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } -} - -################################################## -# Learning from Example -# by Ewan Cowhig Croft -# 1011 - 1020 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - # This'll give us a range of 1:2:3 for 1-2:3-4:5 aptitudes. - $OFFICER_CHAR$ = { - save_scope_value_as = { - name = aptitude_gain - value = { - if = { - limit = { has_court_position = second_camp_officer } - add = "aptitude(second_camp_officer)" - } - else_if = { - limit = { has_court_position = quartermaster_camp_officer } - add = "aptitude(quartermaster_camp_officer)" - } - else_if = { - limit = { has_court_position = armorer_camp_officer } - add = "aptitude(armorer_camp_officer)" - } - else_if = { - limit = { has_court_position = chief_forager_camp_officer } - add = "aptitude(chief_forager_camp_officer)" - } - else_if = { - limit = { has_court_position = master_thief_camp_officer } - add = "aptitude(master_thief_camp_officer)" - } - else_if = { - limit = { has_court_position = head_porter_camp_officer } - add = "aptitude(head_porter_camp_officer)" - } - else_if = { - limit = { has_court_position = head_groom_camp_officer } - add = "aptitude(head_groom_camp_officer)" - } - else_if = { - limit = { has_court_position = huntperson_camp_officer } - add = "aptitude(huntperson_camp_officer)" - } - else_if = { - limit = { has_court_position = kennelperson_camp_officer } - add = "aptitude(kennelperson_camp_officer)" - } - else_if = { - limit = { has_court_position = chief_engineer_camp_officer } - add = "aptitude(chief_engineer_camp_officer)" - } - else_if = { - limit = { has_court_position = witness_camp_officer } - add = "aptitude(witness_camp_officer)" - } - else_if = { - limit = { has_court_position = person_haggler_camp_officer } - add = "aptitude(person_haggler_camp_officer)" - } - else_if = { - limit = { has_court_position = camp_cook_camp_officer } - add = "aptitude(camp_cook_camp_officer)" - } - else_if = { - limit = { has_court_position = master_bard_camp_officer } - add = "aptitude(master_bard_camp_officer)" - } - else_if = { - limit = { has_court_position = master_of_arms_camp_officer } - add = "aptitude(master_of_arms_camp_officer)" - } - multiply = 0.5 - ceiling = yes - min = 1 - } - } - } - # Log which skills we want to adjust. - save_scope_value_as = { - name = add_diplomacy - value = $DIPLOMACY$ - } - save_scope_value_as = { - name = add_martial - value = $MARTIAL$ - } - save_scope_value_as = { - name = add_stewardship - value = $STEWARDSHIP$ - } - save_scope_value_as = { - name = add_intrigue - value = $INTRIGUE$ - } - save_scope_value_as = { - name = add_learning - value = $LEARNING$ - } - save_scope_value_as = { - name = add_prowess - value = $PROWESS$ - } - # Finally, increment the appropriate skills. - scope:child = { - if = { - limit = { scope:add_diplomacy = yes } - add_diplomacy_skill = scope:aptitude_gain - } - if = { - limit = { scope:add_martial = yes } - add_martial_skill = scope:aptitude_gain - } - if = { - limit = { scope:add_stewardship = yes } - add_stewardship_skill = scope:aptitude_gain - } - if = { - limit = { scope:add_intrigue = yes } - add_intrigue_skill = scope:aptitude_gain - } - if = { - limit = { scope:add_learning = yes } - add_learning_skill = scope:aptitude_gain - } - if = { - limit = { scope:add_prowess = yes } - add_prowess_skill = scope:aptitude_gain - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { - court_position:$POSITION$_camp_officer ?= { - if = { - limit = { is_available_allow_travelling = yes } - save_scope_as = $POSITION$ - add_to_list = prospective_positions_list - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = { - add_opinion = { - target = scope:child - modifier = little_helper_opinion - opinion = 50 - } - reverse_add_opinion = { - target = scope:child - modifier = respect_opinion - opinion = 30 - } -} - -# Learning from officer. -ep3_laamp_flavour_ewan.1011 = { - type = character_event - title = ep3_laamp_flavour_ewan.1011.t - desc = ep3_laamp_flavour_ewan.1011.desc - theme = laamp - left_portrait = { - character = scope:child - animation = admiration - } - lower_left_portrait = scope:portrait_1 - lower_center_portrait = scope:portrait_2 - lower_right_portrait = scope:portrait_3 - override_background = { reference = army_camp } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1011 } - } - any_child = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - OR = { - court_position:second_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:quartermaster_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:armorer_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:chief_forager_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:master_thief_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:head_porter_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:head_groom_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:huntperson_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:kennelperson_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:chief_engineer_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:witness_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:person_haggler_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:camp_cook_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:master_bard_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - court_position:master_of_arms_camp_officer ?= { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1011 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1011 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Pick a suitable child. - ordered_child = { - limit = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - order_by = age - save_scope_as = child - } - # Now process our available court positions. - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = second } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = quartermaster } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = armorer } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = chief_forager } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = master_thief } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = head_porter } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = head_groom } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = huntperson } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = kennelperson } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = chief_engineer } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = witness } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = person_haggler } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = camp_cook } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = master_bard } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = master_of_arms } - ep3_laamp_flavour_ewan_1011_nab_court_position_effect = { POSITION = master_of_spoils } - ## Ok, now that we've got them, go over the list and check who's best at their job. - ordered_in_list = { - list = prospective_positions_list - order_by = { - if = { - limit = { has_court_position = second_camp_officer } - add = "aptitude(second_camp_officer)" - } - else_if = { - limit = { has_court_position = quartermaster_camp_officer } - add = "aptitude(quartermaster_camp_officer)" - } - else_if = { - limit = { has_court_position = armorer_camp_officer } - add = "aptitude(armorer_camp_officer)" - } - else_if = { - limit = { has_court_position = chief_forager_camp_officer } - add = "aptitude(chief_forager_camp_officer)" - } - else_if = { - limit = { has_court_position = master_thief_camp_officer } - add = "aptitude(master_thief_camp_officer)" - } - else_if = { - limit = { has_court_position = head_porter_camp_officer } - add = "aptitude(head_porter_camp_officer)" - } - else_if = { - limit = { has_court_position = head_groom_camp_officer } - add = "aptitude(head_groom_camp_officer)" - } - else_if = { - limit = { has_court_position = huntperson_camp_officer } - add = "aptitude(huntperson_camp_officer)" - } - else_if = { - limit = { has_court_position = kennelperson_camp_officer } - add = "aptitude(kennelperson_camp_officer)" - } - else_if = { - limit = { has_court_position = chief_engineer_camp_officer } - add = "aptitude(chief_engineer_camp_officer)" - } - else_if = { - limit = { has_court_position = witness_camp_officer } - add = "aptitude(witness_camp_officer)" - } - else_if = { - limit = { has_court_position = person_haggler_camp_officer } - add = "aptitude(person_haggler_camp_officer)" - } - else_if = { - limit = { has_court_position = camp_cook_camp_officer } - add = "aptitude(camp_cook_camp_officer)" - } - else_if = { - limit = { has_court_position = master_bard_camp_officer } - add = "aptitude(master_bard_camp_officer)" - } - else_if = { - limit = { has_court_position = master_of_arms_camp_officer } - add = "aptitude(master_of_arms_camp_officer)" - } - else_if = { - limit = { has_court_position = master_of_spoils_camp_officer } - add = "aptitude(master_of_spoils_camp_officer)" - } - } - max = 3 - check_range_bounds = no - if = { - limit = { - NOT = { is_in_list = best_positions_list } - } - add_to_list = best_positions_list - } - } - # Plus sort our portraits. - random_in_list = { - list = best_positions_list - save_scope_as = portrait_1 - } - random_in_list = { - list = best_positions_list - limit = { - this != scope:portrait_1 - } - save_scope_as = portrait_2 - } - random_in_list = { - list = best_positions_list - limit = { - NOR = { - this = scope:portrait_1 - this = scope:portrait_2 - } - } - save_scope_as = portrait_3 - } - } - - # second: picks up diplo + a little of everything. - option = { - name = ep3_laamp_flavour_ewan.1011.a - trigger = { - scope:second ?= { is_in_list = best_positions_list } - } - reason = have_second - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:second - DIPLOMACY = yes - MARTIAL = yes - STEWARDSHIP = no - INTRIGUE = no - LEARNING = no - PROWESS = no - } - scope:second = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # quartermaster: picks up stewardship. - option = { - name = ep3_laamp_flavour_ewan.1011.b - trigger = { - scope:quartermaster ?= { is_in_list = best_positions_list } - } - reason = have_quartermaster - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:quartermaster - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = yes - INTRIGUE = no - LEARNING = no - PROWESS = no - } - scope:quartermaster = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # armorer: picks up stewardship & learning. - option = { - name = ep3_laamp_flavour_ewan.1011.c - trigger = { - scope:armorer ?= { is_in_list = best_positions_list } - } - reason = have_armorer - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:armorer - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = yes - INTRIGUE = no - LEARNING = yes - PROWESS = no - } - scope:armorer = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # chief_forager: picks up prowess & learning. - option = { - name = ep3_laamp_flavour_ewan.1011.d - trigger = { - scope:chief_forager ?= { is_in_list = best_positions_list } - } - reason = have_chief_forager - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:chief_forager - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = no - LEARNING = yes - PROWESS = yes - } - scope:chief_forager = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # master_thief: picks up intrigue & prowess. - option = { - name = ep3_laamp_flavour_ewan.1011.e - trigger = { - scope:master_thief ?= { is_in_list = best_positions_list } - } - reason = have_master_thief - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:master_thief - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = yes - LEARNING = no - PROWESS = yes - } - scope:master_thief = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # head_porter: picks up martial & stewardship. - option = { - name = ep3_laamp_flavour_ewan.1011.f - trigger = { - scope:head_porter ?= { is_in_list = best_positions_list } - } - reason = have_head_porter - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:head_porter - DIPLOMACY = no - MARTIAL = yes - STEWARDSHIP = yes - INTRIGUE = no - LEARNING = no - PROWESS = no - } - scope:head_porter = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # head_groom: picks up learning & stewardship. - option = { - name = ep3_laamp_flavour_ewan.1011.g - trigger = { - scope:head_groom ?= { is_in_list = best_positions_list } - } - reason = have_head_groom - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:head_groom - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = yes - INTRIGUE = no - LEARNING = yes - PROWESS = no - } - scope:head_groom = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # huntperson: picks up prowess & learning. - option = { - name = ep3_laamp_flavour_ewan.1011.h - trigger = { - scope:huntperson ?= { is_in_list = best_positions_list } - } - reason = have_huntperson - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:huntperson - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = no - LEARNING = yes - PROWESS = yes - } - scope:huntperson = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # kennelperson: picks up martial & prowess. - option = { - name = ep3_laamp_flavour_ewan.1011.i - trigger = { - scope:kennelperson ?= { is_in_list = best_positions_list } - } - reason = have_kennelperson - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:kennelperson - DIPLOMACY = no - MARTIAL = yes - STEWARDSHIP = no - INTRIGUE = no - LEARNING = no - PROWESS = yes - } - scope:kennelperson = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # chief_engineer: picks up learning & martial. - option = { - name = ep3_laamp_flavour_ewan.1011.j - trigger = { - scope:chief_engineer ?= { is_in_list = best_positions_list } - } - reason = have_chief_engineer - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:chief_engineer - DIPLOMACY = no - MARTIAL = yes - STEWARDSHIP = no - INTRIGUE = no - LEARNING = yes - PROWESS = no - } - scope:chief_engineer = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # witness: picks up diplomacy. - option = { - name = ep3_laamp_flavour_ewan.1011.k - trigger = { - scope:witness ?= { is_in_list = best_positions_list } - } - reason = have_witness - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:witness - DIPLOMACY = yes - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = no - LEARNING = no - PROWESS = no - } - scope:witness = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # person_haggler: picks up diplomacy, plus a little intrigue + stewardship. - option = { - name = ep3_laamp_flavour_ewan.1011.l - trigger = { - scope:person_haggler ?= { is_in_list = best_positions_list } - } - reason = have_person_haggler - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:person_haggler - DIPLOMACY = yes - MARTIAL = no - STEWARDSHIP = yes - INTRIGUE = yes - LEARNING = no - PROWESS = no - } - scope:person_haggler = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # camp_cook: picks up intrigue. - option = { - name = ep3_laamp_flavour_ewan.1011.m - trigger = { - scope:camp_cook ?= { is_in_list = best_positions_list } - } - reason = have_camp_cook - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:camp_cook - DIPLOMACY = no - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = yes - LEARNING = no - PROWESS = no - } - scope:camp_cook = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # master_bard: picks up diplomacy + learning. - option = { - name = ep3_laamp_flavour_ewan.1011.n - trigger = { - scope:master_bard ?= { is_in_list = best_positions_list } - } - reason = have_master_bard - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:master_bard - DIPLOMACY = yes - MARTIAL = no - STEWARDSHIP = no - INTRIGUE = no - LEARNING = yes - PROWESS = no - } - scope:master_bard = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # master_of_arms: picks up martial + prowess. - option = { - name = ep3_laamp_flavour_ewan.1011.o - trigger = { - scope:master_of_arms ?= { is_in_list = best_positions_list } - } - reason = have_master_of_arms - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:master_of_arms - DIPLOMACY = no - MARTIAL = yes - STEWARDSHIP = no - INTRIGUE = no - LEARNING = no - PROWESS = yes - } - scope:master_of_arms = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } - - # master_of_spoils: picks up martial + prowess. - option = { - name = ep3_laamp_flavour_ewan.1011.o - trigger = { - scope:master_of_spoils ?= { is_in_list = best_positions_list } - } - reason = have_master_of_spoils - - ep3_laamp_flavour_ewan_1011_random_skill_gain_effect = { - OFFICER_CHAR = scope:master_of_spoils - DIPLOMACY = no - MARTIAL = yes - STEWARDSHIP = yes - INTRIGUE = no - LEARNING = no - PROWESS = yes - } - scope:master_of_spoils = { ep3_laamp_flavour_ewan_1011_apply_little_helper_opinion_effect = yes } - - # No stress here. - ai_chance = { - # Pick an option at random, they're all good. - base = 1 - } - } -} - -################################################## -# Love at First Camp -# by Ewan Cowhig Croft -# 1021 - 1030 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1021_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - num_of_relation_crush <= 0 - NOR = { - has_sexuality = none - # Not that you can't have a crush as a young asexual, we're just not really equipped to deal well with that complexity here. - has_sexuality = asexual - } -} - -# Crush on a local girl/boy. -ep3_laamp_flavour_ewan.1021 = { - type = character_event - title = ep3_laamp_flavour_ewan.1021.t - desc = ep3_laamp_flavour_ewan.1021.desc - theme = laamp - left_portrait = { - character = scope:child - animation = flirtation_left - } - right_portrait = { - character = scope:crush_child - animation = admiration - } - lower_center_portrait = scope:crush_mother - lower_right_portrait = scope:crush_father - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1021 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Make sure we have suitable children. - any_child = { ep3_laamp_flavour_ewan_1021_valid_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1021 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1021 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longer - } - } - # Now let's grab a suitable child. - ordered_child = { - limit = { ep3_laamp_flavour_ewan_1021_valid_child_trigger = yes } - order_by = { - value = age - if = { - limit = { has_trait = lustful } - add = 10 - } - else_if = { - limit = { has_trait = chaste } - add = -10 - } - } - save_scope_as = child - # For determining crush gender. - save_scope_as = attraction_check - } - # And create a suitable local family. - ## Mother. - create_character = { - template = generic_peasant_character - age = 35 - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = 100 - save_scope_as = crush_mother - after_creation = { - save_scope_value_as = { - name = crush_parents_age_diff - value = { - value = age - add = { - integer_range = { - min = -5 - max = 5 - } - } - } - } - } - } - ## Father. - create_character = { - template = generic_peasant_character - age = scope:crush_parents_age_diff - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = 0 - save_scope_as = crush_father - } - ## Marry these two up — we can't be having children out of wedlock, after all. The very idea! - hidden_effect = { - scope:crush_mother = { - if = { - limit = { - faith = { has_doctrine = doctrine_gender_female_dominated } - } - marry_matrilineal = scope:crush_father - } - else = { marry = scope:crush_father } - } - } - ## Child. - create_character = { - location = root.location - age = { - value = scope:child.age - add = 1 - } - culture = root.location.culture - faith = root.location.faith - gender_female_chance = scope_attraction_based_female_chance - mother = scope:crush_mother - father = scope:crush_father - dynasty = none - # Try to duplicate scope:child's personality. - random_traits_list = { - count = 3 - lustful = { - trigger = { - scope:child = { has_trait = lustful } - } - } - chaste = { - trigger = { - scope:child = { has_trait = chaste } - } - } - gluttonous = { - trigger = { - scope:child = { has_trait = gluttonous } - } - } - temperate = { - trigger = { - scope:child = { has_trait = temperate } - } - } - greedy = { - trigger = { - scope:child = { has_trait = greedy } - } - } - generous = { - trigger = { - scope:child = { has_trait = generous } - } - } - lazy = { - trigger = { - scope:child = { has_trait = lazy } - } - } - diligent = { - trigger = { - scope:child = { has_trait = diligent } - } - } - wrathful = { - trigger = { - scope:child = { has_trait = wrathful } - } - } - calm = { - trigger = { - scope:child = { has_trait = calm } - } - } - patient = { - trigger = { - scope:child = { has_trait = patient } - } - } - impatient = { - trigger = { - scope:child = { has_trait = impatient } - } - } - arrogant = { - trigger = { - scope:child = { has_trait = arrogant } - } - } - humble = { - trigger = { - scope:child = { has_trait = humble } - } - } - deceitful = { - trigger = { - scope:child = { has_trait = deceitful } - } - } - honest = { - trigger = { - scope:child = { has_trait = honest } - } - } - craven = { - trigger = { - scope:child = { has_trait = craven } - } - } - brave = { - trigger = { - scope:child = { has_trait = brave } - } - } - shy = { - trigger = { - scope:child = { has_trait = shy } - } - } - gregarious = { - trigger = { - scope:child = { has_trait = gregarious } - } - } - ambitious = { - trigger = { - scope:child = { has_trait = ambitious } - } - } - content = { - trigger = { - scope:child = { has_trait = content } - } - } - arbitrary = { - trigger = { - scope:child = { has_trait = arbitrary } - } - } - just = { - trigger = { - scope:child = { has_trait = just } - } - } - cynical = { - trigger = { - scope:child = { has_trait = cynical } - } - } - zealous = { - trigger = { - scope:child = { has_trait = zealous } - } - } - paranoid = { - trigger = { - scope:child = { has_trait = paranoid } - } - } - trusting = { - trigger = { - scope:child = { has_trait = trusting } - } - } - compassionate = { - trigger = { - scope:child = { has_trait = compassionate } - } - } - callous = { - trigger = { - scope:child = { has_trait = callous } - } - } - sadistic = { - trigger = { - scope:child = { has_trait = sadistic } - } - } - stubborn = { - trigger = { - scope:child = { has_trait = stubborn } - } - } - fickle = { - trigger = { - scope:child = { has_trait = fickle } - } - } - vengeful = { - trigger = { - scope:child = { has_trait = vengeful } - } - } - forgiving = { - trigger = { - scope:child = { has_trait = forgiving } - } - } - eccentric = { - trigger = { - scope:child = { has_trait = eccentric } - } - } - } - # Including childhood traits, if necessary. - random_traits_list = { - count = 1 - rowdy = { - trigger = { - number_of_personality_traits < 3 - scope:child = { has_trait = rowdy } - } - } - charming = { - trigger = { - number_of_personality_traits < 3 - scope:child = { has_trait = charming } - } - } - curious = { - trigger = { - number_of_personality_traits < 3 - scope:child = { has_trait = curious } - } - } - pensive = { - trigger = { - number_of_personality_traits < 3 - scope:child = { has_trait = pensive } - } - } - bossy = { - trigger = { - number_of_personality_traits < 3 - scope:child = { has_trait = bossy } - } - } - } - # And then, for good measure, we apply a fallback. - random_traits = yes - martial = { - min_template_medium_skill - max_template_medium_skill - } - stewardship = { - min_template_medium_skill - max_template_medium_skill - } - diplomacy = { - min_template_medium_skill - max_template_medium_skill - } - intrigue = { - min_template_medium_skill - max_template_medium_skill - } - learning = { - min_template_medium_skill - max_template_medium_skill - } - prowess = { - min_template_medium_skill - max_template_medium_skill - } - save_scope_as = crush_child - after_creation = { - random_list = { - 200 = { - # Character is of average weight, nothing happens - } - 25 = { change_current_weight = -25 } - 25 = { change_current_weight = -75 } - 25 = { change_current_weight = 25 } - 25 = { change_current_weight = 75 } - } - add_character_flag = peasant_outfit - } - } - # Tooltips are borked and can't be fixed without loc (even if we launder the event's immediate so that the spawned chars don't screw things up, it looks dodgy), so we hide the actual crush effect. - hidden_effect = { - scope:child = { - set_relation_crush = scope:crush_child - add_relation_flag = { - relation = crush - target = scope:crush_child - flag = auto_progress_to_lover - } - } - scope:crush_child = { - if = { - limit = { is_adult = no } - set_relation_crush = scope:child - } - else = { - add_opinion = { - target = scope:child - modifier = compliment_opinion - opinion = 20 - } - } - } - } - } - - # I suppose we could accommodate another family. - option = { - name = ep3_laamp_flavour_ewan.1021.a - - domicile = { change_provisions = major_provisions_loss } - - scope:child = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - add_opinion = { - target = scope:crush_child - modifier = childhood_crush - opinion = 100 - } - reverse_add_opinion = { - target = scope:crush_child - modifier = childhood_crush - opinion = 100 - } - } - add_courtier = scope:crush_child - add_courtier = scope:crush_mother - reverse_add_opinion = { - target = scope:crush_mother - modifier = grateful_opinion - opinion = 20 - } - add_courtier = scope:crush_father - reverse_add_opinion = { - target = scope:crush_father - modifier = grateful_opinion - opinion = 20 - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # You will stop seeing them this instant! - option = { - name = ep3_laamp_flavour_ewan.1021.b - - scope:child = { - remove_relation_crush = scope:crush_child - add_opinion = { - target = root - modifier = overreaction_opinion - opinion = -40 - } - } - - stress_impact = { - callous = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - # Surely just a GetSeason fling. - option = { - name = ep3_laamp_flavour_ewan.1021.c - - random_list = { - 100 = { - desc = ep3_laamp_flavour_ewan.1021.c.crush_endures - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1021.c.crush_endures - left_icon = scope:child - right_icon = scope:crush_child - scope:child = { - add_opinion = { - target = scope:crush_child - modifier = childhood_crush - opinion = 50 - } - reverse_add_opinion = { - target = scope:crush_child - modifier = childhood_crush - opinion = 50 - } - } - } - } - 100 = { - desc = ep3_laamp_flavour_ewan.1021.c.crush_fades - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1021.c.crush_fades - left_icon = scope:child - right_icon = scope:crush_child - scope:child = { remove_relation_crush = scope:crush_child } - } - } - } - - # No stress here, you just don't involve yourself. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } - - after = { - # If we've no connexion left, dispose of our peasants. - if = { - limit = { - scope:child = { - NOT = { has_relation_crush = scope:crush_child } - } - } - scope:crush_mother = { - death = { death_reason = death_vanished } - } - scope:crush_father = { - death = { death_reason = death_vanished } - } - scope:crush_child = { - death = { death_reason = death_vanished } - } - } - } -} - -################################################## -# Nurture -# by Ewan Cowhig Croft -# 1031 - 1040 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - # Gain a certain childhood personality trait. - scope:child = { - if = { - limit = { - number_of_personality_traits < 3 - NOR = { - has_trait = rowdy - has_trait = charming - has_trait = curious - has_trait = pensive - has_trait = bossy - } - } - add_trait = $CHILDHOOD_TRAIT$ - } - # Else, gain a certain trait. - else_if = { - limit = { - number_of_personality_traits < 3 - NOR = { - has_trait = $TRAIT_1$ - has_trait = $TRAIT_2$ - has_trait = $TRAIT_3$ - has_trait = $TRAIT_4$ - has_trait = $TRAIT_5$ - } - } - random_list = { - 100 = { - trigger = { - NOT = { has_trait = $TRAIT_1$ } - } - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.trait_adopted - left_icon = scope:child - scope:child = { add_trait = $TRAIT_1$ } - } - } - } - 100 = { - trigger = { - NOT = { has_trait = $TRAIT_2$ } - } - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.trait_adopted - left_icon = scope:child - scope:child = { add_trait = $TRAIT_2$ } - } - } - } - 100 = { - trigger = { - NOT = { has_trait = $TRAIT_3$ } - } - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.trait_adopted - left_icon = scope:child - scope:child = { add_trait = $TRAIT_3$ } - } - } - } - 100 = { - trigger = { - NOT = { has_trait = $TRAIT_4$ } - } - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.trait_adopted - left_icon = scope:child - scope:child = { add_trait = $TRAIT_4$ } - } - } - } - 100 = { - trigger = { - NOT = { has_trait = $TRAIT_5$ } - } - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.trait_adopted - left_icon = scope:child - scope:child = { add_trait = $TRAIT_5$ } - } - } - } - } - # Clean up our childhood traits if we've just capped out. - hidden_effect = { ep3_laamp_flavour_ewan_clean_up_excess_childhood_traits_effect = yes } - } - # Else, gain skill points. - else = { - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.tt.skill_gain - left_icon = scope:child - scope:child = { add_$SKILL$_skill = scope:fallback_skill_gain } - } - } - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_1031_roll_duel_effect = { - duel = { - skill = $EDUCATION$ - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1031.g.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.g.tt.success - left_icon = scope:child - scope:child = { add_$EDUCATION$_skill = 2 } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1031.g.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1031.g.tt.failure - left_icon = scope:child - scope:child = { add_$EDUCATION$_skill = -1 } - } - } - } -} - -# Taking after camp purpose. -ep3_laamp_flavour_ewan.1031 = { - type = character_event - title = ep3_laamp_flavour_ewan.1031.t - desc = { - desc = ep3_laamp_flavour_ewan.1031.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_realm_law = camp_purpose_wanderers } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.wanderers - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_mercenaries } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.mercenaries - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_scholars } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.scholars - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_explorers } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.explorers - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_brigands } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.brigands - } - triggered_desc = { - trigger = { has_realm_law = camp_purpose_legitimists } - desc = ep3_laamp_flavour_ewan.1031.desc.purpose.legitimists - } - } - desc = ep3_laamp_flavour_ewan.1031.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:child - triggered_animation = { - trigger = { - root = { - OR = { - has_realm_law = camp_purpose_mercenaries - has_realm_law = camp_purpose_brigands - } - } - } - animation = marshal_wooden_sword - } - animation = personality_bold - } - override_background = { reference = army_camp } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1031 } - } - # Must have a suitable child. - any_child = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1031 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1031 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - random_child = { - limit = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - weight = { - modifier = { - add = age - always = yes - } - modifier = { - add = 10 - has_trait = diligent - } - modifier = { - add = -10 - has_trait = lazy - } - } - save_scope_as = child - } - # Roll our fallback skill gain, so that it's set for the final tooltip. - save_scope_value_as = { - name = fallback_skill_gain - value = { - integer_range = { - min = 1 - max = 3 - } - } - } - } - - # Wanderers: Ahhh, the wanderlust has got 'er'im. - option = { - name = ep3_laamp_flavour_ewan.1031.a - trigger = { has_realm_law = camp_purpose_wanderers } - reason = purpose_wanderers - - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = curious - TRAIT_1 = diligent - TRAIT_2 = calm - TRAIT_3 = humble - TRAIT_4 = brave - TRAIT_5 = eccentric - SKILL = diplomacy - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Mercenaries: SheHe'll be a warrior some day. - option = { - name = ep3_laamp_flavour_ewan.1031.b - trigger = { has_realm_law = camp_purpose_mercenaries } - reason = purpose_mercenaries - - if = { - limit = { has_trait = education_martial } - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = rowdy - TRAIT_1 = brave - TRAIT_2 = wrathful - TRAIT_3 = content - TRAIT_4 = callous - TRAIT_5 = gregarious - SKILL = prowess - } - } - else = { - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = rowdy - TRAIT_1 = brave - TRAIT_2 = wrathful - TRAIT_3 = content - TRAIT_4 = callous - TRAIT_5 = gregarious - SKILL = martial - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Scholars: such enthusiasm in one so young! - option = { - name = ep3_laamp_flavour_ewan.1031.c - trigger = { has_realm_law = camp_purpose_scholars } - reason = purpose_scholars - - if = { - limit = { has_trait = education_learning } - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = pensive - TRAIT_1 = temperate - TRAIT_2 = patient - TRAIT_3 = calm - TRAIT_4 = shy - TRAIT_5 = stubborn - SKILL = diplomacy - } - } - else = { - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = pensive - TRAIT_1 = temperate - TRAIT_2 = patient - TRAIT_3 = calm - TRAIT_4 = shy - TRAIT_5 = stubborn - SKILL = learning - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Explorers: I wonder what sights SheHe'll see... - option = { - name = ep3_laamp_flavour_ewan.1031.d - trigger = { has_realm_law = camp_purpose_explorers } - reason = purpose_explorers - - if = { - limit = { has_trait = education_diplomacy } - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = charming - TRAIT_1 = gregarious - TRAIT_2 = brave - TRAIT_3 = ambitious - TRAIT_4 = fickle - TRAIT_5 = eccentric - SKILL = stewardship - } - } - else = { - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = charming - TRAIT_1 = gregarious - TRAIT_2 = brave - TRAIT_3 = ambitious - TRAIT_4 = fickle - TRAIT_5 = eccentric - SKILL = diplomacy - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Brigands: it'll serve HerHim well. - option = { - name = ep3_laamp_flavour_ewan.1031.e - trigger = { has_realm_law = camp_purpose_brigands } - reason = purpose_brigands - - if = { - limit = { has_trait = education_intrigue } - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = rowdy - TRAIT_1 = deceitful - TRAIT_2 = arbitrary - TRAIT_3 = callous - TRAIT_4 = sadistic - TRAIT_5 = paranoid - SKILL = prowess - } - } - else = { - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = rowdy - TRAIT_1 = deceitful - TRAIT_2 = arbitrary - TRAIT_3 = callous - TRAIT_4 = sadistic - TRAIT_5 = paranoid - SKILL = intrigue - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Legitimists: such ambition is only natural. - option = { - name = ep3_laamp_flavour_ewan.1031.f - trigger = { has_realm_law = camp_purpose_legitimists } - reason = purpose_legitimists - - if = { - limit = { has_trait = education_diplomacy } - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = bossy - TRAIT_1 = ambitious - TRAIT_2 = arrogant - TRAIT_3 = diligent - TRAIT_4 = patient - TRAIT_5 = vengeful - SKILL = prowess - } - } - else = { - ep3_laamp_flavour_ewan_1031_apply_changes_effect = { - CHILDHOOD_TRAIT = bossy - TRAIT_1 = ambitious - TRAIT_2 = arrogant - TRAIT_3 = diligent - TRAIT_4 = patient - TRAIT_5 = vengeful - SKILL = diplomacy - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Perhaps we could consider another path? - option = { - name = ep3_laamp_flavour_ewan.1031.g - trait = education_diplomacy_1 - trait = education_diplomacy_2 - trait = education_diplomacy_3 - trait = education_diplomacy_4 - trait = education_diplomacy_5 - trait = education_martial_1 - trait = education_martial_2 - trait = education_martial_3 - trait = education_martial_4 - trait = education_martial_5 - trait = education_stewardship_1 - trait = education_stewardship_2 - trait = education_stewardship_3 - trait = education_stewardship_4 - trait = education_stewardship_5 - trait = education_intrigue_1 - trait = education_intrigue_2 - trait = education_intrigue_3 - trait = education_intrigue_4 - trait = education_intrigue_5 - trait = education_learning_1 - trait = education_learning_2 - trait = education_learning_3 - trait = education_learning_4 - trait = education_learning_5 - - # Roll a different duel depending on our education. - switch = { - trigger = has_trait - education_diplomacy = { - ep3_laamp_flavour_ewan_1031_roll_duel_effect = { EDUCATION = diplomacy } - } - education_martial = { - ep3_laamp_flavour_ewan_1031_roll_duel_effect = { EDUCATION = martial } - } - education_stewardship = { - ep3_laamp_flavour_ewan_1031_roll_duel_effect = { EDUCATION = stewardship } - } - education_intrigue = { - ep3_laamp_flavour_ewan_1031_roll_duel_effect = { EDUCATION = intrigue } - } - education_learning = { - ep3_laamp_flavour_ewan_1031_roll_duel_effect = { EDUCATION = learning } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 2 } - } - } - - # *sigh* Stop that, GirlBoy. - option = { - name = ep3_laamp_flavour_ewan.1031.h - - scope:child = { add_stress = medium_stress_gain } - add_prestige = minor_prestige_gain - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -0.5 } - } - } -} - -################################################## -# The Old Country -# by Ewan Cowhig Croft -# 1041 - 1050 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1041_valid_memory_trigger = { - has_memory_type = became_landless_adventurer_memory - memory_age_years >= { - value = @ep3_laamp_flavour_ewan_1041_years_since_rule - add = $CHILD$.age - } -} - -# Child too young to remember asks what old home was like. -ep3_laamp_flavour_ewan.1041 = { - type = character_event - title = ep3_laamp_flavour_ewan.1041.t - desc = ep3_laamp_flavour_ewan.1041.desc - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:child - animation = admiration - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1041 } - } - # We must've actually ruled somewhere — if we're a player. The AI won't care for this verisimilitude. - trigger_if = { - limit = { is_ai = no } - any_claim = { - any_past_holder_reversed = { this = root } - } - } - # And have a suitable child available. - ## This _should_ go in order of available children by the trigger, so it _should_ be ordered by age already. - any_child = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - save_temporary_scope_as = child_temp - } - # Finally, check that enough time has passed that the child might not remember the Old Country. - any_memory = { - ep3_laamp_flavour_ewan_1041_valid_memory_trigger = { CHILD = scope:child_temp } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1041 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1041 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab our child. - ordered_child = { - limit = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - order_by = age - save_scope_as = child - } - # Grab our memory. - random_memory = { - limit = { - ep3_laamp_flavour_ewan_1041_valid_memory_trigger = { CHILD = scope:child } - } - save_scope_as = memory - } - } - - # It was beautiful, little one. - option = { - name = ep3_laamp_flavour_ewan.1041.a - - random_list = { - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1041.a.tt.diplomacy - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_beautiful_home_diplomacy_modifier - years = 10 - } - } - } - } - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1041.a.tt.stewardship - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_beautiful_home_stewardship_modifier - years = 10 - } - } - } - } - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1041.a.tt.learning - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_beautiful_home_learning_modifier - years = 10 - } - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 2 } - } - } - - # A horrid place that spurned us. - option = { - name = ep3_laamp_flavour_ewan.1041.b - - random_list = { - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1041.b.tt.martial - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_horrible_home_martial_modifier - years = 10 - } - } - } - } - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1041.b.tt.intrigue - left_icon = scope:child - scope:child = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_horrible_home_intrigue_modifier - years = 10 - } - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # legitimists: some day, you'll know it for yourself. - option = { - name = ep3_laamp_flavour_ewan.1041.c - trigger = { has_realm_law = camp_purpose_legitimists } - reason = purpose_legitimists - - scope:child = { - # Try to give them the ambitious trait. - if = { - limit = { - number_of_personality_traits <= 3 - NOT = { has_trait = ambitious } - } - add_trait = ambitious - hidden_effect = { ep3_laamp_flavour_ewan_clean_up_excess_childhood_traits_effect = yes } - } - # Else, give them a nice modifier. - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1041_rightful_home_modifier - years = 10 - } - } - add_opinion = { - target = root - modifier = stories_of_righteous_return_opinion - opinion = 30 - } - } - - stress_impact = { - base = minor_stress_loss - ambitious = medium_stress_impact_loss - arrogant = minor_stress_impact_loss - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # not legitimists: maybe we'll return some day. Ask me then. - option = { - name = ep3_laamp_flavour_ewan.1041.d - trigger = { - NOT = { has_realm_law = camp_purpose_legitimists } - } - - reverse_add_opinion = { - target = scope:child - modifier = stories_of_righteous_return_opinion - opinion = 30 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # I won't speak of it. - option = { - name = ep3_laamp_flavour_ewan.1041.e - - reverse_add_opinion = { - target = scope:child - modifier = disappointed_opinion - opinion = -10 - } - - # Most of the effect here is in the stress loss. - stress_impact = { - base = medium_stress_loss - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -2 } - } - } -} - -################################################## -# It Isn't Fair -# by Ewan Cowhig Croft -# 1051 - 1060 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1051_valid_memory_trigger = { - has_memory_type = became_landless_adventurer_memory - memory_age_years >= 5 -} - -scripted_trigger ep3_laamp_flavour_ewan_1051_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - NOR = { - has_trait = humble - has_trait = content - } -} - -scripted_effect ep3_laamp_flavour_ewan_1051_roll_duel_effect = { - save_scope_value_as = { - name = duel_diff - value = { - value = scope:child.$SKILL$ - add = 7 - max = very_high_skill_rating - } - } - duel = { - skill = $SKILL$ - value = scope:duel_diff - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1051.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1051.tt.success - left_icon = scope:child - scope:child = { - add_$SKILL$_lifestyle_perk_points = 1 - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - add_stress = major_stress_loss - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1051.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1051.tt.failure - left_icon = scope:child - reverse_add_opinion = { - target = scope:child - modifier = hate_opinion - opinion = -30 - } - random = { - chance = 35 - add_trait = depressed_1 - } - } - } - } -} - -# Child unhappy with life on the road. -ep3_laamp_flavour_ewan.1051 = { - type = character_event - title = ep3_laamp_flavour_ewan.1051.t - desc = ep3_laamp_flavour_ewan.1051.desc - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:child - animation = rage - } - override_background = { reference = corridor_night } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1051 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Valid child. - any_child = { ep3_laamp_flavour_ewan_1051_valid_child_trigger = yes } - # Valid memory. - any_memory = { ep3_laamp_flavour_ewan_1051_valid_memory_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1051 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1051 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab our best child. - random_child = { - limit = { ep3_laamp_flavour_ewan_1051_valid_child_trigger = yes } - weight = { - modifier = { - add = 10 - has_trait = arrogant - } - modifier = { - add = 10 - has_trait = ambitious - } - modifier = { - add = 10 - has_trait = lazy - } - modifier = { - add = 10 - has_trait = impatient - } - modifier = { - add = 10 - has_trait = wrathful - } - modifier = { - add = -10 - has_trait = diligent - } - modifier = { - add = -10 - has_trait = patient - } - modifier = { - add = -10 - has_trait = calm - } - } - save_scope_as = child - add_stress = major_stress_gain - } - # And our memory. - random_memory = { - limit = { ep3_laamp_flavour_ewan_1051_valid_memory_trigger = yes } - save_scope_as = memory - } - } - - # Come here, my GirlBoy. - option = { - name = ep3_laamp_flavour_ewan.1051.a - - ep3_laamp_flavour_ewan_1051_roll_duel_effect = { SKILL = diplomacy } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 2 } - } - } - - # Fair? You're a House.GetName! Stand up straight! - option = { - name = ep3_laamp_flavour_ewan.1051.b - - ep3_laamp_flavour_ewan_1051_roll_duel_effect = { SKILL = martial } - - stress_impact = { - arrogant = minor_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 1 - } - } - } - - # I know, but it is what it is. - option = { - name = ep3_laamp_flavour_ewan.1051.c - - ep3_laamp_flavour_ewan_1051_roll_duel_effect = { SKILL = learning } - - stress_impact = { - content = minor_stress_impact_loss - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } - - # Leave HerHim to tantrum. - option = { - name = ep3_laamp_flavour_ewan.1051.d - - random_list = { - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1051.d.tt.annoyance_fades - left_icon = scope:child - scope:child = { add_stress = major_stress_loss } - } - } - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1051.d.tt.grudge_held - left_icon = scope:child - reverse_add_opinion = { - target = scope:child - modifier = grudge_opinion - opinion = -35 - } - random = { - chance = 50 - add_trait = depressed_1 - } - } - } - } - - stress_impact = { - callous = minor_stress_impact_loss - lazy = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - opinion_modifier = { - opinion_target = scope:child - multiplier = -1 - } - } - } -} - -################################################## -# Quick Study -# by Ewan Cowhig Croft -# 1061 - 1070 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1061_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - NOT = { knows_language_of_culture = root.location.culture } - current_extra_languages < language_soft_cap -} - -# Child picks up local language quickly. -ep3_laamp_flavour_ewan.1061 = { - type = character_event - title = ep3_laamp_flavour_ewan.1061.t - desc = ep3_laamp_flavour_ewan.1061.desc - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:child - animation = personality_bold - } - override_background = { reference = ep3_campfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1061 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Must have a suitable child. - any_child = { ep3_laamp_flavour_ewan_1061_valid_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1061 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1061 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Grab a suitable child. - random_child = { - limit = { ep3_laamp_flavour_ewan_1061_valid_child_trigger = yes } - weight = { - modifier = { - add = learning - always = yes - } - } - save_scope_as = child - } - # Teach them the language. - scope:child = { learn_language_of_culture = root.location.culture } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Hmm, smart GirlBoy. - option = { - name = ep3_laamp_flavour_ewan.1061.a - - add_prestige = minor_prestige_gain - scope:child = { add_prestige = medium_prestige_gain } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } - - # Maybe they could teach me... - option = { - name = ep3_laamp_flavour_ewan.1061.b - trigger = { - NOT = { knows_language_of_culture = root.location.culture } - current_extra_languages < language_soft_cap - } - - duel = { - skill = learning - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1061.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1061.b.tt.success - left_icon = scope:child - learn_language_of_culture = root.location.culture - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1061.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1061.b.tt.failure - left_icon = scope:child - add_stress = medium_stress_gain - } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # Get that foreign muck out of your mouth! - option = { - name = ep3_laamp_flavour_ewan.1061.c - trigger = { - NOT = { - root.culture = { has_same_culture_language = root.location.culture } - } - } - - scope:child = { - unlearn_language_of_culture = root.location.culture - add_opinion = { - target = root - modifier = kindness_opinion - opinion = -10 - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 1 - modifier = { - add = { - value = "culture.cultural_acceptance(root.location.culture)" - multiply = -2 - } - always = yes - } - } - } -} - -################################################## -# At the Edge of Camp -# by Ewan Cowhig Croft -# 1071 - 1080 -################################################## - -# Children playing in local terrain. -ep3_laamp_flavour_ewan.1071 = { - type = character_event - title = ep3_laamp_flavour_ewan.1071.t - desc = { - desc = ep3_laamp_flavour_ewan.1071.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:terrain_type = flag:plains } - desc = ep3_laamp_flavour_ewan.1071.desc.plains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:farmlands } - desc = ep3_laamp_flavour_ewan.1071.desc.farmlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:hills } - desc = ep3_laamp_flavour_ewan.1071.desc.hills - } - triggered_desc = { - trigger = { scope:terrain_type = flag:mountains } - desc = ep3_laamp_flavour_ewan.1071.desc.mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert } - desc = ep3_laamp_flavour_ewan.1071.desc.desert - } - triggered_desc = { - trigger = { scope:terrain_type = flag:desert_mountains } - desc = ep3_laamp_flavour_ewan.1071.desc.desert_mountains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:oasis } - desc = ep3_laamp_flavour_ewan.1071.desc.oasis - } - triggered_desc = { - trigger = { scope:terrain_type = flag:jungle } - desc = ep3_laamp_flavour_ewan.1071.desc.jungle - } - triggered_desc = { - trigger = { scope:terrain_type = flag:forest } - desc = ep3_laamp_flavour_ewan.1071.desc.forest - } - triggered_desc = { - trigger = { scope:terrain_type = flag:taiga } - desc = ep3_laamp_flavour_ewan.1071.desc.taiga - } - triggered_desc = { - trigger = { scope:terrain_type = flag:wetlands } - desc = ep3_laamp_flavour_ewan.1071.desc.wetlands - } - triggered_desc = { - trigger = { scope:terrain_type = flag:steppe } - desc = ep3_laamp_flavour_ewan.1071.desc.steppe - } - triggered_desc = { - trigger = { scope:terrain_type = flag:floodplains } - desc = ep3_laamp_flavour_ewan.1071.desc.floodplains - } - triggered_desc = { - trigger = { scope:terrain_type = flag:drylands } - desc = ep3_laamp_flavour_ewan.1071.desc.drylands - } - } - desc = ep3_laamp_flavour_ewan.1071.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = dismissal - } - right_portrait = { - character = scope:own_child - animation = happiness - } - lower_left_portrait = scope:extra_child_3 - lower_center_portrait = scope:extra_child_2 - lower_right_portrait = scope:extra_child_1 - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1071 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Don't let the children out to play during a plague. - location = { - any_province_epidemic = { count <= 0 } - } - # And have a suitable named child of our own. - any_child = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1071 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1071 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab our terrain. - ep3_laamp_flavour_ewan_register_terrain_effect = yes - # Sort our child scopes. - random_child = { - limit = { ep3_laamp_flavour_ewan_available_child_trigger = yes } - save_scope_as = own_child - add_to_list = playing_children_list - add_stress = major_stress_loss - } - ordered_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - this != scope:own_child - } - # Grab the children closest in age to our chosen child. - order_by = { - value = 100 - if = { - limit = { age > scope:own_child.age } - add = { - value = scope:own_child.age - subtract = age - } - } - else_if = { - limit = { age < scope:own_child.age } - add = { - value = scope:own_child.age - subtract = age - multiply = -1 - } - } - } - max = 3 - check_range_bounds = no - if = { - limit = { - NOT = { exists = scope:extra_child_1 } - } - save_scope_as = extra_child_1 - add_to_list = playing_children_list - add_stress = major_stress_loss - } - else_if = { - limit = { - NOT = { - this = scope:extra_child_1 - exists = scope:extra_child_2 - } - } - save_scope_as = extra_child_2 - add_to_list = playing_children_list - add_stress = major_stress_loss - } - else_if = { - limit = { - NOT = { - this = scope:extra_child_1 - this = scope:extra_child_2 - exists = scope:extra_child_3 - } - } - save_scope_as = extra_child_3 - add_to_list = playing_children_list - add_stress = major_stress_loss - } - # Set up future friendships. - hidden_effect = { - every_in_list = { - list = playing_children_list - save_scope_as = char_temp - every_in_list = { - list = playing_children_list - if = { - limit = { - this != scope:char_temp - can_set_relation_potential_friend_trigger = { CHARACTER = scope:char_temp } - } - set_relation_potential_friend = scope:char_temp - } - } - } - } - } - } - - # Stay within sight! - option = { - name = ep3_laamp_flavour_ewan.1071.a - - random_list = { - 100 = { - every_in_list = { - list = playing_children_list - custom = ep3_laamp_flavour_ewan.1071.tt.every_playing_child - add_diplomacy_lifestyle_perk_points = 1 - } - } - 100 = { - every_in_list = { - list = playing_children_list - custom = ep3_laamp_flavour_ewan.1071.tt.every_playing_child - add_stewardship_lifestyle_perk_points = 1 - } - } - 100 = { - every_in_list = { - list = playing_children_list - custom = ep3_laamp_flavour_ewan.1071.tt.every_playing_child - add_intrigue_lifestyle_perk_points = 1 - } - } - } - - stress_impact = { - paranoid = medium_stress_impact_loss - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Go on, explore. - option = { - name = ep3_laamp_flavour_ewan.1071.b - - random_list = { - 100 = { - every_in_list = { - list = playing_children_list - custom = ep3_laamp_flavour_ewan.1071.tt.every_playing_child - add_martial_lifestyle_perk_points = 1 - } - } - 100 = { - every_in_list = { - list = playing_children_list - custom = ep3_laamp_flavour_ewan.1071.tt.every_playing_child - add_learning_lifestyle_perk_points = 1 - } - } - } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Children, excited for the simplest things... - option = { - name = ep3_laamp_flavour_ewan.1071.c - - # Major effect is stress loss. - add_stress = major_stress_loss - - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -0.5 } - } - } -} - -################################################## -# Growing Up -# by Ewan Cowhig Croft -# 1081 - 1090 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1081_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - age <= 12 - NOT = { has_character_flag = demanded_own_tent } - OR = { - has_trait = bossy - has_trait = rowdy - has_trait = greedy - has_trait = diligent - has_trait = impatient - has_trait = arrogant - has_trait = shy - has_trait = ambitious - has_trait = paranoid - has_trait = stubborn - has_trait = eccentric - } -} - -scripted_effect ep3_laamp_flavour_ewan_1081_roll_duel_effect = { - scope:child = { - duel = { - skill = $EDUCATION$ - value = medium_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1081.b.tt.success - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1081.b.tt.success - left_icon = scope:child - scope:child = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 40 - } - add_prestige = medium_prestige_gain - } - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1081.b.tt.failure - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1081.b.tt.failure - left_icon = scope:child - scope:child = { - add_opinion = { - target = root - modifier = frustrated_opinion - opinion = -40 - } - add_stress = major_stress_gain - } - } - } - } - } - } -} - -# Child demands own tent. -ep3_laamp_flavour_ewan.1081 = { - type = character_event - title = ep3_laamp_flavour_ewan.1081.t - desc = ep3_laamp_flavour_ewan.1081.desc - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:child - animation = anger - } - override_background = { reference = corridor_night } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1081 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # And that we've got a suitable child. - any_child = { ep3_laamp_flavour_ewan_1081_valid_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1081 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1081 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab a suitable child. - ordered_child = { - limit = { ep3_laamp_flavour_ewan_1081_valid_child_trigger = yes } - order_by = age - save_scope_as = child - add_character_flag = { - flag = demanded_own_tent - # Let the flag clean itself up some time after we become an adult, as it'll no longer be relevant. - years = 16 - } - } - } - - # Hmm, okay. You're a WomanMan now. - option = { - name = ep3_laamp_flavour_ewan.1081.a - - add_prestige = minor_prestige_loss - scope:child = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 25 - } - add_prestige = minor_prestige_gain - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = -2 } - } - } - - # You want it? Earn it. - option = { - name = ep3_laamp_flavour_ewan.1081.b - flavor = ep3_laamp_flavour_ewan.1081.b.f - trait = education_diplomacy_1 - trait = education_diplomacy_2 - trait = education_diplomacy_3 - trait = education_diplomacy_4 - trait = education_diplomacy_5 - trait = education_martial_1 - trait = education_martial_2 - trait = education_martial_3 - trait = education_martial_4 - trait = education_martial_5 - trait = education_stewardship_1 - trait = education_stewardship_2 - trait = education_stewardship_3 - trait = education_stewardship_4 - trait = education_stewardship_5 - trait = education_intrigue_1 - trait = education_intrigue_2 - trait = education_intrigue_3 - trait = education_intrigue_4 - trait = education_intrigue_5 - trait = education_learning_1 - trait = education_learning_2 - trait = education_learning_3 - trait = education_learning_4 - trait = education_learning_5 - - # Roll a different duel depending on our education. - switch = { - trigger = has_trait - education_diplomacy = { - ep3_laamp_flavour_ewan_1081_roll_duel_effect = { EDUCATION = diplomacy } - } - education_martial = { - ep3_laamp_flavour_ewan_1081_roll_duel_effect = { EDUCATION = martial } - } - education_stewardship = { - ep3_laamp_flavour_ewan_1081_roll_duel_effect = { EDUCATION = stewardship } - } - education_intrigue = { - ep3_laamp_flavour_ewan_1081_roll_duel_effect = { EDUCATION = intrigue } - } - education_learning = { - ep3_laamp_flavour_ewan_1081_roll_duel_effect = { EDUCATION = learning } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Bah, you're a child till I say otherwise. - option = { - name = ep3_laamp_flavour_ewan.1081.c - - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:child - modifier = frustrated_opinion - opinion = -20 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -0.5 } - } - } -} - -################################################## -# Every Parent's Duty -# by Ewan Cowhig Croft -# 1091 - 1100 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1091_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - NOT = { has_character_flag = taught_to_ride } - # If you have Horse Lords, this _has_ to be taught much earlier. - trigger_if = { - limit = { - root = { - OR = { - culture = { culture_has_archer_cavalry_maa = yes } - mpo_can_recruit_nomad_maa_trigger = yes - } - } - } - age <= 8 - } -} - -scripted_effect ep3_laamp_flavour_ewan_1091_roll_duel_effect = { - duel = { - skill = $SKILL$ - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1091.tt.success - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1091.tt.success - left_icon = scope:child - scope:child = { - add_opinion = { - target = root - modifier = amazed_opinion - opinion = 40 - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1091_confidence_gained_modifier - years = 10 - } - } - } - } - } - # Defeat! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.1091.tt.failure - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1091.tt.failure - left_icon = scope:child - scope:child = { - increase_wounds_no_death_effect = { REASON = horse_riding_accident } - add_opinion = { - target = root - modifier = let_me_down_opinion - opinion = -20 - } - } - } - } - } - } -} - -# Teaching a youngling how to ride. -ep3_laamp_flavour_ewan.1091 = { - type = character_event - title = ep3_laamp_flavour_ewan.1091.t - desc = ep3_laamp_flavour_ewan.1091.desc - theme = laamp - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:child - animation = worry - } - override_background = { reference = army_camp } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1091 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # And have a suitable child - any_child = { ep3_laamp_flavour_ewan_1091_valid_child_trigger = yes } - } - - weight_multiplier = { - # Weight up for Horse Lords, for whom this is especially vital (yes, over and above western knights). - modifier = { - add = 2 - culture = { culture_has_archer_cavalry_maa = yes } - } - - modifier = { - add = 2 - has_trait = nomadic_philosophy - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1091 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1091 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Grab a suitable child. - ordered_child = { - limit = { ep3_laamp_flavour_ewan_1091_valid_child_trigger = yes } - order_by = age - save_scope_as = child - add_character_flag = { - flag = taught_to_ride - # Let the flag clean itself up some time after we become an adult, as it'll no longer be relevant. - years = 16 - } - } - } - - # Diplo duel: remember, be firm, but respectful. - option = { - name = ep3_laamp_flavour_ewan.1091.a - - ep3_laamp_flavour_ewan_1091_roll_duel_effect = { SKILL = diplomacy } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Martial duel: don't be afraid to crack the whip! - option = { - name = ep3_laamp_flavour_ewan.1091.b - - ep3_laamp_flavour_ewan_1091_roll_duel_effect = { SKILL = martial } - - stress_impact = { - wrathful = miniscule_stress_impact_loss - impatient = miniscule_stress_impact_loss - callous = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - patient = minor_stress_impact_gain - calm = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Prowess duel: master the horse or it'll toss you. - option = { - name = ep3_laamp_flavour_ewan.1091.c - - ep3_laamp_flavour_ewan_1091_roll_duel_effect = { SKILL = prowess } - - stress_impact = { - calm = miniscule_stress_impact_loss - patient = miniscule_stress_impact_loss - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_vengefulness = 1 } - } - } - - # Say nothing. - option = { - name = ep3_laamp_flavour_ewan.1091.d - - random_list = { - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1091.d.tt.success - left_icon = scope:child - scope:child = { - add_opinion = { - target = root - modifier = amazed_opinion - opinion = 20 - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_1091_confidence_gained_modifier - years = 10 - } - } - } - } - 100 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.1091.d.tt.failure - left_icon = scope:child - scope:child = { - increase_wounds_no_death_effect = { REASON = horse_riding_accident } - add_opinion = { - target = root - modifier = let_me_down_opinion - opinion = -10 - } - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -0.5 } - } - } -} - -################################################## -# Helping Out -# by Ewan Cowhig Croft -# 1101 - 1110 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1101_valid_starting_child_trigger = { - child_is_infant_trigger = yes - is_courtier_of = root - location = root.location - is_available_allow_travelling = yes -} - -scripted_effect ep3_laamp_flavour_ewan_1101_increment_affection_effect = { - reverse_add_opinion = { - target = scope:child - modifier = love_opinion - opinion = 20 - } - hidden_effect = { - add_opinion = { - target = scope:child - modifier = love_opinion - opinion = 20 - } - } -} - -# Child helps with packing. -ep3_laamp_flavour_ewan.1101 = { - type = character_event - title = ep3_laamp_flavour_ewan.1101.t - desc = ep3_laamp_flavour_ewan.1101.desc - theme = laamp - left_portrait = { - character = root - animation = boredom - } - right_portrait = { - character = scope:child - animation = admiration - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1101 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1101 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longest - } - } - # Nab a suitable child. - random_child = { - limit = { ep3_laamp_flavour_ewan_1101_valid_starting_child_trigger = yes } - save_scope_as = child - } - } - - # What're you doing there, little LassLad? - option = { - name = ep3_laamp_flavour_ewan.1101.a - - ep3_laamp_flavour_ewan_1101_increment_affection_effect = yes - # Set us up for our future events. - set_variable = { - name = packing_assistant - value = scope:child - } - # Account for how many times we've helped. - increment_variable_effect = { - VAR = helped_packing - VAL = 1 - } - - stress_impact = { - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Shoo, you menace! - option = { - name = ep3_laamp_flavour_ewan.1101.b - - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:child - modifier = hurt_opinion - opinion = -10 - } - - stress_impact = { - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } -} - -# Pre-filter event, so that we can keep the spamminess down. -ep3_laamp_flavour_ewan.1102 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Only valid for Laamps - has_government = landless_adventurer_government - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1101 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Plus that we haven't started this chain once already. - NOT = { has_variable = packing_assistant } - # And that we have a suitable child. - any_child = { ep3_laamp_flavour_ewan_1101_valid_starting_child_trigger = yes } - } - - immediate = { - # We keep this _quite_ low, as it's otherwise able to trigger any time you start a travel. - random = { - chance = 1 - random = { - chance = 75 - trigger_event = ep3_laamp_flavour_ewan.1101 - } - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1103_child_younger_trigger = { - age <= @ep3_laamp_flavour_ewan_1103_age_threshold_young - root = { - NOT = { has_character_flag = had_packing_assistant_chain_stage_younger } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1103_child_older_trigger = { - age > @ep3_laamp_flavour_ewan_1103_age_threshold_young - age <= @ep3_laamp_flavour_ewan_1103_age_threshold_older - root = { - NOT = { has_character_flag = had_packing_assistant_chain_stage_older } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1103_child_teen_trigger = { - age > @ep3_laamp_flavour_ewan_1103_age_threshold_older - is_adult = no - root = { - NOT = { has_character_flag = had_packing_assistant_chain_stage_teen } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1103_child_adult_trigger = { - is_adult = yes - root = { - NOT = { has_character_flag = had_packing_assistant_chain_stage_adult } - # And they have to done it several times. - var:helped_packing >= 3 - } -} - -scripted_trigger ep3_laamp_flavour_ewan_1103_proceed_to_failure_event_trigger = { - OR = { - is_alive = no - has_relation_rival = root - opinion = { - target = root - value <= -75 - } - } -} - -# Child helps with packing. -ep3_laamp_flavour_ewan.1103 = { - type = character_event - title = ep3_laamp_flavour_ewan.1103.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - var:packing_assistant = { - ep3_laamp_flavour_ewan_1103_child_younger_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.1103.desc.child_younger - } - triggered_desc = { - trigger = { - var:packing_assistant = { - ep3_laamp_flavour_ewan_1103_child_older_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.1103.desc.child_older - } - triggered_desc = { - trigger = { - var:packing_assistant = { - ep3_laamp_flavour_ewan_1103_child_teen_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.1103.desc.child_teen - } - triggered_desc = { - trigger = { - var:packing_assistant = { - ep3_laamp_flavour_ewan_1103_child_adult_trigger = yes - } - } - desc = ep3_laamp_flavour_ewan.1103.desc.child_adult - } - } - } - theme = laamp - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:child - animation = admiration - } - - trigger = { - has_variable = packing_assistant - NOR = { - has_character_flag = aborted_packing_chain - has_variable = had_ep3_laamp_flavour_ewan_1104 - } - is_available_allow_travelling = yes - var:packing_assistant = { - is_courtier_of = root - location = root.location - is_available_allow_travelling = yes - OR = { - ep3_laamp_flavour_ewan_1103_child_younger_trigger = yes - ep3_laamp_flavour_ewan_1103_child_older_trigger = yes - ep3_laamp_flavour_ewan_1103_child_teen_trigger = yes - ep3_laamp_flavour_ewan_1103_child_adult_trigger = yes - } - ep3_laamp_flavour_ewan_1103_proceed_to_failure_event_trigger = no - } - } - - on_trigger_fail = { trigger_event = ep3_laamp_flavour_ewan.1104 } - - immediate = { - # Nab our assistant for ease of reference. - var:packing_assistant = { save_scope_as = child } - } - - # Very young child helps a little. - option = { - name = ep3_laamp_flavour_ewan.1103.a - trigger = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_younger_trigger = yes } - } - - ep3_laamp_flavour_ewan_1101_increment_affection_effect = yes - # Account for how many times we've helped. - increment_variable_effect = { - VAR = helped_packing - VAL = 1 - } - - add_stress = miniscule_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 3 } - } - } - - # Older child is quite helpful. - option = { - name = ep3_laamp_flavour_ewan.1103.b - trigger = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_older_trigger = yes } - } - - ep3_laamp_flavour_ewan_1101_increment_affection_effect = yes - # Account for how many times we've helped. - increment_variable_effect = { - VAR = helped_packing - VAL = 1 - } - - add_stress = minor_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 3 } - } - } - - # Teen is very helpful. - option = { - name = ep3_laamp_flavour_ewan.1103.c - trigger = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_teen_trigger = yes } - } - - ep3_laamp_flavour_ewan_1101_increment_affection_effect = yes - # Account for how many times we've helped. - increment_variable_effect = { - VAR = helped_packing - VAL = 1 - } - - add_stress = medium_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 3 } - } - } - - # Adult might become your best friend over this simple activity. - option = { - name = ep3_laamp_flavour_ewan.1103.d - trigger = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_adult_trigger = yes } - } - - # Best friends, if possible. - if = { - limit = { - can_set_relation_best_friend_trigger = { CHARACTER = scope:child } - } - set_relation_best_friend = { - reason = best_friend_childhood_ritual - target = scope:child - } - } - # Loyalty hook, if possible. - if = { - limit = { - can_add_hook = { - target = scope:child - type = loyalty_hook - } - } - add_hook = { - target = scope:child - type = loyalty_hook - } - } - # Oodles of opinion. - reverse_add_opinion = { - target = scope:child - modifier = love_opinion - opinion = 50 - } - - add_stress = major_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 3 } - } - } - - # I can do it myself, scope:child. - option = { - name = ep3_laamp_flavour_ewan.1103.e - - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:child - modifier = hurt_opinion - opinion = { - value = -10 - multiply = var:helped_packing - } - } - add_character_flag = aborted_packing_chain - - stress_impact = { - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - after = { - if = { - limit = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_younger_trigger = yes } - } - add_character_flag = had_packing_assistant_chain_stage_younger - } - if = { - limit = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_older_trigger = yes } - } - add_character_flag = had_packing_assistant_chain_stage_older - } - if = { - limit = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_teen_trigger = yes } - } - add_character_flag = had_packing_assistant_chain_stage_teen - } - if = { - limit = { - scope:child = { ep3_laamp_flavour_ewan_1103_child_adult_trigger = yes } - } - add_character_flag = had_packing_assistant_chain_stage_adult - } - } -} - -# Child will no longer help with packing — for one reason or another. -ep3_laamp_flavour_ewan.1104 = { - type = character_event - title = ep3_laamp_flavour_ewan.1104.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:child = { is_alive = no } - } - desc = ep3_laamp_flavour_ewan.1104.desc.child_dead - } - desc = ep3_laamp_flavour_ewan.1104.desc.child_rival - } - } - theme = laamp - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:child - triggered_animation = { - animation = map_fear - trigger = { - scope:child = { is_alive = no } - } - } - triggered_animation = { - animation = dismissal - trigger = { - scope:child = { is_alive = yes } - } - } - } - - trigger = { - has_variable = packing_assistant - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1104 } - # Must've had at least one instance of the follow-up event, so that there's a pattern. - var:helped_packing >= 2 - # Aaaand make sure we should actually be firing _this_ event. - var:packing_assistant = { ep3_laamp_flavour_ewan_1103_proceed_to_failure_event_trigger = yes } - } - - immediate = { - # Limit this event to firing once. - set_variable = { - name = had_ep3_laamp_flavour_ewan_1104 - value = yes - } - # Nab our (former) assistant for ease of reference. - var:packing_assistant = { save_scope_as = child } - } - - # Dead: you killed them. - option = { - name = ep3_laamp_flavour_ewan.1104.a - trigger = { scope:child.killer ?= root } - - # Most of the effect is in the stress impact. - stress_impact = { - base = major_stress_gain - compassionate = minor_stress_impact_gain - # We don't account for callous here, because they get a special option. - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Dead: you do know who killed them and it wasn't you. - option = { - name = ep3_laamp_flavour_ewan.1104.b - trigger = { - scope:child = { - killer ?= { - is_alive = yes - this != root - } - } - } - - progress_towards_rival_effect = { - REASON = rival_killed_heir - CHARACTER = scope:child.killer - OPINION = default_rival_opinion - } - - stress_impact = { - vengeful = major_stress_impact_loss - forgiving = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Callous: _eh_. - option = { - name = ep3_laamp_flavour_ewan.1104.c - trigger = { has_trait = callous } - trait = callous - - # Entire effect is in the stress impact. - stress_impact = { callous = massive_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - } - } - - # Try to move on. - option = { - name = ep3_laamp_flavour_ewan.1104.d - trigger = { - NOT = { exists = scope:child.killer } - } - - # Most of the effect is in the stress impact. - stress_impact = { - base = major_stress_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } -} - -################################################## -# A Nose for Trouble -# by Ewan Cowhig Croft -# 1111 - 1120 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_1111_valid_child_trigger = { - ep3_laamp_flavour_ewan_available_child_trigger = yes - ep3_laamp_flavour_ewan_no_dog_trigger = yes -} - -# Child adopts puppy. -ep3_laamp_flavour_ewan.1111 = { - type = character_event - title = ep3_laamp_flavour_ewan.1111.t - desc = { - desc = ep3_laamp_flavour_ewan.1111.desc.intro - first_valid = { - triggered_desc = { - trigger = { - domicile = { has_domicile_building = baggage_train_kennel } - } - desc = ep3_laamp_flavour_ewan.1111.desc.has_kennels - } - desc = ep3_laamp_flavour_ewan.1111.desc.no_kennels - } - desc = ep3_laamp_flavour_ewan.1111.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = laugh - } - right_portrait = { - character = scope:child - animation = happiness - } - override_background = { reference = corridor_day } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_1111 } - } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # And have a suitable child. - any_child = { ep3_laamp_flavour_ewan_1111_valid_child_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_1111 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_1111 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - random_child = { - limit = { ep3_laamp_flavour_ewan_1111_valid_child_trigger = yes } - save_scope_as = child - } - } - - # A GirlBoy and HerHis dog. - option = { - name = ep3_laamp_flavour_ewan.1111.a - - scope:child = { - start_dog_story_cycle_effect = yes - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - add_stress = massive_stress_loss - } - - # Everyone loves pets! - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Sadistic: drown the dog. - option = { - name = ep3_laamp_flavour_ewan.1111.b - trigger = { has_trait = sadistic } - trait = sadistic - - scope:child = { - set_relation_rival = { - reason = rival_drowned_dog - target = root - } - } - - # Mostly stress loss for the positives here. - stress_impact = { sadistic = 200 } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -3 } - } - } - - # Low on provisions: My, what a fat hound. Good find, LassLad! - option = { - name = ep3_laamp_flavour_ewan.1111.c - trigger = { domicile.provisions <= provisions_privation_threshold_start } - - domicile = { change_provisions = microscopic_provisions_gain } - scope:child = { - progress_towards_rival_effect = { - REASON = rival_ate_dog - CHARACTER = root - OPINION = default_rival_opinion - } - } - - stress_impact = { - callous = miniscule_stress_impact_loss - gluttonous = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # Scope:child! Stop playing with that filthy mutt! - option = { - name = ep3_laamp_flavour_ewan.1111.d - - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:child - modifier = hurt_opinion - opinion = -25 - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - opinion_modifier = { - opinion_target = scope:child - multiplier = -1 - } - } - } -} - - - - - - - - - - - -################################################## -# PERSONAL TENSIONS - -################################################## -# Plenty in Common -# by Ewan Cowhig Croft -# # 2001 - 2010 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2001_courtier_1_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_2001_courtier_2_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { this = $TARGET$ } - OR = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - AND = { - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - opinion = { - target = $TARGET$ - value >= 1 - } - } - } - number_of_opposing_personality_traits = { - target = $TARGET$ - value <= 0 - } - opinion = { - target = $TARGET$ - value >= -40 - } - NOR = { - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - } - can_set_relation_friend_trigger = { CHARACTER = $TARGET$ } -} - -scripted_effect ep3_laamp_flavour_ewan_2001_make_friends_or_best_friends_effect = { - scope:follower_1 = { - # If the stars align, become best friends. - if = { - limit = { - can_set_relation_best_friend_trigger = { CHARACTER = scope:follower_2 } - opinion = { - target = scope:follower_2 - value >= 100 - } - reverse_opinion = { - target = scope:follower_2 - value >= 100 - } - } - set_relation_best_friend = { - reason = friend_mutual_traits - target = scope:follower_2 - } - } - # Otherwise, regular friends will do. - else = { - set_relation_friend = { - reason = friend_mutual_traits - target = scope:follower_2 - } - } - } -} - -# Friendship blooms over shared traits. -ep3_laamp_flavour_ewan.2001 = { - type = character_event - title = ep3_laamp_flavour_ewan.2001.t - desc = { - desc = ep3_laamp_flavour_ewan.2001.desc.intro - random_valid = { - # Lustful - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = lustful } - scope:follower_2 = { has_trait = lustful } - } - desc = ep3_laamp_flavour_ewan.2001.desc.lustful - } - # Chaste - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = chaste } - scope:follower_2 = { has_trait = chaste } - } - desc = ep3_laamp_flavour_ewan.2001.desc.chaste - } - # Gluttonous - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = gluttonous } - scope:follower_2 = { has_trait = gluttonous } - } - desc = ep3_laamp_flavour_ewan.2001.desc.gluttonous - } - # Temperate - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = temperate } - scope:follower_2 = { has_trait = temperate } - } - desc = ep3_laamp_flavour_ewan.2001.desc.temperate - } - # Greedy - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = greedy } - scope:follower_2 = { has_trait = greedy } - } - desc = ep3_laamp_flavour_ewan.2001.desc.greedy - } - # Generous - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = generous } - scope:follower_2 = { has_trait = generous } - } - desc = ep3_laamp_flavour_ewan.2001.desc.generous - } - # Lazy - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = lazy } - scope:follower_2 = { has_trait = lazy } - } - desc = ep3_laamp_flavour_ewan.2001.desc.lazy - } - # Diligent - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = diligent } - scope:follower_2 = { has_trait = diligent } - } - desc = ep3_laamp_flavour_ewan.2001.desc.diligent - } - # Wrathful - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = wrathful } - scope:follower_2 = { has_trait = wrathful } - } - desc = ep3_laamp_flavour_ewan.2001.desc.wrathful - } - # Calm - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = calm } - scope:follower_2 = { has_trait = calm } - } - desc = ep3_laamp_flavour_ewan.2001.desc.calm - } - # Patient - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = patient } - scope:follower_2 = { has_trait = patient } - } - desc = ep3_laamp_flavour_ewan.2001.desc.patient - } - # Impatient - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = impatient } - scope:follower_2 = { has_trait = impatient } - } - desc = ep3_laamp_flavour_ewan.2001.desc.impatient - } - # Arrogant - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = arrogant } - scope:follower_2 = { has_trait = arrogant } - } - desc = ep3_laamp_flavour_ewan.2001.desc.arrogant - } - # Humble - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = humble } - scope:follower_2 = { has_trait = humble } - } - desc = ep3_laamp_flavour_ewan.2001.desc.humble - } - # Deceitful - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = deceitful } - scope:follower_2 = { has_trait = deceitful } - } - desc = ep3_laamp_flavour_ewan.2001.desc.deceitful - } - # Honest - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = honest } - scope:follower_2 = { has_trait = honest } - } - desc = ep3_laamp_flavour_ewan.2001.desc.honest - } - # Craven - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = craven } - scope:follower_2 = { has_trait = craven } - } - desc = ep3_laamp_flavour_ewan.2001.desc.craven - } - # Brave - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = brave } - scope:follower_2 = { has_trait = brave } - } - desc = ep3_laamp_flavour_ewan.2001.desc.brave - } - # Shy - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = shy } - scope:follower_2 = { has_trait = shy } - } - desc = ep3_laamp_flavour_ewan.2001.desc.shy - } - # Gregarious - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = gregarious } - scope:follower_2 = { has_trait = gregarious } - } - desc = ep3_laamp_flavour_ewan.2001.desc.gregarious - } - # Ambitious - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = ambitious } - scope:follower_2 = { has_trait = ambitious } - } - desc = ep3_laamp_flavour_ewan.2001.desc.ambitious - } - # Content - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = content } - scope:follower_2 = { has_trait = content } - } - desc = ep3_laamp_flavour_ewan.2001.desc.content - } - # Arbitrary - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = arbitrary } - scope:follower_2 = { has_trait = arbitrary } - } - desc = ep3_laamp_flavour_ewan.2001.desc.arbitrary - } - # Just - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = just } - scope:follower_2 = { has_trait = just } - } - desc = ep3_laamp_flavour_ewan.2001.desc.just - } - # Cynical - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = cynical } - scope:follower_2 = { has_trait = cynical } - } - desc = ep3_laamp_flavour_ewan.2001.desc.cynical - } - # Zealous - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = zealous } - scope:follower_2 = { has_trait = zealous } - # Just for ease of loc. - scope:follower_1.faith = scope:follower_2.faith - } - desc = ep3_laamp_flavour_ewan.2001.desc.zealous - } - # Paranoid - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = paranoid } - scope:follower_2 = { has_trait = paranoid } - } - desc = ep3_laamp_flavour_ewan.2001.desc.paranoid - } - # Trusting - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = trusting } - scope:follower_2 = { has_trait = trusting } - } - desc = ep3_laamp_flavour_ewan.2001.desc.trusting - } - # Compassionate - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = compassionate } - scope:follower_2 = { has_trait = compassionate } - } - desc = ep3_laamp_flavour_ewan.2001.desc.compassionate - } - # Callous - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = callous } - scope:follower_2 = { has_trait = callous } - } - desc = ep3_laamp_flavour_ewan.2001.desc.callous - } - # Sadistic - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = sadistic } - scope:follower_2 = { has_trait = sadistic } - } - desc = ep3_laamp_flavour_ewan.2001.desc.sadistic - } - # Stubborn - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = stubborn } - scope:follower_2 = { has_trait = stubborn } - } - desc = ep3_laamp_flavour_ewan.2001.desc.stubborn - } - # Fickle - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = fickle } - scope:follower_2 = { has_trait = fickle } - } - desc = ep3_laamp_flavour_ewan.2001.desc.fickle - } - # Vengeful - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = vengeful } - scope:follower_2 = { has_trait = vengeful } - } - desc = ep3_laamp_flavour_ewan.2001.desc.vengeful - } - # Forgiving - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = forgiving } - scope:follower_2 = { has_trait = forgiving } - } - desc = ep3_laamp_flavour_ewan.2001.desc.forgiving - } - # Eccentric - triggered_desc = { - trigger = { - scope:follower_1 = { has_trait = eccentric } - scope:follower_2 = { has_trait = eccentric } - } - desc = ep3_laamp_flavour_ewan.2001.desc.eccentric - } - } - desc = ep3_laamp_flavour_ewan.2001.desc.outro - } - theme = laamp - left_portrait = { - character = scope:follower_1 - animation = admiration - } - right_portrait = { - character = scope:follower_2 - animation = happiness - } - override_background = { reference = ep3_campfire } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2001 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2001 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Now, let's make them like each other a bit more. - scope:follower_1 = { - add_opinion = { - target = scope:follower_2 - modifier = friendliness_opinion - opinion = 80 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = friendliness_opinion - opinion = 80 - } - } - } - - # Encourage the friendship. - option = { - name = ep3_laamp_flavour_ewan.2001.a - - ep3_laamp_flavour_ewan_2001_make_friends_or_best_friends_effect = yes - duel = { - skill = diplomacy - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2001.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2001.a.tt.success - left_icon = scope:follower_1 - right_icon = scope:follower_2 - reverse_add_opinion = { - target = scope:follower_1 - modifier = respect_opinion - opinion = 40 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = respect_opinion - opinion = 40 - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2001.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2001.a.tt.failure - left_icon = scope:follower_1 - right_icon = scope:follower_2 - reverse_add_opinion = { - target = scope:follower_1 - modifier = annoyed_opinion - opinion = -20 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = annoyed_opinion - opinion = -20 - } - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Try to break up that friendship. - option = { - name = ep3_laamp_flavour_ewan.2001.b - - duel = { - skill = diplomacy - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2001.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2001.b.tt.success - left_icon = scope:follower_1 - right_icon = scope:follower_2 - reverse_add_opinion = { - target = scope:follower_1 - modifier = respect_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = respect_opinion - opinion = 20 - } - } - scope:follower_1 = { - remove_opinion = { - target = scope:follower_2 - modifier = friendliness_opinion - } - } - scope:follower_2 = { - remove_opinion = { - target = scope:follower_1 - modifier = friendliness_opinion - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2001.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2001.b.tt.failure - left_icon = scope:follower_1 - right_icon = scope:follower_2 - ep3_laamp_flavour_ewan_2001_make_friends_or_best_friends_effect = yes - reverse_add_opinion = { - target = scope:follower_1 - modifier = annoyed_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = annoyed_opinion - opinion = -30 - } - } - } - } - - stress_impact = { - callous = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - # Good for them. - option = { - name = ep3_laamp_flavour_ewan.2001.c - - ep3_laamp_flavour_ewan_2001_make_friends_or_best_friends_effect = yes - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } -} - -# Pre-filtering event to set up scopes. -ep3_laamp_flavour_ewan.2002 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2001 } - } - # Make sure we have suitable courtiers. - any_courtier = { - ep3_laamp_flavour_ewan_2001_courtier_1_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2001_courtier_2_trigger = { TARGET = scope:char_temp } - } - } - } - } - - immediate = { - # Sort our courtiers. - ## First, get our scope:follower_1 candidate. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2001_courtier_1_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2001_courtier_2_trigger = { TARGET = scope:char_temp } - } - } - } - save_scope_as = follower_1 - } - ## Now, find a scope:follower_2 from their opinion of the scope:follower_1 candidates. - ordered_courtier = { - limit = { - ep3_laamp_flavour_ewan_2001_courtier_2_trigger = { TARGET = scope:follower_1 } - } - order_by = "opinion(scope:follower_1)" - save_scope_as = follower_2 - } - trigger_event = ep3_laamp_flavour_ewan.2001 - } -} - -################################################## -# Camp Gossip -# by Ewan Cowhig Croft -# # 2011 - 2020 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - # Filter out anyone who matters to us, we want petty people. - ## This is partially for tone, partially so we can be less rigorous with checks'n'effects. - NOR = { - is_consort_of = root - is_close_family_of = root - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root } - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = root } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2011_secret_lover_would_be_affair_trigger = { - is_married = yes - NOT = { - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:adulterer - GENDER_CHARACTER = root - } - } - accepts_adultery_without_penalty_trigger = no -} - -scripted_trigger ep3_laamp_flavour_ewan_2011_might_steal_trigger = { - OR = { - has_trait = greedy - has_trait = arbitrary - has_trait_xp = { - trait = gallowsbait - track = thief - value >= 50 - } - calc_true_if = { - amount >= 2 - has_trait = eccentric - has_trait = cynical - has_trait = impatient - } - } - NOR = { - has_trait = generous - has_trait = just - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2011_might_prank_trigger = { - OR = { - has_trait = gregarious - has_trait = arbitrary - has_trait = deceitful - has_trait = eccentric - } - NOR = { - has_trait = honest - has_trait = just - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2011_might_rumourmonger_trigger = { - OR = { - has_trait = gregarious - has_trait = arbitrary - has_trait = deceitful - has_trait = eccentric - } - NOR = { - has_trait = honest - has_trait = shy - has_trait = just - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2011_might_feud_trigger = { - OR = { - has_trait = wrathful - has_trait = vengeful - has_trait = diligent - calc_true_if = { - amount >= 2 - has_trait = patient - has_trait = arrogant - has_trait = ambitious - } - } - NOR = { - has_trait = forgiving - has_trait = lazy - } -} - -# It's only one line, but these are held in different events hundreds of lines of script apart, so good hygiene demands it. -scripted_effect ep3_laamp_flavour_ewan_2011_duel_loss_effect = { - add_prestige = minor_prestige_loss -} - -# Someone shagged someone else's spouse/petty theft/series of cruel pranks/nasty rumours spread. -ep3_laamp_flavour_ewan.2011 = { - type = character_event - title = ep3_laamp_flavour_ewan.2011.t - desc = { - desc = ep3_laamp_flavour_ewan.2011.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:gossip_type = flag:affair } - desc = ep3_laamp_flavour_ewan.2011.desc.affair - } - triggered_desc = { - trigger = { scope:gossip_type = flag:petty_theft } - desc = ep3_laamp_flavour_ewan.2011.desc.petty_theft - } - triggered_desc = { - trigger = { scope:gossip_type = flag:cruel_pranks } - desc = ep3_laamp_flavour_ewan.2011.desc.cruel_pranks - } - triggered_desc = { - trigger = { scope:gossip_type = flag:nasty_rumours } - desc = ep3_laamp_flavour_ewan.2011.desc.nasty_rumours - } - triggered_desc = { - trigger = { scope:gossip_type = flag:hidden_feud } - desc = ep3_laamp_flavour_ewan.2011.desc.hidden_feud - } - } - desc = ep3_laamp_flavour_ewan.2011.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:victim - animation = stress - } - override_background = { reference = ep3_campfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2011 } - } - # Must have enough courtiers for this to be a possibility. - any_courtier = { - count >= 5 - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - OR = { - ep3_laamp_flavour_ewan_2011_secret_lover_would_be_affair_trigger = yes - ep3_laamp_flavour_ewan_2011_might_steal_trigger = yes - ep3_laamp_flavour_ewan_2011_might_prank_trigger = yes - ep3_laamp_flavour_ewan_2011_might_rumourmonger_trigger = yes - ep3_laamp_flavour_ewan_2011_might_feud_trigger = yes - } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2011 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2011 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Alright, which gossip will we be going with? - random_list = { - # Affair. - 100 = { - # Register our result. - save_scope_value_as = { - name = gossip_type - value = flag:affair - } - # Try to find a suitable candidate to make this true. - ## First by sorting everyone for whom it'd be shocking to have an affair into a list. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_secret_lover_would_be_affair_trigger = yes - } - add_to_list = possible_affair_candidates_list - } - ## Then nabbing any valid pair. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_secret_lover_would_be_affair_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_affair_candidates_list - this != scope:char_temp - has_secret_relation_lover = scope:char_temp - save_temporary_scope_as = root_secret_check_temp - root = { - NOR = { - any_known_secret = { - secret_type = secret_lover - secret_owner = scope:root_secret_check_temp - secret_target = scope:char_temp - } - any_known_secret = { - secret_type = secret_lover - secret_owner = scope:char_temp - secret_target = scope:root_secret_check_temp - } - } - } - save_temporary_scope_as = lover_temp - } - } - # Grab our scopes. - save_scope_as = lover_1 - scope:lover_temp = { save_scope_as = lover_2 } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - # If we don't have any lovers yet, see if we've got anyone we could nudge. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_secret_lover_would_be_affair_trigger = yes - might_cheat_on_every_partner_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_affair_candidates_list - this != scope:char_temp - has_relation_potential_lover = scope:char_temp - opinion = { - target = scope:char_temp - value >= 60 - } - reverse_opinion = { - target = scope:char_temp - value >= 60 - } - might_cheat_on_every_partner_trigger = yes - can_set_relation_lover_trigger = { CHARACTER = scope:char_temp } - save_temporary_scope_as = lover_temp - } - } - # Grab our scopes. - save_scope_as = lover_1 - scope:lover_temp = { save_scope_as = lover_2 } - # Now, randomise whether the story was true or false. - random = { - chance = 50 - # Ok, exacerbate our love story. - hidden_effect = { - scope:lover_1 = { - add_secret = { - target = scope:lover_2 - type = secret_lover - } - } - } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - } - # Otherwise, we register it as false. - if = { - limit = { - NOT = { exists = scope:gossip_veracity } - } - save_scope_value_as = { - name = gossip_veracity - value = flag:false - } - } - } - # Petty theft. - 100 = { - # Register our result. - save_scope_value_as = { - name = gossip_type - value = flag:petty_theft - } - # Try to find a suitable candidate to make this true. - ## First, grab anyone/everyone who'd steal. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_steal_trigger = yes - } - add_to_list = possible_thieves_list - } - ## Then try to find anyone they'd steal from. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_thieves_list - this != scope:char_temp - opinion = { - target = scope:char_temp - value <= -50 - } - save_temporary_scope_as = thief_temp - } - } - # Grab our scopes. - save_scope_as = victim - scope:thief_temp = { save_scope_as = thief } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - # Otherwise, we register it as false. - if = { - limit = { - NOT = { exists = scope:gossip_veracity } - } - save_scope_value_as = { - name = gossip_veracity - value = flag:false - } - } - } - # Series of cruel pranks. - 100 = { - trigger = { - any_courtier = { - count >= 2 - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_prank_trigger = yes - } - } - # Register our result. - save_scope_value_as = { - name = gossip_type - value = flag:cruel_pranks - } - # Try to find a suitable candidate to make this true. - ## First, grab anyone/everyone who'd play harsh jokes. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_prank_trigger = yes - } - add_to_list = possible_pranksters_list - } - ## Then try to find anyone they'd be cruel to. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_pranksters_list - this != scope:char_temp - opinion = { - target = scope:char_temp - value <= -50 - } - save_temporary_scope_as = prankster_temp - } - } - # Grab our scopes. - save_scope_as = victim - scope:prankster_temp = { save_scope_as = prankster } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - # Otherwise, we register it as false. - if = { - limit = { - NOT = { exists = scope:gossip_veracity } - } - save_scope_value_as = { - name = gossip_veracity - value = flag:false - } - # If we don't have a scope:victim by now, create one. - random_courtier = { - limit = { ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes } - save_scope_as = victim - } - } - # Plus stress out our victim a little. - scope:victim = { add_stress = medium_stress_gain } - } - # Nasty rumours. - 100 = { - trigger = { - any_courtier = { - count >= 2 - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_rumourmonger_trigger = yes - } - } - # Register our result. - save_scope_value_as = { - name = gossip_type - value = flag:nasty_rumours - } - # Try to find a suitable candidate to make this true. - ## First, grab anyone/everyone who'd spread evil rumours. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_rumourmonger_trigger = yes - } - add_to_list = possible_rumourmongers_list - } - ## Then try to find anyone they'd lie about. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_rumourmongers_list - this != scope:char_temp - opinion = { - target = scope:char_temp - value <= -50 - } - save_temporary_scope_as = rumourmonger_temp - } - } - # Grab our scopes. - save_scope_as = victim - scope:rumourmonger_temp = { save_scope_as = rumourmonger } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - # Otherwise, we register it as false. - if = { - limit = { - NOT = { exists = scope:gossip_veracity } - } - save_scope_value_as = { - name = gossip_veracity - value = flag:false - } - # If we don't have a scope:victim by now, create one. - random_courtier = { - limit = { ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes } - save_scope_as = victim - } - } - # Plus stress out our victim a little. - scope:victim = { add_stress = medium_stress_gain } - } - # Hidden feud. - 100 = { - # Register our result. - save_scope_value_as = { - name = gossip_type - value = flag:hidden_feud - } - # Try to find a suitable candidate to make this true. - ## First, grab anyone/everyone who'd start shit over nothing. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - ep3_laamp_flavour_ewan_2011_might_feud_trigger = yes - } - add_to_list = possible_feuds_list - } - ## Then try to find anyone they'd steal from. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2011_valid_courtier_for_gossip_trigger = yes - save_temporary_scope_as = char_temp - any_in_list = { - list = possible_feuds_list - this != scope:char_temp - has_relation_potential_rival = scope:char_temp - opinion = { - target = scope:char_temp - value <= -25 - } - save_temporary_scope_as = rival_temp - } - } - # Grab our scopes. - save_scope_as = rival_1 - scope:rival_temp = { save_scope_as = rival_2 } - # Now, randomise whether the story was true or false. - random = { - chance = 50 - # Ok, exacerbate our rivalry. - hidden_effect = { - scope:rival_1 = { - add_opinion = { - target = scope:rival_2 - modifier = irritated_opinion - opinion = -50 - } - reverse_add_opinion = { - target = scope:rival_2 - modifier = irritated_opinion - opinion = -50 - } - } - } - # And note that the story was true. - save_scope_value_as = { - name = gossip_veracity - value = flag:true - } - } - } - # Otherwise, we register it as false. - if = { - limit = { - NOT = { exists = scope:gossip_veracity } - } - save_scope_value_as = { - name = gossip_veracity - value = flag:false - } - } - } - } - # Error suppression. - if = { - limit = { scope:gossip_veracity = flag:false } - } - } - - # Investigate the truth of the matter. - option = { - name = ep3_laamp_flavour_ewan.2011.a - - custom_tooltip = ep3_laamp_flavour_ewan.2011.a.tt.explanation - duel = { - skill = intrigue - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2011.a.tt.success - # Alright, what event do we want to see? - ## Affair actually happening. - if = { - limit = { - scope:gossip_type = flag:affair - scope:gossip_veracity = flag:true - } - trigger_event = ep3_laamp_flavour_ewan.2012 - } - ## Petty theft actually happened. - else_if = { - limit = { - scope:gossip_type = flag:petty_theft - scope:gossip_veracity = flag:true - } - trigger_event = ep3_laamp_flavour_ewan.2013 - } - ## Cruel pranks actually happening. - else_if = { - limit = { - scope:gossip_type = flag:cruel_pranks - scope:gossip_veracity = flag:true - } - trigger_event = ep3_laamp_flavour_ewan.2014 - } - ## Nasty rumours actually happening. - else_if = { - limit = { - scope:gossip_type = flag:nasty_rumours - scope:gossip_veracity = flag:true - } - trigger_event = ep3_laamp_flavour_ewan.2015 - } - ## Hidden feud actually on-going. - else_if = { - limit = { - scope:gossip_type = flag:hidden_feud - scope:gossip_veracity = flag:true - } - trigger_event = ep3_laamp_flavour_ewan.2016 - } - ## Otherwise, nothing was really happening. - else = { - # Which means we won the duel but there was nothing to see. - save_scope_value_as = { - name = duel_result - value = flag:won - } - trigger_event = ep3_laamp_flavour_ewan.2017 - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2011.a.tt.failure - # Flag that we failed the skill check & proceed to part 2. - save_scope_value_as = { - name = duel_result - value = flag:lost - } - trigger_event = ep3_laamp_flavour_ewan.2017 - show_as_tooltip = { ep3_laamp_flavour_ewan_2011_duel_loss_effect = yes } - } - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 2 } - } - } - - # Agree with the accusations baselessly. - option = { - name = ep3_laamp_flavour_ewan.2011.b - - # Give us a minor modifier. - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_source_of_truth_modifier - years = 3 - } - # At the cost of annoying scope:victim, if they exist. - scope:victim ?= { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -30 - } - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_sociability = 1 - ai_honor = -1 - } - } - } - - # Leave well enough alone. - option = { - name = ep3_laamp_flavour_ewan.2011.c - - # Consolation prestige for staying aloof. - add_prestige = minor_prestige_gain - - stress_impact = { - shy = minor_stress_impact_loss - honest = miniscule_stress_impact_loss - deceitful = minor_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } -} - -# Discovered affair. -ep3_laamp_flavour_ewan.2012 = { - type = character_event - title = ep3_laamp_flavour_ewan.2012.t - desc = ep3_laamp_flavour_ewan.2012.desc - theme = laamp - left_portrait = { - character = scope:lover_1 - animation = shock - } - right_portrait = { - character = scope:lover_2 - animation = worry - } - override_background = { reference = ep3_campfire } - - immediate = { - # Nab our secret lover relationship. - scope:lover_1 = { - random_secret = { - type = secret_lover - limit = { - OR = { - AND = { - secret_owner = scope:lover_1 - secret_target = scope:lover_2 - } - AND = { - secret_owner = scope:lover_2 - secret_target = scope:lover_1 - } - } - } - save_scope_as = secret - } - } - # And reveal it to root. - scope:secret = { reveal_to = root } - } - - # Reveal it immediately for bonuses. - option = { - name = ep3_laamp_flavour_ewan.2012.a - - scope:secret = { expose_secret = root } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - reverse_add_opinion = { - target = scope:lover_1 - modifier = cruelty_opinion - opinion = -40 - } - reverse_add_opinion = { - target = scope:lover_2 - modifier = cruelty_opinion - opinion = -40 - } - - stress_impact = { - honest = minor_stress_impact_loss - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - } - } - - # Keep it — for now. - option = { - name = ep3_laamp_flavour_ewan.2012.b - - reverse_add_opinion = { - target = scope:lover_1 - modifier = grateful_opinion - opinion = 50 - } - reverse_add_opinion = { - target = scope:lover_2 - modifier = grateful_opinion - opinion = 50 - } - - stress_impact = { - deceitful = minor_stress_impact_loss - honest = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } -} - -# Discovered theft. -ep3_laamp_flavour_ewan.2013 = { - type = character_event - title = ep3_laamp_flavour_ewan.2013.t - desc = ep3_laamp_flavour_ewan.2013.desc - theme = laamp - left_portrait = { - character = scope:victim - animation = anger - } - right_portrait = { - character = scope:thief - animation = disbelief - } - override_background = { reference = ep3_campfire } - - immediate = { - scope:victim = { - pay_short_term_gold = { - target = scope:thief - gold = minor_gold_laamps_value - } - } - } - - # Punish scope:thief. - option = { - name = ep3_laamp_flavour_ewan.2013.a - - # Scope:victim is happy. - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - scope:victim = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 40 - } - progress_towards_rival_effect = { - REASON = rival_stole_petty_sum - CHARACTER = scope:thief - OPINION = default_rival_opinion - } - } - # Apply consequences. - scope:thief = { - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -30 - } - # Plus some stress. - add_stress = major_stress_gain - # Apply some gallowsbait XP for scope:thief. - laamp_rewards_apply_criminal_xp_effect = { - TRACK = thief - XP_MAX = gallowsbait_xp_minor_gain - XP_MIN = gallowsbait_xp_minor_gain - } - } - - stress_impact = { - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - } - } - - # Cover for scope:thief. - option = { - name = ep3_laamp_flavour_ewan.2013.b - - # Scope:thief is happy. - add_favour_hook_if_possible_simple_effect = { TARGET = scope:thief } - reverse_add_opinion = { - target = scope:thief - modifier = grateful_opinion - opinion = 40 - } - # Apply consequences. - scope:victim = { - add_opinion = { - target = root - modifier = failure_opinion - opinion = -20 - } - # Plus some stress. - add_stress = major_stress_gain - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -11 } - } - } - - # Let it be known, but leave it at that. - option = { - name = ep3_laamp_flavour_ewan.2013.c - - # Neither party is too happy. - scope:victim = { - add_opinion = { - target = root - modifier = upset_opinion - opinion = -10 - } - progress_towards_rival_effect = { - REASON = rival_stole_petty_sum - CHARACTER = scope:thief - OPINION = default_rival_opinion - } - } - scope:thief = { - add_opinion = { - target = root - modifier = upset_opinion - opinion = -10 - } - # Apply some gallowsbait XP for scope:thief. - laamp_rewards_apply_criminal_xp_effect = { - TRACK = thief - XP_MAX = gallowsbait_xp_minor_gain - XP_MIN = gallowsbait_xp_minor_gain - } - } - # But you do seem quite impartial. - add_prestige = medium_prestige_gain - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } -} - -# Discovered cruel pranks. -ep3_laamp_flavour_ewan.2014 = { - type = character_event - title = ep3_laamp_flavour_ewan.2014.t - desc = ep3_laamp_flavour_ewan.2014.desc - theme = laamp - left_portrait = { - character = scope:victim - animation = anger - } - right_portrait = { - character = scope:prankster - animation = disbelief - } - override_background = { reference = ep3_campfire } - - # Punish scope:prankster. - option = { - name = ep3_laamp_flavour_ewan.2014.a - - # Scope:victim is happy. - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - scope:victim = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - progress_towards_rival_effect = { - REASON = rival_played_cruel_pranks - CHARACTER = scope:prankster - OPINION = default_rival_opinion - } - } - # Apply consequences. - scope:prankster = { - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - # Plus some stress. - add_stress = medium_stress_gain - } - - stress_impact = { - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - } - } - - # Cover for scope:prankster. - option = { - name = ep3_laamp_flavour_ewan.2014.b - - # Scope:prankster is happy. - add_favour_hook_if_possible_simple_effect = { TARGET = scope:prankster } - reverse_add_opinion = { - target = scope:prankster - modifier = grateful_opinion - opinion = 30 - } - # Apply consequences. - scope:victim = { - add_opinion = { - target = root - modifier = failure_opinion - opinion = -20 - } - # Plus some stress. - add_stress = medium_stress_gain - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -11 } - } - } - - # Let it be known, but leave it at that. - option = { - name = ep3_laamp_flavour_ewan.2014.c - - # Neither party is too happy. - scope:victim = { - add_opinion = { - target = root - modifier = upset_opinion - opinion = -10 - } - progress_towards_rival_effect = { - REASON = rival_played_cruel_pranks - CHARACTER = scope:prankster - OPINION = default_rival_opinion - } - } - reverse_add_opinion = { - target = scope:prankster - modifier = upset_opinion - opinion = -10 - } - # But you do seem quite impartial. - add_prestige = minor_prestige_gain - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } -} - -# Discovered source of rumours. -ep3_laamp_flavour_ewan.2015 = { - type = character_event - title = ep3_laamp_flavour_ewan.2015.t - desc = ep3_laamp_flavour_ewan.2015.desc - theme = laamp - left_portrait = { - character = scope:victim - animation = anger - } - right_portrait = { - character = scope:rumourmonger - animation = disbelief - } - override_background = { reference = ep3_campfire } - - # Punish scope:rumourmonger. - option = { - name = ep3_laamp_flavour_ewan.2015.a - - # Scope:victim is happy. - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - scope:victim = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - progress_towards_rival_effect = { - REASON = rival_spread_rumours - CHARACTER = scope:rumourmonger - OPINION = default_rival_opinion - } - } - # Apply consequences. - scope:rumourmonger = { - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - # Plus some stress. - add_stress = medium_stress_gain - } - - stress_impact = { - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - } - } - - # Cover for scope:rumourmonger. - option = { - name = ep3_laamp_flavour_ewan.2015.b - - # Scope:rumourmonger is happy. - add_favour_hook_if_possible_simple_effect = { TARGET = scope:rumourmonger } - reverse_add_opinion = { - target = scope:rumourmonger - modifier = grateful_opinion - opinion = 30 - } - # Apply consequences. - scope:victim = { - add_opinion = { - target = root - modifier = failure_opinion - opinion = -20 - } - # Plus some stress. - add_stress = medium_stress_gain - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -11 } - } - } - - # Let it be known, but leave it at that. - option = { - name = ep3_laamp_flavour_ewan.2015.c - - # Neither party is too happy. - scope:victim = { - add_opinion = { - target = root - modifier = upset_opinion - opinion = -10 - } - progress_towards_rival_effect = { - REASON = rival_spread_rumours - CHARACTER = scope:rumourmonger - OPINION = default_rival_opinion - } - } - reverse_add_opinion = { - target = scope:rumourmonger - modifier = upset_opinion - opinion = -10 - } - # But you do seem quite impartial. - add_prestige = minor_prestige_gain - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } -} - -# Discovered hidden feud. -ep3_laamp_flavour_ewan.2016 = { - type = character_event - title = ep3_laamp_flavour_ewan.2016.t - desc = ep3_laamp_flavour_ewan.2016.desc - theme = laamp - left_portrait = { - character = scope:rival_1 - animation = anger - } - right_portrait = { - character = scope:rival_2 - animation = dismissal - } - override_background = { reference = ep3_campfire } - - immediate = { - scope:rival_1 = { - set_random_rivalry_reason = { - TARGET = scope:rival_2 - RELATION = rival - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2011_truth_hound_modifier - years = 10 - } - add_prestige = minor_prestige_gain - } - - # Try to reconcile them. - option = { - name = ep3_laamp_flavour_ewan.2016.a - - # Nab whichever rival has the higher diplomacy to be the duel target. - if = { - limit = { scope:rival_1.diplomacy >= scope:rival_2.diplomacy } - scope:rival_1 = { save_scope_as = duel_target } - } - else = { - scope:rival_2 = { save_scope_as = duel_target } - } - # Then roll the duel. - duel = { - skill = diplomacy - target = scope:duel_target - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2016.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2016.a.tt.success - left_icon = scope:rival_1 - right_icon = scope:rival_2 - scope:rival_1 = { remove_relation_rival = scope:rival_2 } - add_favour_hook_if_possible_simple_effect = { TARGET = scope:rival_1 } - add_favour_hook_if_possible_simple_effect = { TARGET = scope:rival_2 } - } - reverse_add_opinion = { - target = scope:rival_1 - modifier = respect_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:rival_2 - modifier = respect_opinion - opinion = 30 - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2016.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2016.a.tt.failure - left_icon = scope:rival_1 - right_icon = scope:rival_2 - reverse_add_opinion = { - target = scope:rival_1 - modifier = respect_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:rival_2 - modifier = respect_opinion - opinion = -30 - } - } - } - } - - stress_impact = { - gregarious = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 2 } - } - } - - # Instruct them that they will not allow their rivalry to hurt the camp. - option = { - name = ep3_laamp_flavour_ewan.2016.b - - reverse_add_opinion = { - target = scope:rival_1 - modifier = respect_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:rival_2 - modifier = respect_opinion - opinion = 20 - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } -} - -# No discovery. -ep3_laamp_flavour_ewan.2017 = { - type = character_event - title = ep3_laamp_flavour_ewan.2017.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:gossip_type = flag:affair } - desc = ep3_laamp_flavour_ewan.2017.desc.affair - } - triggered_desc = { - trigger = { scope:gossip_type = flag:petty_theft } - desc = ep3_laamp_flavour_ewan.2017.desc.petty_theft - } - triggered_desc = { - trigger = { scope:gossip_type = flag:cruel_pranks } - desc = ep3_laamp_flavour_ewan.2017.desc.cruel_pranks - } - triggered_desc = { - trigger = { scope:gossip_type = flag:nasty_rumours } - desc = ep3_laamp_flavour_ewan.2017.desc.nasty_rumours - } - triggered_desc = { - trigger = { scope:gossip_type = flag:hidden_feud } - desc = ep3_laamp_flavour_ewan.2017.desc.hidden_feud - } - } - first_valid = { - triggered_desc = { - trigger = { scope:duel_result = flag:won } - desc = ep3_laamp_flavour_ewan.2017.desc.duel.won - } - desc = ep3_laamp_flavour_ewan.2017.desc.duel.lost - } - } - theme = laamp - left_portrait = { - character = root - triggered_animation = { - animation = boredom - trigger = { scope:duel_result = flag:won } - } - triggered_animation = { - animation = shame - trigger = { scope:duel_result = flag:lost } - } - } - right_portrait = { - character = scope:victim - animation = paranoia - } - override_background = { reference = ep3_campfire } - - immediate = { - # If we have a victim, they're none too happy. - scope:victim ?= { add_stress = major_stress_gain } - } - - # Duel won. - option = { - name = ep3_laamp_flavour_ewan.2017.a - trigger = { scope:duel_result = flag:won } - - add_prestige = minor_prestige_gain - - stress_impact = { diligent = minor_stress_impact_loss } - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } - - # Duel lost. - option = { - name = ep3_laamp_flavour_ewan.2017.b - trigger = { scope:duel_result = flag:lost } - - ep3_laamp_flavour_ewan_2011_duel_loss_effect = yes - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } -} - -################################################## -# Bound Together -# by Ewan Cowhig Croft -# # 2021 - 2030 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_general_trigger = { - NOT = { has_character_flag = marriage_request_turned_down } - NOT = { has_trait = celibate } - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - # Make sure they either don't have complex relationships already, or else don't care about them. - any_consort = { count <= 0 } - might_cheat_on_every_partner_trigger = yes - # Filter out anyone who matters to us (excepting friends, who it's nice to approve, and rivals, who it's nice to turn down), we want mostly petty people. - NOR = { - is_close_family_of = root - has_relation_lover = root - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_general_trigger = yes - NOT = { this = $TARGET$ } - # Must have matching sexualities & the right legalities in place. - is_attracted_to_gender_of = $TARGET$ - $TARGET$ = { is_attracted_to_gender_of = prev } - could_marry_character_trigger = { CHARACTER = $TARGET$ } - # Ensure our ages aren't too far apart — not that this couldn't happen, but huge age gaps are a big verisimilitude problem for many players. - age >= { - value = $TARGET$.age - add = -15 - } - age <= { - value = $TARGET$.age - add = 15 - } - # Try to see how well they get along. - OR = { - AND = { - # Something in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - # Mutual positive opinions. - opinion = { - target = $TARGET$ - value >= 1 - } - reverse_opinion = { - target = $TARGET$ - value >= 1 - } - } - AND = { - # Lots in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - # They don't hate each other completely. - opinion = { - target = $TARGET$ - value >= -30 - } - reverse_opinion = { - target = $TARGET$ - value >= -30 - } - } - # Everything in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - } - # Make sure we're not already lovers. - NOT = { has_relation_lover = $TARGET$ } - # Filter out any rivals that somehow made it this far. - NOT = { - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - } -} - -# Marriage/concubinage at camp. -ep3_laamp_flavour_ewan.2021 = { - type = character_event - title = ep3_laamp_flavour_ewan.2021.t - desc = ep3_laamp_flavour_ewan.2021.desc - theme = laamp - left_portrait = { - character = scope:follower_1 - animation = flirtation_left - } - right_portrait = { - character = scope:follower_2 - animation = admiration - } - override_background = { reference = ep3_campfire } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2021 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2021 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Make sure they like each other. - scope:follower_1 = { - add_opinion = { - target = scope:follower_2 - modifier = love_opinion - opinion = 100 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = love_opinion - opinion = 100 - } - } - # Plus, check if we should be matrilineal or patrilineal. - random_list = { - 100 = { - trigger = { - scope:follower_1 = { - faith = { - OR = { - has_doctrine = doctrine_gender_female_dominated - has_doctrine = doctrine_gender_equal - } - } - is_female = yes - } - } - save_scope_value_as = { - name = dominant_partner - value = flag:matrilineal - } - } - 100 = { - trigger = { - scope:follower_1 = { - faith = { - OR = { - has_doctrine = doctrine_gender_male_dominated - has_doctrine = doctrine_gender_equal - } - } - is_male = yes - } - } - save_scope_value_as = { - name = dominant_partner - value = flag:patrilineal - } - } - 100 = { - trigger = { - scope:follower_2 = { - faith = { - OR = { - has_doctrine = doctrine_gender_female_dominated - has_doctrine = doctrine_gender_equal - } - } - is_female = yes - } - } - save_scope_value_as = { - name = dominant_partner - value = flag:matrilineal - } - } - 100 = { - trigger = { - scope:follower_2 = { - faith = { - OR = { - has_doctrine = doctrine_gender_male_dominated - has_doctrine = doctrine_gender_equal - } - } - is_male = yes - } - } - save_scope_value_as = { - name = dominant_partner - value = flag:patrilineal - } - } - } - } - - # Permit the union. - option = { - name = ep3_laamp_flavour_ewan.2021.a - - if = { - limit = { - scope:dominant_partner = flag:matrilineal - scope:follower_1 = { is_female = yes } - } - scope:follower_1 = { marry_matrilineal = scope:follower_2 } - } - else = { - scope:follower_2 = { marry = scope:follower_1 } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Allow, but require only concubinage. - option = { - name = ep3_laamp_flavour_ewan.2021.b - trigger = { - OR = { - AND = { - scope:dominant_partner = flag:matrilineal - OR = { - scope:follower_1 = { - is_female = yes - faith = { has_doctrine = doctrine_concubines } - } - scope:follower_2 = { - is_female = yes - faith = { has_doctrine = doctrine_concubines } - } - } - } - AND = { - scope:dominant_partner = flag:patrilineal - OR = { - scope:follower_1 = { - is_male = yes - faith = { has_doctrine = doctrine_concubines } - } - scope:follower_2 = { - is_male = yes - faith = { has_doctrine = doctrine_concubines } - } - } - } - } - } - - # Apply the concubinage. - if = { - limit = { - scope:dominant_partner = flag:matrilineal - scope:follower_1 = { is_female = yes } - } - scope:follower_1 = { make_concubine = scope:follower_2 } - } - else = { - scope:follower_2 = { make_concubine = scope:follower_1 } - } - # If your faith doesn't allow concubinage, pay piety for this. - if = { - limit = { - NOT = { - faith = { has_doctrine = doctrine_concubines } - } - } - add_piety = major_piety_loss - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_vengefulness = 0.25 } - } - } - - # Forbid them. - option = { - name = ep3_laamp_flavour_ewan.2021.c - - custom_tooltip = ep3_laamp_flavour_ewan.2021.c.tt - reverse_add_opinion = { - target = scope:follower_1 - modifier = angry_opinion - opinion = -50 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = angry_opinion - opinion = -50 - } - # Decent chance this won't stop 'em. - hidden_effect = { - random = { - chance = 25 - scope:follower_1 = { - add_secret = { - target = scope:follower_2 - type = secret_lover - } - } - } - } - # Stop either of them from asking again for a _while_. - scope:follower_1 = { - add_character_flag = { - flag = marriage_request_turned_down - years = 30 - } - } - scope:follower_2 = { - add_character_flag = { - flag = marriage_request_turned_down - years = 30 - } - } - - stress_impact = { - sadistic = minor_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } -} - -# Pre-filtering event to set up scopes. -ep3_laamp_flavour_ewan.2022 = { - hidden = yes - - trigger = { - trigger_if = { - limit = { - is_ai = yes - } - static_group_filter = { - group = ep3_laamp_flavour_ewan.2022 - match = 0.2 - } - } - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2021 } - } - # Must have suitable courtiers around and about. - any_courtier = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { TARGET = scope:char_temp } - } - } - } - } - - immediate = { - # Alright, let's select our lovebirds. - ## First, pick a scope:follower_1 candidate. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { TARGET = scope:char_temp } - } - } - } - save_scope_as = follower_1 - } - ## Now, nab a suitable pair. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { TARGET = scope:follower_1 } - } - weight = { - opinion_modifier = { - opinion_target = scope:follower_1 - multiplier = 0.5 - } - opinion_modifier = { - who = scope:follower_1 - opinion_target = this - multiplier = 0.5 - } - } - save_scope_as = follower_2 - } - trigger_event = ep3_laamp_flavour_ewan.2021 - } -} - -################################################## -# Through with You -# by Ewan Cowhig Croft -# # 2031 - 2040 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2031_valid_hating_courtier_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - # Make sure they hate us. - opinion = { - target = root - value <= -95 - } - # And wouldn't suck in the resultant duel. - diplomacy >= high_skill_rating - # Plus stop the stooge from leaving. - NOT = { has_court_position = stooge_camp_officer } - # Filter out characters who've tried this and failed. - NOT = { has_character_flag = failed_to_quit_camp } -} - -# Someone who hates you up and leaves. -ep3_laamp_flavour_ewan.2031 = { - type = character_event - title = ep3_laamp_flavour_ewan.2031.t - desc = { - desc = ep3_laamp_flavour_ewan.2031.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:waverers_check = flag:some } - desc = ep3_laamp_flavour_ewan.2031.desc.waverers.some - } - desc = ep3_laamp_flavour_ewan.2031.desc.waverers.none - } - } - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:firebrand - animation = rage - } - override_background = { reference = ep3_campfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2031 } - } - # Make sure we have at least one firebrand troublemaker. - any_courtier = { ep3_laamp_flavour_ewan_2031_valid_hating_courtier_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2031 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2031 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longer - } - } - # Grab a suitable firebrand. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_2031_valid_hating_courtier_trigger = yes } - order_by = diplomacy - save_scope_as = firebrand - } - # See if we have anyone else who'd leave with them. - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - opinion = { - target = root - value <= -60 - } - # Not the stooge. - NOT = { has_court_position = stooge_camp_officer } - # Nor scope:firebrand themselves. - this != scope:firebrand - } - add_to_list = wavering_courtiers_list - save_scope_value_as = { - name = waverers_check - value = flag:some - } - } - # If we've got not waverers, flag that for loc. - if = { - limit = { "list_size(wavering_courtiers_list)" <= 0 } - save_scope_value_as = { - name = waverers_check - value = flag:none - } - } - } - - # Perhaps I can persuade you... - option = { - name = ep3_laamp_flavour_ewan.2031.a - - duel = { - skill = diplomacy - target = scope:firebrand - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2031.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2031.a.tt.success - left_icon = scope:firebrand - scope:firebrand = { - add_stress = major_stress_gain - hidden_effect = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - every_in_list = { - list = wavering_courtiers_list - custom = ep3_laamp_flavour_ewan.2031.tt.success.wavering_courtiers - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - scope:firebrand = { add_character_flag = failed_to_quit_camp } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2031.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2031.a.tt.failure - left_icon = scope:firebrand - add_prestige = medium_prestige_loss - scope:firebrand = { select_and_move_to_pool_effect = yes } - every_in_list = { - list = wavering_courtiers_list - custom = ep3_laamp_flavour_ewan.2031.tt.failure.wavering_courtiers_move_to_pool - select_and_move_to_pool_effect = yes - } - } - } - } - - stress_impact = { - calm = minor_stress_impact_loss - forgiving = minor_stress_impact_loss - vengeful = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # You're going nowhere, clap HerHim in irons! - option = { - name = ep3_laamp_flavour_ewan.2031.b - - # If you don't have a good reason, then yeah, this'll make you look like a douche. - imprison_character_effect = { - TARGET = scope:firebrand - IMPRISONER = root - } - scope:firebrand = { add_character_flag = failed_to_quit_camp } - - stress_impact = { - wrathful = miniscule_stress_impact_loss - vengeful = miniscule_stress_impact_loss - forgiving = minor_stress_impact_gain - calm = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - } - } - - # Leave if you wish, but you'll take no one and nothing. - option = { - name = ep3_laamp_flavour_ewan.2031.c - trigger = { scope:waverers_check = flag:some } - - duel = { - skill = prowess - target = scope:firebrand - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2031.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2031.c.tt.success - left_icon = scope:firebrand - scope:firebrand = { select_and_move_to_pool_effect = yes } - every_in_list = { - list = wavering_courtiers_list - custom = ep3_laamp_flavour_ewan.2031.tt.success.wavering_courtiers - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2031.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2031.c.tt.failure - left_icon = scope:firebrand - add_prestige = medium_prestige_loss - scope:firebrand = { select_and_move_to_pool_effect = yes } - every_in_list = { - list = wavering_courtiers_list - custom = ep3_laamp_flavour_ewan.2031.tt.failure.wavering_courtiers_move_to_pool - select_and_move_to_pool_effect = yes - } - } - } - } - - stress_impact = { - calm = miniscule_stress_impact_loss - forgiving = miniscule_stress_impact_loss - vengeful = miniscule_stress_impact_gain - wrathful = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Go then, all of you. - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:waverers_check = flag:some } - desc = ep3_laamp_flavour_ewan.2031.d.multi - } - desc = ep3_laamp_flavour_ewan.2031.d.solo - } - } - } - - # Consolation prestige. - if = { - limit = { scope:waverers_check = flag:some } - add_prestige = medium_prestige_gain - } - else = { add_prestige = minor_prestige_gain } - # And we lose _everyone_. - scope:firebrand = { select_and_move_to_pool_effect = yes } - every_in_list = { - list = wavering_courtiers_list - select_and_move_to_pool_effect = yes - } - - stress_impact = { - shy = medium_stress_impact_loss - calm = medium_stress_impact_loss - forgiving = medium_stress_impact_loss - compassionate = medium_stress_impact_loss - gregarious = minor_stress_impact_gain - sadistic = medium_stress_impact_gain - vengeful = major_stress_impact_gain - wrathful = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } -} - -################################################## -# Closer Quarters -# by Ewan Cowhig Croft -# # 2041 - 2050 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_general_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { has_trait = celibate } - # Make sure they either don't have complex relationships already, or else don't care about them. - might_cheat_on_every_partner_trigger = yes - # One lover at a time (for most), just to keep the complexity down. - OR = { - num_of_relation_lover <= 0 - has_trait = lustful - has_trait = seducer - has_trait = rakish - } - # Filter out anyone we're in a relationship with, so that there's no weird complexities to account for there. - NOR = { - is_consort_of = root - has_relation_lover = root - } - # If it'd be criminal for us to cheat/fornicate, then at least make sure we'd chance it. - trigger_if = { - limit = { - OR = { - trait_is_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:adulterer - GENDER_CHARACTER = this - } - AND = { - is_male = yes - faith = { has_doctrine_parameter = homosexuality_illegal } - } - } - } - NOR = { - has_trait = zealous - has_trait = craven - has_trait = just - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_precise_trigger = { - ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_general_trigger = yes - NOT = { this = $TARGET$ } - # Must have matching sexualities & the right legalities in place. - is_attracted_to_gender_of = $TARGET$ - $TARGET$ = { is_attracted_to_gender_of = prev } - # Ensure our ages aren't too far apart — not that this couldn't happen, but huge age gaps are a big verisimilitude problem for many players. - age >= { - value = $TARGET$.age - add = -8 - } - age <= { - value = $TARGET$.age - add = 8 - } - # Try to see how well they get along. - OR = { - AND = { - # Something in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 1 - } - # Mutual positive opinions. - opinion = { - target = $TARGET$ - value >= 1 - } - reverse_opinion = { - target = $TARGET$ - value >= 1 - } - } - AND = { - # Lots in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 2 - } - # They don't hate each other completely. - opinion = { - target = $TARGET$ - value >= -30 - } - reverse_opinion = { - target = $TARGET$ - value >= -30 - } - } - # Everything in common. - number_of_personality_traits_in_common = { - target = $TARGET$ - value >= 3 - } - # Allow the terminally horny to hook up. - AND = { - has_trait = lustful - $TARGET$ = { has_trait = lustful } - } - } - # Filter out any rivals that somehow made it this far. - NOT = { - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - } -} - -# Lover developing from various sources. -ep3_laamp_flavour_ewan.2041 = { - type = character_event - title = ep3_laamp_flavour_ewan.2041.t - desc = ep3_laamp_flavour_ewan.2041.desc - theme = laamp - left_portrait = { - character = scope:follower_1 - animation = love - } - right_portrait = { - character = scope:follower_2 - animation = flirtation - } - override_background = { reference = ep3_campfire } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2041 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2041 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Make sure they like each other. - scope:follower_1 = { - add_opinion = { - target = scope:follower_2 - modifier = tryst_opinion - opinion = 75 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = tryst_opinion - opinion = 75 - } - } - } - - # Have them split up. - option = { - name = ep3_laamp_flavour_ewan.2041.a - - # Nab whichever follower has the higher diplomacy to be the duel target. - if = { - limit = { scope:follower_1.diplomacy >= scope:follower_2.diplomacy } - scope:follower_1 = { save_scope_as = duel_target } - } - else = { - scope:follower_2 = { save_scope_as = duel_target } - } - duel = { - skill = diplomacy - target = scope:duel_target - # Victory! - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2041.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2041.a.tt.success - left_icon = scope:follower_1 - right_icon = scope:follower_2 - add_prestige = minor_prestige_gain - scope:follower_1 = { - stress_impact = { - base = medium_stress_gain - chaste = minor_stress_impact_loss - lustful = minor_stress_impact_gain - } - } - scope:follower_2 = { - stress_impact = { - base = medium_stress_gain - chaste = minor_stress_impact_loss - lustful = minor_stress_impact_gain - } - } - } - } - # Defeat. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2041.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2041.a.tt.failure - left_icon = scope:follower_1 - right_icon = scope:follower_2 - scope:follower_1 = { - set_random_lover_reason = { TARGET = scope:follower_2 } - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -40 - } - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = annoyed_opinion - opinion = -40 - } - } - scope:follower_1 = { - remove_opinion = { - target = scope:follower_2 - modifier = tryst_opinion - } - } - scope:follower_2 = { - remove_opinion = { - target = scope:follower_1 - modifier = tryst_opinion - } - } - } - } - - stress_impact = { - sadistic = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - opinion_modifier = { - opinion_target = scope:follower_1 - multiplier = -0.5 - } - opinion_modifier = { - opinion_target = scope:follower_2 - multiplier = -0.5 - } - } - } - - # None of my business. - option = { - name = ep3_laamp_flavour_ewan.2041.b - - scope:follower_1 = { - set_random_lover_reason = { TARGET = scope:follower_2 } - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 2 } - opinion_modifier = { - opinion_target = scope:follower_1 - multiplier = 0.5 - } - opinion_modifier = { - opinion_target = scope:follower_2 - multiplier = 0.5 - } - } - } -} - -# Pre-filtering event to set up scopes. -ep3_laamp_flavour_ewan.2042 = { - hidden = yes - - trigger = { - trigger_if = { - limit = { - is_ai = yes - } - static_group_filter = { - group = ep3_laamp_flavour_ewan.2042 - match = 0.2 - } - } - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2041 } - } - # Must have suitable courtiers around and about. - any_courtier = { - ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { TARGET = scope:char_temp } - } - } - } - } - - immediate = { - # Alright, let's select our lovebirds. - ## First up, pick an appropriate character. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2041_valid_courtier_to_gain_lover_precise_trigger = { TARGET = scope:char_temp } - } - } - } - save_scope_as = follower_1 - } - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2021_valid_courtier_for_own_marriage_precise_trigger = { TARGET = scope:follower_1 } - } - weight = { - modifier = { - add = attraction - always = yes - } - modifier = { - add = 50 - has_trait = lustful - } - modifier = { - add = -50 - has_trait = chaste - } - } - save_scope_as = follower_2 - } - # If we've actually got our dudes, proceed to the event. - trigger_event = ep3_laamp_flavour_ewan.2041 - } -} - -################################################## -# What's the Point? -# by Ewan Cowhig Croft -# # 2051 - 2060 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2051_suitably_lazy_courtier_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - OR = { - has_trait = lazy - has_trait = eccentric - has_trait = athletic - AND = { - has_trait = diligent - has_trait = humble - } - } - NOR = { - has_trait = arrogant - has_trait = gregarious - culture = { has_cultural_parameter = better_disease_resistance } - } -} - -# Someone abandons bathing. -ep3_laamp_flavour_ewan.2051 = { - type = character_event - title = ep3_laamp_flavour_ewan.2051.t - desc = { - desc = ep3_laamp_flavour_ewan.2051.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:smelly = { - has_trait = diligent - has_trait = humble - } - } - desc = ep3_laamp_flavour_ewan.2051.desc.diligent_and_humble - } - triggered_desc = { - trigger = { - scope:smelly = { has_trait = athletic } - } - desc = ep3_laamp_flavour_ewan.2051.desc.athletic - } - triggered_desc = { - trigger = { - scope:smelly = { has_trait = gregarious } - } - desc = ep3_laamp_flavour_ewan.2051.desc.gregarious - } - desc = ep3_laamp_flavour_ewan.2051.desc.lazy - } - desc = ep3_laamp_flavour_ewan.2051.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = disgust - } - right_portrait = { - character = scope:smelly - animation = personality_bold - } - override_background = { reference = wilderness } - override_effect_2d = { reference = flies } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2051 } - } - # Must have at least one potential scope:smelly. - any_courtier = { ep3_laamp_flavour_ewan_2051_suitably_lazy_courtier_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2051 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2051 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longer - } - } - # Nab our scope:smelly. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_2051_suitably_lazy_courtier_trigger = yes } - order_by = { - # We want the least socially competent person available. - value = 100 - subtract = diplomacy - } - save_scope_as = smelly - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2051_is_stinker_modifier - years = 10 - } - } - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_anybody_trigger = yes - this != scope:smelly - } - custom = custom.every_follower - add_opinion = { - target = scope:smelly - modifier = disgusted_opinion - opinion = -30 - } - } - } - - # Scope:smelly, you _reek_! - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - scope:smelly = { - has_trait = diligent - has_trait = humble - } - } - desc = ep3_laamp_flavour_ewan.2051.a.diligent_and_humble - } - triggered_desc = { - trigger = { - scope:smelly = { has_trait = athletic } - } - desc = ep3_laamp_flavour_ewan.2051.a.athletic - } - triggered_desc = { - trigger = { - scope:smelly = { has_trait = gregarious } - } - desc = ep3_laamp_flavour_ewan.2051.a.gregarious - } - desc = ep3_laamp_flavour_ewan.2051.a.lazy - } - } - } - - reverse_add_opinion = { - target = scope:smelly - modifier = upset_opinion - opinion = -20 - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2051_disciplined_stinker_modifier - years = 10 - } - - stress_impact = { - arrogant = minor_stress_impact_loss - honest = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 2 } - } - } - - # Join HerHim in filthy freedom. - option = { - name = ep3_laamp_flavour_ewan.2051.b - - reverse_add_opinion = { - target = scope:smelly - modifier = pleased_opinion - opinion = 35 - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2051_joined_stinker_modifier - years = 10 - } - - stress_impact = { - content = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - arrogant = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_sociability = -1 - ai_boldness = 1 - } - } - } - - # Leave this petty drama to play out. - option = { - name = ep3_laamp_flavour_ewan.2051.c - - # Consolation prestige. - add_prestige = minor_prestige_gain - - stress_impact = { - shy = miniscule_stress_impact_loss - lazy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -2 } - } - } -} - -################################################## -# My Spot -# by Ewan Cowhig Croft -# # 2061 - 2070 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2061_valid_angry_courtier_general_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOR = { - has_trait = patient - has_trait = calm - has_trait = humble - } -} - -scripted_trigger ep3_laamp_flavour_ewan_2061_valid_angry_courtier_precise_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOT = { this = $TARGET$ } - # Make sure we've got poor relations with our target. - opinion = { - target = $TARGET$ - value <= -20 - } - reverse_opinion = { - target = $TARGET$ - value <= -20 - } - NOT = { - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - } - save_temporary_scope_as = char_temp2 -} - -# Fight at dinner over tent pitch location. -ep3_laamp_flavour_ewan.2061 = { - type = character_event - title = ep3_laamp_flavour_ewan.2061.t - desc = ep3_laamp_flavour_ewan.2061.desc - theme = laamp - left_portrait = { - character = scope:victim - animation = anger - } - right_portrait = { - character = scope:thief - animation = dismissal - } - override_background = { reference = corridor_night } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2061 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2061 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Now, make them upset with one another. - scope:thief = { - add_opinion = { - target = scope:victim - modifier = overreaction_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:victim - modifier = annoyed_opinion - opinion = -30 - } - } - } - - # Side with scope:victim. - option = { - name = ep3_laamp_flavour_ewan.2061.a - - add_favour_hook_if_possible_simple_effect = { TARGET = scope:victim } - reverse_add_opinion = { - target = scope:victim - modifier = respect_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:thief - modifier = upset_opinion - opinion = -20 - } - - stress_impact = { - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - opinion_modifier = { opinion_target = scope:victim } - } - } - - # Side with scope:thief. - option = { - name = ep3_laamp_flavour_ewan.2061.b - - add_favour_hook_if_possible_simple_effect = { TARGET = scope:thief } - reverse_add_opinion = { - target = scope:thief - modifier = respect_opinion - opinion = 20 - } - reverse_add_opinion = { - target = scope:victim - modifier = upset_opinion - opinion = -20 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -1 } - opinion_modifier = { opinion_target = scope:thief } - } - } - - # Fixed Layout: we have rules for a reason, scope:thief. - option = { - name = ep3_laamp_flavour_ewan.2061.c - trigger = { - domicile = { has_domicile_building = camp_perimeter_fixed_layout } - } - reason = has_building_camp_perimeter_fixed_layout - - add_favour_hook_if_possible_simple_effect = { TARGET = scope:victim } - reverse_add_opinion = { - target = scope:victim - modifier = respect_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:thief - modifier = respect_opinion - opinion = 20 - } - add_prestige = medium_prestige_gain - - stress_impact = { - honest = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_loss - } - ai_chance = { - # Just a good option for the AI to take if they can. - base = 1000 - } - } - - # Figure it out amongst yourselves. - option = { - name = ep3_laamp_flavour_ewan.2061.d - - # Consolation prestige. - add_prestige = minor_prestige_gain - - stress_impact = { - shy = miniscule_stress_impact_loss - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } -} - -# Pre-filtering event to set up scopes. -ep3_laamp_flavour_ewan.2062 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2061 } - } - # Make sure we've got suitable courtiers available. - any_courtier = { - ep3_laamp_flavour_ewan_2061_valid_angry_courtier_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2061_valid_angry_courtier_precise_trigger = { TARGET = scope:char_temp } - } - } - } - } - - immediate = { - # Find our best courtiers. - ## First, grabbing a valid annoyed char. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2061_valid_angry_courtier_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2061_valid_angry_courtier_precise_trigger = { TARGET = scope:char_temp } - } - } - } - save_scope_as = victim - } - ## Then processing out a good thief. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2061_valid_angry_courtier_precise_trigger = { TARGET = scope:victim } - } - weight = { - modifier = { - add = 20 - has_trait = wrathful - } - modifier = { - add = 15 - has_trait = deceitful - } - modifier = { - add = 5 - has_trait = arrogant - } - modifier = { - add = 10 - has_trait = arbitrary - } - modifier = { - add = -20 - has_trait = just - } - modifier = { - add = 5 - has_trait = fickle - } - modifier = { - add = 15 - has_trait = vengeful - } - modifier = { - add = -15 - has_trait = forgiving - } - modifier = { - add = -15 - has_trait = honest - } - } - save_scope_as = thief - } - trigger_event = ep3_laamp_flavour_ewan.2061 - } -} - -################################################## -# Second-in-Command -# by Ewan Cowhig Croft -# # 2071 - 2080 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2071_better_possible_sics_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - can_be_employed_as = second_camp_officer - "aptitude(second_camp_officer)" >= 2 - # Plus make sure they'd actually want the job. - NOR = { - has_trait = lazy - has_trait = humble - has_trait = content - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = root } - } - opinion = { - target = root - value >= 20 - } - # For tonal reasons, it's easiest to just avoid disloyal/loyalty-hooked characters getting in here for any reason. - NOR = { - has_trait = disloyal - root = { has_strong_hook = prev } - } -} - -scripted_effect ep3_laamp_flavour_ewan_2071_apply_appointment_effect = { - camp_officer_grant_effect = { - EMPLOYER = root - POS = second - CANDIDATE = $CHOSEN$ - } - reverse_add_opinion = { - target = $CHOSEN$ - modifier = grateful_opinion - opinion = 50 - } -} - -scripted_effect ep3_laamp_flavour_ewan_2071_apply_trio_annoyed_opinions_effect = { - # If we have a scope:current_sic, then they're upset too. - scope:current_sic ?= { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -50 - } - } - # Whilst everyone else is just annoyed. - reverse_add_opinion = { - target = $CANDIDATE_A$ - modifier = insult_opinion - opinion = -30 - } - reverse_add_opinion = { - target = $CANDIDATE_B$ - modifier = insult_opinion - opinion = -30 - } -} - -# People scrabble for empty/ineffectual SiC position. -ep3_laamp_flavour_ewan.2071 = { - type = character_event - title = ep3_laamp_flavour_ewan.2071.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:current_sic } - desc = ep3_laamp_flavour_ewan.2071.desc.sic_exists - } - desc = ep3_laamp_flavour_ewan.2071.desc.sic_vacant - } - desc = ep3_laamp_flavour_ewan.2071.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:current_sic - animation = worry - } - lower_left_portrait = scope:candidate_1 - lower_center_portrait = scope:candidate_2 - lower_right_portrait = scope:candidate_3 - override_background = { reference = armory } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2071 } - } - # Either you don't have a SiC, or your SiC sucks. - OR = { - NOT = { employs_court_position = second_camp_officer } - court_position:second_camp_officer = { "aptitude(second_camp_officer)" <= 1 } - } - # You have at least three characters who'd be better. - any_courtier = { - count >= 3 - ep3_laamp_flavour_ewan_2071_better_possible_sics_trigger = yes - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2071 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2071 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Is the spot vacant, or merely incompetent? - if = { - limit = { employs_court_position = second_camp_officer } - court_position:second_camp_officer = { save_scope_as = current_sic } - } - # Alright, process out our possible SiCs. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_2071_better_possible_sics_trigger = yes } - order_by = { - # Ok, first we group by aptitude. - value = "aptitude(second_camp_officer)" - # Then we want to use diplomacy as a tiebreaker... - ## ... so make it a decimal of aptitude... - multiply = 100 - ## ... and _then_ add it. - add = diplomacy - } - max = 3 - check_range_bounds = no - # We place these in order of how much they'll offer you, which means we actually want to invert our count for how we save the scopes (so 3 -> 2 -> 1). - if = { - limit = { - NOT = { exists = scope:candidate_3 } - } - save_scope_as = candidate_3 - } - else_if = { - limit = { - NOT = { - this = scope:candidate_3 - exists = scope:candidate_2 - } - } - save_scope_as = candidate_2 - } - else_if = { - limit = { - NOT = { - this = scope:candidate_3 - this = scope:candidate_2 - exists = scope:candidate_1 - } - } - save_scope_as = candidate_1 - } - } - } - - # Accept scope:candidate_1, and their offer of complete loyalty. - option = { - name = ep3_laamp_flavour_ewan.2071.a - - ep3_laamp_flavour_ewan_2071_apply_appointment_effect = { CHOSEN = scope:candidate_1 } - add_hook = { - target = scope:candidate_1 - type = loyalty_hook - } - # Flag that the loyalty hook is dependent on this court position. - scope:candidate_1 = { - set_variable = { - name = loyalty_dependent_on_position - value = root - } - } - # Everyone else is upset. - ep3_laamp_flavour_ewan_2071_apply_trio_annoyed_opinions_effect = { - CANDIDATE_A = scope:candidate_2 - CANDIDATE_B = scope:candidate_3 - } - - # No stress here. - ai_chance = { - base = 1 - opinion_modifier = { opinion_target = scope:candidate_1 } - } - } - - # Take scope:candidate_2, who says they'll work themselves to death. - option = { - name = ep3_laamp_flavour_ewan.2071.b - - ep3_laamp_flavour_ewan_2071_apply_appointment_effect = { CHOSEN = scope:candidate_2 } - scope:candidate_2 = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2071_b_work_self_to_death_modifier - years = 20 - } - } - # Everyone else is upset. - ep3_laamp_flavour_ewan_2071_apply_trio_annoyed_opinions_effect = { - CANDIDATE_A = scope:candidate_1 - CANDIDATE_B = scope:candidate_3 - } - - # No stress here. - ai_chance = { - base = 1 - opinion_modifier = { opinion_target = scope:candidate_2 } - } - } - - # Mmmm, scope:candidate_3, please: HerHis skills are self-evident. - option = { - name = ep3_laamp_flavour_ewan.2071.c - - ep3_laamp_flavour_ewan_2071_apply_appointment_effect = { CHOSEN = scope:candidate_3 } - # Everyone else is upset. - ep3_laamp_flavour_ewan_2071_apply_trio_annoyed_opinions_effect = { - CANDIDATE_A = scope:candidate_1 - CANDIDATE_B = scope:candidate_2 - } - - # No stress here. - ai_chance = { - base = 1 - opinion_modifier = { opinion_target = scope:candidate_3 } - } - } - - # It shall remain vacant/scope:sic shall keep HerHis post. - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:current_sic } - desc = ep3_laamp_flavour_ewan.2071.d.post_filled - } - desc = ep3_laamp_flavour_ewan.2071.d.post_empty - } - } - } - - # If we have a scope:current_sic, then they're duly grateful. - scope:current_sic ?= { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - } - # Whilst everyone else is just annoyed. - reverse_add_opinion = { - target = scope:candidate_1 - modifier = insult_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:candidate_2 - modifier = insult_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:candidate_3 - modifier = insult_opinion - opinion = -30 - } - # Consolation prestige. - add_prestige = minor_prestige_gain - - # Lose stress if we're playing to our reputation + it's appropriate. - if = { - limit = { exists = scope:current_sic } - stress_impact = { loyal = medium_stress_loss } - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } -} - -################################################## -# A Well-Oiled Machine -# by Ewan Cowhig Croft -# # 2081 - 2090 -################################################## - -# Helping each other out at pitch time. -ep3_laamp_flavour_ewan.2081 = { - type = character_event - title = ep3_laamp_flavour_ewan.2081.t - desc = { - desc = ep3_laamp_flavour_ewan.2081.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:follower_1 = { - OR = { - opinion = { - target = scope:follower_2 - value <= -25 - } - reverse_opinion = { - target = scope:follower_2 - value <= -25 - } - } - } - } - desc = ep3_laamp_flavour_ewan.2081.desc.dislike - } - triggered_desc = { - trigger = { - scope:follower_1 = { - OR = { - opinion = { - target = scope:follower_2 - value >= 25 - } - reverse_opinion = { - target = scope:follower_2 - value >= 25 - } - } - } - } - desc = ep3_laamp_flavour_ewan.2081.desc.like - } - desc = ep3_laamp_flavour_ewan.2081.desc.neutral - } - desc = ep3_laamp_flavour_ewan.2081.desc.outro - } - theme = laamp - left_portrait = { - character = scope:follower_1 - animation = laugh - } - right_portrait = { - character = scope:follower_2 - animation = personality_bold - } - override_background = { reference = corridor_night } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2081 } - } - # Must have suitable courtiers available. - any_courtier = { - count >= 2 - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2081 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2081 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longer - } - } - # Nab our two courtiers. - random_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_trigger = yes } - weight = { - modifier = { - add = stewardship - always = yes - } - modifier = { - add = 10 - has_trait = diligent - } - modifier = { - add = -10 - has_trait = lazy - } - } - save_scope_as = follower_1 - } - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - this != scope:follower_1 - } - weight = { - modifier = { - add = stewardship - always = yes - } - modifier = { - add = 10 - has_trait = diligent - } - modifier = { - add = -10 - has_trait = lazy - } - } - save_scope_as = follower_2 - } - } - - # Do you need another hand? - option = { - name = ep3_laamp_flavour_ewan.2081.a - - reverse_add_opinion = { - target = scope:follower_1 - modifier = one_of_us_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = one_of_us_opinion - opinion = 30 - } - add_prestige = minor_prestige_loss - - stress_impact = { - diligent = miniscule_stress_impact_loss - humble = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - ambitious = minor_stress_impact_gain - lazy = minor_stress_impact_gain - arrogant = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Legitimist: after you're done here, go help raise my pavillion. - option = { - name = ep3_laamp_flavour_ewan.2081.b - trigger = { has_realm_law = camp_purpose_legitimists } - reason = purpose_legitimists - - add_prestige = medium_prestige_gain - - stress_impact = { - arrogant = medium_stress_impact_loss - lazy = minor_stress_impact_loss - ambitious = miniscule_stress_impact_loss - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Hmmm... don't like that, better move them apart. - option = { - name = ep3_laamp_flavour_ewan.2081.c - trigger = { - NOT = { has_realm_law = camp_purpose_legitimists } - } - - reverse_add_opinion = { - target = scope:follower_1 - modifier = annoyed_opinion - opinion = -10 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = annoyed_opinion - opinion = -10 - } - - stress_impact = { - paranoid = minor_stress_impact_loss - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -1 } - } - } - - # Fixed Layout: as it should be. - option = { - name = ep3_laamp_flavour_ewan.2081.d - trigger = { - domicile = { has_domicile_building = camp_perimeter_fixed_layout } - } - reason = has_building_camp_perimeter_fixed_layout - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_2081_d_well_oiled_operation_modifier - years = 10 - } - - # No stress here, - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # Good to see those two getting on! - option = { - name = ep3_laamp_flavour_ewan.2081.e - - scope:follower_1 = { - add_opinion = { - target = scope:follower_2 - modifier = respect_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = respect_opinion - opinion = 30 - } - } - - # No stress here, - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } -} - -################################################## -# Crimes of Passion -# by Ewan Cowhig Croft -# # 2091 - 2100 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_2091_valid_angry_courtier_general_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - # Mustn't have a deescalatory personality. - NOR = { - has_trait = patient - has_trait = calm - has_trait = forgiving - } - # And make sure a fight is conceivable. - prowess >= 7 - can_start_single_combat_trigger = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_2091_valid_angry_courtier_precise_trigger = { - NOT = { this = $TARGET$ } - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - # Make sure we've got poor relations with our target. - opinion = { - target = $TARGET$ - value <= -25 - } - reverse_opinion = { - target = $TARGET$ - value <= -25 - } - NOT = { - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = $TARGET$ } - } - save_temporary_scope_as = char_temp2 -} - -scripted_effect ep3_laamp_flavour_ewan_2091_start_duel_to_death_effect = { - configure_start_single_combat_effect = { - SC_INITIATOR = scope:attacker - SC_ATTACKER = scope:attacker - SC_DEFENDER = scope:defender - FATALITY = always - FIXED = no - LOCALE = terrain_scope - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = ep3_laamp_flavour_ewan.2092 - } -} - -# Followers attack each other. -ep3_laamp_flavour_ewan.2091 = { - type = character_event - title = ep3_laamp_flavour_ewan.2091.t - desc = ep3_laamp_flavour_ewan.2091.desc - theme = laamp - left_portrait = { - character = scope:attacker - animation = random_weapon_aggressive - camera = camera_event_very_left - } - right_portrait = { - character = scope:defender - animation = shock - } - override_background = { reference = ep3_campfire } - override_effect_2d = { reference = smoke } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_2091 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_2091 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Now, make them upset with one another. - scope:attacker = { - add_opinion = { - target = scope:defender - modifier = hate_opinion - opinion = -50 - } - reverse_add_opinion = { - target = scope:defender - modifier = hate_opinion - opinion = -50 - } - } - # Plus make sure we _definitely_ know who root is, for the after-toasts. - save_scope_as = og_root - } - - # Intervene. - option = { - name = ep3_laamp_flavour_ewan.2091.a - - duel = { - skill = diplomacy - target = scope:attacker - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2091.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2091.a.tt.success - left_icon = scope:attacker - right_icon = scope:defender - reverse_add_opinion = { - target = scope:attacker - modifier = respect_opinion - opinion = 40 - } - reverse_add_opinion = { - target = scope:defender - modifier = respect_opinion - opinion = 40 - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.2091.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2091.a.tt.failure - left_icon = scope:attacker - right_icon = scope:defender - reverse_add_opinion = { - target = scope:attacker - modifier = respect_opinion - opinion = -20 - } - reverse_add_opinion = { - target = scope:defender - modifier = respect_opinion - opinion = -20 - } - } - scope:attacker = { - increase_wounds_no_death_effect = { REASON = fight } - } - scope:defender = { - increase_wounds_no_death_effect = { REASON = fight } - } - } - } - - stress_impact = { - calm = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Freebooters/S4H: invite them to settle their grievances with a formal duel. - option = { - name = ep3_laamp_flavour_ewan.2091.b - trigger = { - OR = { - has_realm_law = camp_purpose_mercenaries - has_realm_law = camp_purpose_brigands - } - } - reason = purpose_brigands_and_mercenaries - - add_prestige = medium_prestige_gain - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - NOR = { - this = scope:attacker - this = scope:defender - } - } - custom = custom.every_adult_follower - add_stress = major_stress_loss - add_opinion = { - target = root - modifier = entertained_opinion - opinion = 30 - } - } - save_scope_value_as = { - name = duel_legal - value = yes - } - custom_tooltip = ep3_laamp_flavour_ewan.2091.tt.duel_commences - ep3_laamp_flavour_ewan_2091_start_duel_to_death_effect = yes - - # For once, all sides of the Calm/Just axes are happy! Blood and justice on the right terms! - ## ... or something. - stress_impact = { - calm = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - just = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # Have the attacker arrested and thrown in the stocks. - option = { - name = ep3_laamp_flavour_ewan.2091.c - - rightfully_imprison_character_effect = { - TARGET = scope:attacker - IMPRISONER = root - } - reverse_add_opinion = { - target = scope:defender - modifier = grateful_opinion - opinion = 50 - } - - stress_impact = { - just = miniscule_stress_impact_loss - arbitrary = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 1 } - } - } - - # Let them play it out. - option = { - name = ep3_laamp_flavour_ewan.2091.d - - custom_tooltip = ep3_laamp_flavour_ewan.2091.tt.duel_commences - ep3_laamp_flavour_ewan_2091_start_duel_to_death_effect = yes - - stress_impact = { - wrathful = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - just = minor_stress_impact_gain - calm = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } -} - -ep3_laamp_flavour_ewan.2092 = { - hidden = yes - - immediate = { - if = { - limit = { scope:sc_victor = scope:attacker } - scope:og_root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2092.tt.attacker_won - left_icon = scope:attacker - right_icon = scope:defender - custom_tooltip = ep3_laamp_flavour_ewan.2092.tt.attacker_won.tt - scope:attacker = { - if = { - limit = { - NOT = { exists = scope:duel_legal } - } - laamp_rewards_apply_criminal_xp_effect = { - TRACK = marauder - XP_MAX = gallowsbait_xp_medium_gain - XP_MIN = gallowsbait_xp_medium_gain - } - } - } - } - } - } - else = { - scope:og_root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.2092.tt.defender_won - left_icon = scope:defender - right_icon = scope:attacker - custom_tooltip = ep3_laamp_flavour_ewan.2092.tt.defender_won.tt - } - } - } - } -} - -# Pre-filtering event to set up scopes. -ep3_laamp_flavour_ewan.2093 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_2091 } - } - # Make sure we've got suitable courtiers available. - any_courtier = { - ep3_laamp_flavour_ewan_2091_valid_angry_courtier_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2091_valid_angry_courtier_precise_trigger = { TARGET = scope:char_temp } - } - } - } - } - - immediate = { - # Find our best courtiers. - ## First, grab a suitable candidate. - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2091_valid_angry_courtier_general_trigger = yes - save_temporary_scope_as = char_temp - root = { - any_courtier = { - ep3_laamp_flavour_ewan_2091_valid_angry_courtier_precise_trigger = { TARGET = scope:char_temp } - } - } - } - save_scope_as = defender - } - random_courtier = { - limit = { - ep3_laamp_flavour_ewan_2091_valid_angry_courtier_precise_trigger = { TARGET = scope:defender } - } - weight = { - modifier = { - add = 20 - has_trait = wrathful - } - modifier = { - add = 15 - has_trait = deceitful - } - modifier = { - add = 5 - has_trait = arrogant - } - modifier = { - add = 10 - has_trait = arbitrary - } - modifier = { - add = -20 - has_trait = just - } - modifier = { - add = 5 - has_trait = fickle - } - modifier = { - add = 15 - has_trait = vengeful - } - modifier = { - add = -15 - has_trait = forgiving - } - modifier = { - add = -15 - has_trait = honest - } - opinion_modifier = { - who = this - opinion_target = scope:defender - multiplier = -0.5 - } - } - save_scope_as = attacker - } - trigger_event = ep3_laamp_flavour_ewan.2091 - } -} - - - - - - - - - - - -################################################## -# CAMP PURPOSE - -################################################## -# Heard of You -# by Ewan Cowhig Croft -# # 3001 - 3010 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - create_character = { - template = criminal_brains_character - location = root.location - save_scope_as = brains - diplomacy = { - $OVERRIDE_SKILL_LOW$ - $OVERRIDE_SKILL_HIGH$ - } - stewardship = { - min_template_medium_skill - max_template_medium_skill - } - } - create_character = { - template = criminal_brawn_character - location = root.location - save_scope_as = brawn - prowess = { - $OVERRIDE_SKILL_LOW$ - $OVERRIDE_SKILL_HIGH$ - } - } - create_character = { - template = criminal_fingers_character - location = root.location - save_scope_as = fingers - intrigue = { - $OVERRIDE_SKILL_LOW$ - $OVERRIDE_SKILL_HIGH$ - } - } - # Plus try to give 'em all fun nicknames. - hidden_effect = { - scope:brains = { assign_random_nickname_effect = yes } - scope:brawn = { assign_random_nickname_effect = yes } - scope:fingers = { assign_random_nickname_effect = yes } - } -} - -scripted_effect ep3_laamp_flavour_ewan_3001_recruit_characters_effect = { - add_courtier = scope:brains - add_courtier = scope:brawn - add_courtier = scope:fingers - reverse_add_opinion = { - target = scope:brains - modifier = grateful_opinion - opinion = $OPINION$ - } - reverse_add_opinion = { - target = scope:brawn - modifier = grateful_opinion - opinion = $OPINION$ - } - reverse_add_opinion = { - target = scope:fingers - modifier = grateful_opinion - opinion = $OPINION$ - } -} - -# Brigands attract cool local criminals, scaled to prestige level. -ep3_laamp_flavour_ewan.3001 = { - type = character_event - title = ep3_laamp_flavour_ewan.3001.t - desc = { - desc = ep3_laamp_flavour_ewan.3001.desc.intro - first_valid = { - triggered_desc = { - trigger = { prestige_level >= 5 } - desc = ep3_laamp_flavour_ewan.3001.desc.legendary - } - triggered_desc = { - trigger = { prestige_level >= 4 } - desc = ep3_laamp_flavour_ewan.3001.desc.exalted - } - triggered_desc = { - trigger = { prestige_level >= 3 } - desc = ep3_laamp_flavour_ewan.3001.desc.illustrious - } - triggered_desc = { - trigger = { prestige_level >= 2 } - desc = ep3_laamp_flavour_ewan.3001.desc.distinguished - } - triggered_desc = { - trigger = { prestige_level >= 1 } - desc = ep3_laamp_flavour_ewan.3001.desc.established - } - desc = ep3_laamp_flavour_ewan.3001.desc.disgraced - } - } - theme = laamp - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:brains - animation = admiration - } - lower_center_portrait = scope:brawn - lower_right_portrait = scope:fingers - override_background = { reference = armory } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3001 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_brigands - # And can't have more than a certain amount of courtiers already. - any_courtier = { count <= 20 } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3001 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3001 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Spawn our lil dudes. - if = { - limit = { prestige_level = 0 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_low_skill - OVERRIDE_SKILL_HIGH = max_template_low_skill - } - } - else_if = { - limit = { prestige_level = 1 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_average_skill - OVERRIDE_SKILL_HIGH = max_template_average_skill - } - } - else_if = { - limit = { prestige_level = 2 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_medium_skill - OVERRIDE_SKILL_HIGH = max_template_medium_skill - } - } - else_if = { - limit = { prestige_level = 3 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_decent_skill - OVERRIDE_SKILL_HIGH = max_template_decent_skill - } - } - else_if = { - limit = { prestige_level = 4 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_high_skill - OVERRIDE_SKILL_HIGH = max_template_high_skill - } - } - else_if = { - limit = { prestige_level = 5 } - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_very_high_skill - OVERRIDE_SKILL_HIGH = max_template_very_high_skill - } - } - ## Shouldn't happen, but just in case, leave a fallback equivalent to the bottom rung. - else = { - ep3_laamp_flavour_ewan_3001_spawn_appropriate_characters_effect = { - OVERRIDE_SKILL_LOW = min_template_low_skill - OVERRIDE_SKILL_HIGH = max_template_low_skill - } - } - # Plus make sure they get on. - hidden_effect = { - scope:brains = { - set_relation_friend = { - reason = friend_petty_criminals_together - target = scope:fingers - } - set_relation_friend = { - reason = friend_petty_criminals_together - target = scope:brawn - } - } - scope:brawn = { - set_relation_friend = { - reason = friend_petty_criminals_together - target = scope:fingers - } - } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Sure, we'll take you on... - option = { - name = ep3_laamp_flavour_ewan.3001.a - - ep3_laamp_flavour_ewan_3001_recruit_characters_effect = { OPINION = 100 } - - stress_impact = { - trusting = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # Stewardship duel: ... but you've gotta pay into the _pot_ first. - option = { - name = ep3_laamp_flavour_ewan.3001.b - - duel = { - skill = stewardship - target = scope:brains - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3001.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3001.b.tt.success - left_icon = scope:brains - scope:brains = { - pay_short_term_gold = { - target = root - gold = medium_gold_laamps_value - } - # Don't actually charge scope:brains, though. - hidden_effect = { add_gold = medium_gold_laamps_value } - } - } - ep3_laamp_flavour_ewan_3001_recruit_characters_effect = { OPINION = 40 } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3001.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3001.b.tt.failure - left_icon = scope:brains - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - generous = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 2 } - } - } - - # Heh, get out of here y'curs. - option = { - name = ep3_laamp_flavour_ewan.3001.c - - add_prestige = medium_prestige_gain - reverse_add_opinion = { - target = scope:brains - modifier = disappointed_opinion - opinion = -20 - } - reverse_add_opinion = { - target = scope:brawn - modifier = disappointed_opinion - opinion = -20 - } - reverse_add_opinion = { - target = scope:fingers - modifier = disappointed_opinion - opinion = -20 - } - - stress_impact = { - paranoid = miniscule_stress_impact_loss - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -2 } - } - } - - after = { - # If we're an AI & didn't recruit them, clean up our criminals. - if = { - limit = { - is_ai = yes - NOR = { - this = scope:brains.liege - this = scope:brawn.liege - this = scope:fingers.liege - } - } - scope:brains = { - death = { death_reason = death_vanished } - } - scope:brawn = { - death = { death_reason = death_vanished } - } - scope:fingers = { - death = { death_reason = death_vanished } - } - - } - } -} - -################################################## -# Arguing the Toss -# by Ewan Cowhig Croft -# # 3011 - 3020 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_3011_eloquent_courtier_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - diplomacy >= decent_skill_rating -} - -scripted_trigger ep3_laamp_flavour_ewan_3011_wise_courtier_trigger = { - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - learning >= decent_skill_rating -} - -# Scholars debate a learned follower. -ep3_laamp_flavour_ewan.3011 = { - type = character_event - title = ep3_laamp_flavour_ewan.3011.t - desc = ep3_laamp_flavour_ewan.3011.desc - theme = laamp - left_portrait = { - character = scope:eloquent_follower - animation = toast_goblet - } - right_portrait = { - character = scope:wise_follower - animation = writing - } - override_background = { reference = bp1_bonfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3011 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_scholars - # And some suitable courtiers. - any_courtier = { ep3_laamp_flavour_ewan_3011_eloquent_courtier_trigger = yes } - ## Check for at least two, if we only have one valid courtier for diplo, them also being the best courtier for learning doesn't cause a hole in the script. - any_courtier = { - count >= 2 - ep3_laamp_flavour_ewan_3011_wise_courtier_trigger = yes - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3011 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3011 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Set up our courtiers. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_3011_eloquent_courtier_trigger = yes } - order_by = diplomacy - save_scope_as = eloquent_follower - } - ordered_courtier = { - limit = { - ep3_laamp_flavour_ewan_3011_wise_courtier_trigger = yes - this != scope:eloquent_follower - } - order_by = learning - save_scope_as = wise_follower - } - } - - # Diplo duel the eloquent follower for prestige. - option = { - name = ep3_laamp_flavour_ewan.3011.a - - duel = { - skill = diplomacy - target = scope:eloquent_follower - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3011.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3011.a.tt.success - left_icon = scope:eloquent_follower - add_prestige = { - if = { - limit = { scope:eloquent_follower.diplomacy >= 32 } - add = major_prestige_gain - } - else = { add = medium_prestige_gain } - } - reverse_add_opinion = { - target = scope:eloquent_follower - modifier = respect_opinion - opinion = 40 - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3011.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3011.a.tt.failure - left_icon = scope:eloquent_follower - reverse_add_opinion = { - target = scope:eloquent_follower - modifier = respect_opinion - opinion = 20 - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Learning duel the wise follower for prestige. - option = { - name = ep3_laamp_flavour_ewan.3011.b - - duel = { - skill = learning - target = scope:wise_follower - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3011.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3011.b.tt.success - left_icon = scope:wise_follower - add_prestige = { - if = { - limit = { scope:wise_follower.learning >= 32 } - add = major_prestige_gain - } - else = { add = medium_prestige_gain } - } - reverse_add_opinion = { - target = scope:wise_follower - modifier = respect_opinion - opinion = 40 - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3011.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3011.b.tt.failure - left_icon = scope:wise_follower - reverse_add_opinion = { - target = scope:wise_follower - modifier = respect_opinion - opinion = 20 - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # Nightly Debates: better version of the usual modifier. - option = { - name = ep3_laamp_flavour_ewan.3011.c - trigger = { - domicile = { has_domicile_building = camp_fire_nightly_debates } - } - reason = has_building_camp_fire_nightly_debates - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3011_d_presiding_over_lively_debates_modifier - years = 10 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } - - # Nod along for a positive modifier. - option = { - name = ep3_laamp_flavour_ewan.3011.d - trigger = { - NOT = { - domicile = { has_domicile_building = camp_fire_nightly_debates } - } - } - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3011_d_presiding_over_debates_modifier - years = 10 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = -1 } - } - } -} - -################################################## -# Over the Horizon -# by Ewan Cowhig Croft -# # 3021 - 3030 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_3021_suitable_kingdom_to_dream_about_trigger = { - save_temporary_scope_as = title_temp - holder ?= { - OR = { - prestige_level >= high_prestige_level - court_grandeur_current_level >= 6 - } - root = { - NOR = { - knows_language_of_culture = prev.culture - knows_language_of_culture = capital_county.culture - current_extra_languages >= language_soft_cap - } - OR = { - NOT = { has_variable = laamp_recently_visited_kingdoms } - NOT = { - is_target_in_variable_list = { - name = laamp_recently_visited_kingdoms - target = scope:title_temp - } - } - } - } - NOT = { - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = root } - } - # Put our performance-intensive checks riiiiight at the back, so we've ruled out as many places as possible by the time we get to these. - ## First a bunch of mass county-counting, but we only care about this for players. - root = { - trigger_if = { - limit = { is_ai = no } - NOT = { - culture = { - any_culture_kingdom = { this = scope:title_temp } - } - } - } - } - ## Then distance. - capital_county.title_province = { "squared_distance(root.location)" >= squared_distance_massive } - } -} - -scripted_effect ep3_laamp_flavour_ewan_3021_choose_kingdom_effect = { - # Make sure the contracts we're about to generate won't disappear. - save_scope_value_as = { - name = toggle_distance_ignore - value = yes - } - # Now create our actual contracts. - populate_location_with_special_contracts_effect = { - AREA_CHAR = $KINGDOM$.holder - AMOUNT = 5 - } - # Then, an easier-than-usual learning duel to try to pick up the language from afar. - duel = { - skill = learning - value = very_high_skill_rating - # Victory! - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 10 - desc = ep3_laamp_flavour_ewan.3021.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3021.tt.success - learn_language_of_culture = $KINGDOM$.title_capital_county.culture - } - } - # Defeat. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3021.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3021.tt.failure - add_stress = medium_stress_gain - } - } - } -} - -# Explorer gets a passion for stories of a distant land, populating contracts there & learning the local language.number. -ep3_laamp_flavour_ewan.3021 = { - type = character_event - title = ep3_laamp_flavour_ewan.3021.t - desc = ep3_laamp_flavour_ewan.3021.desc - theme = laamp - left_portrait = { - character = root - animation = admiration - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3021 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_explorers - any_kingdom = { - count >= 3 - ep3_laamp_flavour_ewan_3021_suitable_kingdom_to_dream_about_trigger = yes - } - } - - weight_multiplier = { - # Weight this down for the AI, as we're doing a bunch of distance checks. - modifier = { - add = -0.9 - is_ai = yes - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3021 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3021 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Alright, let's pick some kingdoms. - ## First, put all the valid ones in a list. - every_kingdom = { - limit = { ep3_laamp_flavour_ewan_3021_suitable_kingdom_to_dream_about_trigger = yes } - add_to_list = potential_kingdoms_list - } - ordered_in_list = { - list = potential_kingdoms_list - order_by = { - holder = { - # Go by CGV level first. - add = { - value = court_grandeur_current_level - multiply = 1000 - } - # Then prestige level. - add = { - value = prestige_level - multiply = 100 - } - # Then add diplomacy as a tie-breaker. - add = diplomacy - } - } - max = 3 - check_range_bounds = no - if = { - limit = { - NOT = { exists = scope:kingdom_1 } - } - save_scope_as = kingdom_1 - } - else_if = { - limit = { - NOT = { - this = scope:kingdom_1 - exists = scope:kingdom_2 - } - } - save_scope_as = kingdom_2 - } - else_if = { - limit = { - NOT = { - this = scope:kingdom_1 - this = scope:kingdom_2 - exists = scope:kingdom_3 - } - } - save_scope_as = kingdom_3 - } - } - } - - # Scope:kingdom_1. - option = { - name = ep3_laamp_flavour_ewan.3021.a - - custom_tooltip = ep3_laamp_flavour_ewan.3021.tt.kingdom_1.contracts_appear - ep3_laamp_flavour_ewan_3021_choose_kingdom_effect = { KINGDOM = scope:kingdom_1 } - - # No stress here. - ai_chance = { - base = 1 - modifier = { - add = { - value = "scope:kingdom_1.holder.capital_county.culture.cultural_acceptance(root.culture)" - multiply = 2 - } - always = yes - } - } - } - - # Scope:kingdom_2. - option = { - name = ep3_laamp_flavour_ewan.3021.b - - custom_tooltip = ep3_laamp_flavour_ewan.3021.tt.kingdom_2.contracts_appear - ep3_laamp_flavour_ewan_3021_choose_kingdom_effect = { KINGDOM = scope:kingdom_2 } - - # No stress here. - ai_chance = { - base = 1 - modifier = { - add = { - value = "scope:kingdom_2.holder.capital_county.culture.cultural_acceptance(root.culture)" - multiply = 2 - } - always = yes - } - } - } - - # Scope:kingdom_3. - option = { - name = ep3_laamp_flavour_ewan.3021.c - - custom_tooltip = ep3_laamp_flavour_ewan.3021.tt.kingdom_3.contracts_appear - ep3_laamp_flavour_ewan_3021_choose_kingdom_effect = { KINGDOM = scope:kingdom_3 } - - # No stress here. - ai_chance = { - base = 1 - modifier = { - add = { - value = "scope:kingdom_3.holder.capital_county.culture.cultural_acceptance(root.culture)" - multiply = 2 - } - always = yes - } - } - } - - # I have places to ponder yet... - option = { - name = ep3_laamp_flavour_ewan.3021.d - - # Consolation prestige. - add_prestige = minor_prestige_gain - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -3 } - } - } -} - -################################################## -# Mine by Right -# by Ewan Cowhig Croft -# # 3031 - 3040 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_3031_family_title_trigger = { - any_held_title = { - title_tier >= kingdom - save_temporary_scope_as = title_temp - root = { - NOT = { has_claim_on = scope:title_temp } - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_3031_claim_adjacent_title_trigger = { - holder ?= { - any_held_title = { - title_tier >= kingdom - save_temporary_scope_as = title_temp2 - root = { - NOR = { - scope:title_temp ?= scope:title_temp2 - has_claim_on = scope:title_temp2 - } - } - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_3031_formerly_claimed_title_trigger = { - has_memory_type = became_landless_adventurer_memory - var:old_primary_title ?= { - tier >= tier_kingdom - save_temporary_scope_as = title_temp3 - root = { - NOR = { - scope:title_temp ?= this - scope:title_temp2 ?= this - has_claim_on = scope:title_temp3 - } - } - } -} - -# Legitimist broods & extends their claims. -ep3_laamp_flavour_ewan.3031 = { - type = character_event - title = ep3_laamp_flavour_ewan.3031.t - desc = { - desc = ep3_laamp_flavour_ewan.3031.desc.intro - triggered_desc = { - trigger = { exists = scope:family_title } - desc = ep3_laamp_flavour_ewan.3031.desc.family_title - } - triggered_desc = { - trigger = { exists = scope:adjacent_title } - desc = ep3_laamp_flavour_ewan.3031.desc.adjacent_title - } - triggered_desc = { - trigger = { exists = scope:memory_title } - desc = ep3_laamp_flavour_ewan.3031.desc.memory_title - } - desc = ep3_laamp_flavour_ewan.3031.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = spymaster - } - lower_left_portrait = scope:portrait_3 - lower_center_portrait = scope:portrait_2 - lower_right_portrait = scope:portrait_1 - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3031 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_legitimists - # Then make sure that we could populate at least one specific option. - OR = { - any_close_or_extended_family_member = { ep3_laamp_flavour_ewan_3031_family_title_trigger = yes } - any_claim = { ep3_laamp_flavour_ewan_3031_claim_adjacent_title_trigger = yes } - any_memory = { ep3_laamp_flavour_ewan_3031_formerly_claimed_title_trigger = yes } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3031 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3031 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Try to nab our titles. - ordered_close_or_extended_family_member = { - limit = { ep3_laamp_flavour_ewan_3031_family_title_trigger = yes } - order_by = { - # If we're a player, order it by their opinion of us. - if = { - limit = { is_ai = no } - value = "reverse_opinion(root)" - } - # Otherwise, order by our opinion of them. - else = { value = "opinion(root)" } - } - scope:title_temp = { save_scope_as = family_title } - } - ordered_claim = { - limit = { ep3_laamp_flavour_ewan_3031_claim_adjacent_title_trigger = yes } - order_by = { - # If we're a player, order it by their opinion of us. - if = { - limit = { holder = { is_ai = no } } - value = "holder.reverse_opinion(root)" - } - # Otherwise, order by our opinion of them. - else = { value = "holder.opinion(root)" } - } - save_scope_as = adjacent_title - } - random_memory = { - limit = { ep3_laamp_flavour_ewan_3031_formerly_claimed_title_trigger = yes } - var:old_primary_title = { save_scope_as = memory_title } - } - # Sort our portrait scopes. - scope:family_title ?= { - holder = { save_scope_as = portrait_1 } - } - scope:adjacent_title ?= { - if = { - limit = { exists = scope:portrait_1 } - holder = { save_scope_as = portrait_2 } - } - else = { - holder = { save_scope_as = portrait_1 } - } - } - scope:memory_title ?= { - if = { - limit = { exists = scope:portrait_2 } - holder = { save_scope_as = portrait_3 } - } - else_if = { - limit = { exists = scope:portrait_1 } - holder = { save_scope_as = portrait_2 } - } - else = { - holder = { save_scope_as = portrait_1 } - } - } - # Account for some stress that'd apply in every option. - stress_impact = { - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - } - } - - # Add the best extant title held by up to an extended family member. - option = { - name = ep3_laamp_flavour_ewan.3031.a - trigger = { exists = scope:family_title } - - add_pressed_claim = scope:family_title - reverse_add_opinion = { - target = scope:family_title.holder - modifier = audacity_opinion - opinion = -30 - } - - stress_impact = { - arbitrary = medium_stress_impact_loss - just = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - opinion_modifier = { - opinion_target = scope:family_title.holder - multiplier = -1 - } - } - } - - # Add another same-tier-or-higher title held by someone who holds a kingdom+title you have a claim on. - option = { - name = ep3_laamp_flavour_ewan.3031.b - trigger = { exists = scope:adjacent_title } - - add_pressed_claim = scope:adjacent_title - reverse_add_opinion = { - target = scope:adjacent_title.holder - modifier = audacity_opinion - opinion = -30 - } - - stress_impact = { - arbitrary = medium_stress_impact_loss - just = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - opinion_modifier = { - opinion_target = scope:adjacent_title.holder - multiplier = -1 - } - } - } - - # Regain claims to a title you have a memory of losing but don't have a claim on. - option = { - name = ep3_laamp_flavour_ewan.3031.c - trigger = { exists = scope:memory_title } - - add_pressed_claim = scope:memory_title - reverse_add_opinion = { - target = scope:memory_title.holder - modifier = audacity_opinion - opinion = -30 - } - - stress_impact = { - arbitrary = medium_stress_impact_loss - just = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - opinion_modifier = { - opinion_target = scope:memory_title.holder - multiplier = -1 - } - } - } - - # Fixate on future gains. - option = { - name = ep3_laamp_flavour_ewan.3031.d - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3031_d_brooding_over_titles_modifier - years = 10 - } - - # No stress for opt out. - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = 2 } - } - } -} - -################################################## -# People from a Better Time -# by Ewan Cowhig Croft -# # 3041 - 3050 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_3041_valid_memory_trigger = { - has_memory_type = became_landless_adventurer_memory - memory_age_years >= 5 - var:old_primary_title ?= { tier >= tier_kingdom } -} - -scripted_effect ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = { - random_de_jure_county = { - limit = { - holder = { - any_liege_or_above = { this = scope:former_title.holder } - } - NOT = { is_in_list = partisan_titles_list } - # Make sure players don't get caught in the crossfire. - trigger_if = { - limit = { - holder = { is_ai = no } - } - holder = scope:former_title.holder - } - } - weight = { - # Weight up stuff directly held by the usurper. - modifier = { - add = 10000 - holder = scope:former_title.holder - } - # And stuff adjacent to the capital, just to cluster the effects in large realms. - modifier = { - add = 100 - kingdom.title_capital_county = scope:former_title.capital_county - } - } - add_to_list = partisan_titles_list - } -} - -# Old loyalists join legitimist. -ep3_laamp_flavour_ewan.3041 = { - type = character_event - title = ep3_laamp_flavour_ewan.3041.t - desc = { - desc = ep3_laamp_flavour_ewan.3041.desc.intro - random_valid = { - triggered_desc = { - trigger = { has_trait = compassionate } - desc = ep3_laamp_flavour_ewan.3041.desc.compassionate - } - triggered_desc = { - trigger = { has_trait = sadistic } - desc = ep3_laamp_flavour_ewan.3041.desc.sadistic - } - triggered_desc = { - trigger = { has_trait = callous } - desc = ep3_laamp_flavour_ewan.3041.desc.callous - } - triggered_desc = { - trigger = { has_trait = wrathful } - desc = ep3_laamp_flavour_ewan.3041.desc.wrathful - } - triggered_desc = { - trigger = { has_trait = calm } - desc = ep3_laamp_flavour_ewan.3041.desc.calm - } - triggered_desc = { - trigger = { has_trait = arrogant } - desc = ep3_laamp_flavour_ewan.3041.desc.arrogant - } - triggered_desc = { - trigger = { has_trait = humble } - desc = ep3_laamp_flavour_ewan.3041.desc.humble - } - triggered_desc = { - trigger = { has_trait = ambitious } - desc = ep3_laamp_flavour_ewan.3041.desc.ambitious - } - triggered_desc = { - trigger = { has_trait = content } - desc = ep3_laamp_flavour_ewan.3041.desc.content - } - triggered_desc = { - trigger = { has_trait = arbitrary } - desc = ep3_laamp_flavour_ewan.3041.desc.arbitrary - } - triggered_desc = { - trigger = { has_trait = just } - desc = ep3_laamp_flavour_ewan.3041.desc.just - } - triggered_desc = { - trigger = { - NOR = { - has_trait = compassionate - has_trait = sadistic - has_trait = callous - has_trait = wrathful - has_trait = calm - has_trait = arrogant - has_trait = humble - has_trait = ambitious - has_trait = content - has_trait = arbitrary - has_trait = just - } - } - desc = ep3_laamp_flavour_ewan.3041.desc.fallback - } - } - first_valid = { - triggered_desc = { - trigger = { has_claim_on = scope:former_title } - desc = ep3_laamp_flavour_ewan.3041.desc.title_claimed - } - desc = ep3_laamp_flavour_ewan.3041.desc.title_forsaken - } - } - theme = laamp - left_portrait = { - character = root - animation = personality_bold - } - right_portrait = { - character = scope:commander - animation = marshal - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3041 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_legitimists - # And we have to be doing something with our lives. - prestige_level >= 2 - # Must have held a title some years ago. - any_memory = { ep3_laamp_flavour_ewan_3041_valid_memory_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3041 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3041 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Nab our title. - random_memory = { - limit = { ep3_laamp_flavour_ewan_3041_valid_memory_trigger = yes } - var:old_primary_title = { save_scope_as = former_title } - } - ## Plus pick titles to be affected by our partisans. - scope:former_title = { - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - ep3_laamp_flavour_ewan_3041_sort_partisan_titles_list_effect = yes - } - # Create a commander for the troops. - create_character = { - template = new_commander_character - culture = scope:former_title.capital_county.culture - faith = scope:former_title.capital_county.faith - location = root.location - gender_female_chance = root_soldier_female_chance - dynasty = none - save_scope_as = commander - after_creation = { - add_opinion = { - target = root - modifier = loyalty_opinion - opinion = 300 - } - } - } - ## Give 'em a nickname. - hidden_effect = { - scope:commander = { assign_random_nickname_effect = yes } - } - } - - # More troops for the royal army-in-exile! - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - any_claim = { tier >= tier_empire } - } - desc = ep3_laamp_flavour_ewan.3041.a.imperial - } - desc = ep3_laamp_flavour_ewan.3041.a.royal - } - } - } - - add_courtier = scope:commander - add_hook = { - type = loyalty_hook - target = scope:commander - } - spawn_army = { - name = legitimist_loyalists - levies = { - value = 200 - # Increase this by a step for every prestige level we have beyond the minimum. - add = { - value = prestige_level - add = -1 - } - } - men_at_arms = { - type = armored_footmen - men = { - value = 200 - # Increase this by a step for every prestige level we have beyond the minimum. - add = { - value = prestige_level - add = -1 - } - } - } - location = root.location - origin = scope:former_title.capital_county.title_province - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Your loyalty is noted, but best used to subvert scope:usurper's rule [go reinforce peasant faction]. - option = { - name = ep3_laamp_flavour_ewan.3041.b - trigger = { - NOT = { has_trait = deceitful } - # Can't be used against players unless it's _both_ players. - OR = { - scope:former_title.holder = { is_ai = yes } - AND = { - is_ai = no - scope:former_title.holder = { is_ai = no } - } - } - } - - every_in_list = { - list = partisan_titles_list - custom = ep3_laamp_flavour_ewan.3041.tt.up_to_ten_usurper_held_counties - change_county_control = -30 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # Deceitful: as above, but better. - option = { - name = ep3_laamp_flavour_ewan.3041.c - trigger = { - has_trait = deceitful - # Can't be used against players unless it's _both_ players. - OR = { - scope:former_title.holder = { is_ai = yes } - AND = { - is_ai = no - scope:former_title.holder = { is_ai = no } - } - } - } - trait = deceitful - - every_in_list = { - list = partisan_titles_list - custom = ep3_laamp_flavour_ewan.3041.tt.up_to_ten_usurper_held_counties - change_county_control = -50 - } - - stress_impact = { - deceitful = miniscule_stress_impact_loss - honest = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # I thank you, but I do not _need_ you. - option = { - name = ep3_laamp_flavour_ewan.3041.d - - add_prestige = medium_prestige_gain - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - ai_chance = { - # The AI should virtually never turn down free troops. - base = 1 - } - } - - after = { - # Clean up our captain if we're not a player. - if = { - limit = { - is_ai = yes - this != scope:captain.liege - } - scope:captain = { - death = { death_reason = death_vanished } - } - } - } -} - -################################################## -# Map Painting -# by Ewan Cowhig Croft -# # 3051 - 3060 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_3051_duel_and_spawn_artefact = { - duel = { - skill = diplomacy - value = $DUEL_DIFF$ - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3051.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3051.tt.success - create_artifact = { - name = handcrafted_map - description = { - random_valid = { - desc = handcrafted_map_desc.mythic_beasts - desc = handcrafted_map_desc.geography - desc = handcrafted_map_desc.settlements - desc = handcrafted_map_desc.people.urban - desc = handcrafted_map_desc.fauna - desc = handcrafted_map_desc.flora - desc = handcrafted_map_desc.government - desc = handcrafted_map_desc.tourism_sites - desc = handcrafted_map_desc.routes - desc = handcrafted_map_desc.people.rural - } - } - modifier = artifact_learning_$TIER$_modifier - modifier = artifact_diplomacy_$TIER$_modifier - type = miscellaneous - rarity = $RARITY$ - visuals = pocket_map - max_durability = 100 - save_scope_as = newly_created_map - } - scope:newly_created_map = { - set_variable = { - name = map_subject_title - value = root.location.empire - } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3051.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3051.tt.failure - add_stress = medium_stress_gain - } - } - } -} - -# Explorer writes/draws map of local area. -ep3_laamp_flavour_ewan.3051 = { - type = character_event - title = ep3_laamp_flavour_ewan.3051.t - desc = ep3_laamp_flavour_ewan.3051.desc - theme = laamp - left_portrait = { - character = root - animation = writing - } - artifact = { - target = scope:newly_created_map - position = lower_center_portrait - trigger = { exists = scope:newly_created_map } - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3051 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_explorers - # For tonal reasons, you can't be blind. - NOT = { has_trait = blind } - # Can't already have a map of this empire. - NOT = { - any_artifact = { - artifact_type = miscellaneous - # Deliberately not using ?= in case the NOT makes it go wonky. - has_variable = map_subject_title - var:map_subject_title = root.location.empire - } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3051 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3051 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Nab our location for loc. - location.kingdom = { save_scope_as = kingdom } - } - - # Go for an illustrious artefact. - option = { - name = ep3_laamp_flavour_ewan.3051.a - - ep3_laamp_flavour_ewan_3051_duel_and_spawn_artefact = { - DUEL_DIFF = extremely_high_skill_rating - RARITY = illustrious - TIER = 3 - } - - stress_impact = { - diligent = medium_stress_impact_loss - lazy = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 3 } - } - } - - # Go for a famed artefact. - option = { - name = ep3_laamp_flavour_ewan.3051.b - - ep3_laamp_flavour_ewan_3051_duel_and_spawn_artefact = { - DUEL_DIFF = very_high_skill_rating - RARITY = famed - TIER = 2 - } - - stress_impact = { - diligent = minor_stress_impact_loss - lazy = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 2 } - } - } - - # Go for a masterwork artefact. - option = { - name = ep3_laamp_flavour_ewan.3051.c - - ep3_laamp_flavour_ewan_3051_duel_and_spawn_artefact = { - DUEL_DIFF = high_skill_rating - RARITY = masterwork - TIER = 1 - } - - stress_impact = { - diligent = miniscule_stress_impact_loss - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Simply have fun with it. - option = { - name = ep3_laamp_flavour_ewan.3051.d - - # Consolation prestige. - add_prestige = medium_prestige_gain - - # Plus some solid stress loss. - add_stress = medium_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } -} - -################################################## -# A Guide to ... -# by Ewan Cowhig Croft -# # 3061 - 3070 -################################################## - -# Scholar writes book on local subject. -ep3_laamp_flavour_ewan.3061 = { - type = character_event - title = ep3_laamp_flavour_ewan.3061.t - desc = ep3_laamp_flavour_ewan.3061.desc - theme = laamp - left_portrait = { - character = root - animation = writing - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3061 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_scholars - # For tonal reasons, you can't be blind. - NOT = { has_trait = blind } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3061 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3061 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown - } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Write on peoples & places. - option = { - name = ep3_laamp_flavour_ewan.3061.a - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3061_peoples_and_places_modifier - years = 10 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Write on prose & poetry. - option = { - name = ep3_laamp_flavour_ewan.3061.b - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3061_prose_and_poetry_modifier - years = 10 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Write on plants & animals. - option = { - name = ep3_laamp_flavour_ewan.3061.c - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_3061_plants_and_animals_modifier - years = 10 - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = 1 } - } - } - - # Simply doodle some thoughts. - option = { - name = ep3_laamp_flavour_ewan.3061.d - - # Mostly just stress relief. - add_stress = major_stress_loss - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } -} - -################################################## -# The Law in Scope:location -# by Ewan Cowhig Croft -# # 3071 - 3080 -################################################## - -# Law attacks criminal gang. -ep3_laamp_flavour_ewan.3071 = { - type = character_event - title = ep3_laamp_flavour_ewan.3071.t - desc = ep3_laamp_flavour_ewan.3071.desc - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:local_soldier - animation = random_weapon_aggressive - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3071 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_brigands - # Sheriffs'll still try even against an army, just picking their moment, but even they have their limits. - current_military_strength < @ep3_laamp_flavour_ewan_baggage_train_has_very_significant_armed_force - # Plus make sure that we're kind of a dick. - calc_true_if = { - amount >= 2 - # We'll either take moderate progress in at least two tracks... - has_trait_xp = { - trait = gallowsbait - track = bandit - value >= 30 - } - has_trait_xp = { - trait = gallowsbait - track = trickster - value >= 30 - } - has_trait_xp = { - trait = gallowsbait - track = thief - value >= 30 - } - has_trait_xp = { - trait = gallowsbait - track = poacher - value >= 30 - } - has_trait_xp = { - trait = gallowsbait - track = marauder - value >= 30 - } - ## Or getting significant progress in any one track (since this'll count the prior increment as a separate validated trigger). - has_trait_xp = { - trait = gallowsbait - track = bandit - value >= 60 - } - has_trait_xp = { - trait = gallowsbait - track = trickster - value >= 60 - } - has_trait_xp = { - trait = gallowsbait - track = thief - value >= 60 - } - has_trait_xp = { - trait = gallowsbait - track = poacher - value >= 60 - } - has_trait_xp = { - trait = gallowsbait - track = marauder - value >= 60 - } - } - # County checks. - location.county = { - # Must be in both a high-security area. - county_control >= 100 - # And not currently doing a job for the land's ruler. - holder = { save_temporary_scope_as = holder_temp } - NOT = { - root = { - any_character_active_contract = { - task_contract_employer ?= { - save_temporary_scope_as = employer_temp - OR = { - this = scope:holder_temp - scope:holder_temp = { - any_liege_or_above = { this = scope:employer_temp } - } - } - } - } - } - } - # Plus make sure that the holder doesn't actually think we're pretty chill. - holder = { - opinion = { - target = root - value <= 35 - } - NOT = { - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root } - } - } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3071 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3071 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Create a local soldier. - hidden_effect_new_object = { - create_character = { - template = new_warrior_character - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = local_soldier - } - location.county.holder = { add_courtier = scope:local_soldier } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # SCE: duel the lead attacker. - option = { - name = ep3_laamp_flavour_ewan.3071.a - trigger = { can_start_single_combat_trigger = yes } - - custom_tooltip = { - text = duel_to_the_death.tt - configure_start_single_combat_effect = { - SC_INITIATOR = scope:local_soldier - SC_ATTACKER = scope:local_soldier - SC_DEFENDER = root - FATALITY = always - FIXED = no - LOCALE = terrain_scope - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = ep3_laamp_flavour_ewan.3072 - } - } - - stress_impact = { - brave = medium_stress_impact_loss - craven = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Intrigue insta-win: bring in your ambush immediately. - option = { - name = ep3_laamp_flavour_ewan.3071.b - trigger = { intrigue >= extremely_high_skill_rating } - skill = intrigue - - scope:local_soldier = { - death = { death_reason = death_battle } - } - add_prestige = medium_prestige_gain - - stress_impact = { deceitful = minor_stress_impact_loss } - ai_chance = { - # Honour or no, if you can insta-win, do it. - base = 1000 - } - } - - # Intrigue duel: you've got men nearby who can help. - option = { - name = ep3_laamp_flavour_ewan.3071.c - trigger = { intrigue < extremely_high_skill_rating } - - duel = { - skill = intrigue - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3071.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3071.c.tt.success - left_icon = scope:local_soldier - scope:local_soldier = { - death = { death_reason = death_battle } - } - add_prestige = medium_prestige_gain - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3071.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3071.c.tt.failure - left_icon = scope:local_soldier - increase_wounds_effect = { REASON = battle } - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { deceitful = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # Martial insta-win: your party easily counter-attacks. - option = { - name = ep3_laamp_flavour_ewan.3071.d - trigger = { martial >= extremely_high_skill_rating } - skill = martial - - scope:local_soldier = { - death = { death_reason = death_battle } - } - add_prestige = medium_prestige_gain - - # No stress here. - ai_chance = { - # Honour or no, if you can insta-win, do it. - base = 1000 - } - } - - # Martial duel: rally your small party against them. - option = { - name = ep3_laamp_flavour_ewan.3071.e - trigger = { martial < extremely_high_skill_rating } - - duel = { - skill = martial - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3071.e.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3071.e.tt.success - left_icon = scope:local_soldier - scope:local_soldier = { - death = { death_reason = death_battle } - } - add_prestige = medium_prestige_gain - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3071.e.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3071.e.tt.failure - left_icon = scope:local_soldier - increase_wounds_effect = { REASON = battle } - add_prestige = medium_prestige_loss - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = 1 - } - } - } - - # Flee. - option = { - name = ep3_laamp_flavour_ewan.3071.f - - random_list = { - 100 = { - desc = ep3_laamp_flavour_ewan.3071.f.success - add_prestige = minor_prestige_loss - } - 100 = { - desc = ep3_laamp_flavour_ewan.3071.f.failure - increase_wounds_effect = { REASON = battle } - add_prestige = medium_prestige_loss - } - } - - stress_impact = { - craven = medium_stress_impact_loss - brave = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = -2 } - } - } -} - -ep3_laamp_flavour_ewan.3072 = { - hidden = yes - - immediate = { - if = { - limit = { scope:sc_victor = root } - root = { - trigger_event = { - id = ep3_laamp_flavour_ewan.3073 - days = 1 - } - } - } - # No else: doesn't really matter if root is dead now, does it? - } -} - -# You won the single combat! -ep3_laamp_flavour_ewan.3073 = { - type = character_event - title = ep3_laamp_flavour_ewan.3073.t - desc = ep3_laamp_flavour_ewan.3073.desc - theme = laamp - left_portrait = { - character = root - animation = random_weapon_celebrate - } - override_background = { reference = battlefield } - - # Victory! - option = { - name = ep3_laamp_flavour_ewan.3073.a - - # We give you a bit more than the usual amount, since you risked your life overtly. - add_prestige = 250 - - # No stress here. - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } -} - -################################################## -# Wrestle for It -# by Ewan Cowhig Croft -# # 3081 - 3090 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_3081_challenging_courtier_trigger = { - can_start_single_combat_trigger = yes - ep3_laamp_flavour_ewan_available_courtier_trigger = yes - prowess >= medium_skill_rating - is_knight = yes - NOR = { - has_trait = shy - has_trait = humble - has_trait = lazy - } - # This is a friendly challenge, so make sure we're not getting an utter bastard to do it. - opinion = { - target = root - value >= 1 - } -} - -# Merc challenged to a wrastlin'. -ep3_laamp_flavour_ewan.3081 = { - type = character_event - title = ep3_laamp_flavour_ewan.3081.t - desc = ep3_laamp_flavour_ewan.3081.desc - theme = laamp - left_portrait = { - character = root - animation = stayback - } - right_portrait = { - character = scope:challenger - animation = wrestling_victory - } - override_background = { reference = army_camp } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_3081 } - } - # Must have the correct camp purpose. - has_realm_law = camp_purpose_mercenaries - # We're not _actually_ going to use the SCE, but it's a good benchmark for whether wrestling would even make sense. - can_start_single_combat_trigger = yes - # And we should have at least one courtier who'd be game to try. - any_courtier = { ep3_laamp_flavour_ewan_3081_challenging_courtier_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_3081 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_3081 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_long - } - } - # Grab a suitable courtier. - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_3081_challenging_courtier_trigger = yes } - order_by = { - value = prowess - # A few traits let you skip the queue (partially). - if = { - limit = { has_trait = wrathful } - add = 5 - } - if = { - limit = { has_trait = arrogant } - add = 5 - } - if = { - limit = { has_trait = athletic } - add = 5 - } - } - save_scope_as = challenger - } - } - - # Sure. - option = { - name = ep3_laamp_flavour_ewan.3081.a - - duel = { - skill = prowess - target = scope:challenger - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3081.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3081.a.tt.success - left_icon = scope:challenger - add_prestige = medium_prestige_gain - reverse_add_opinion = { - target = scope:challenger - modifier = respect_opinion - opinion = 40 - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.3081.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.3081.a.tt.failure - left_icon = scope:challenger - add_prestige = miniscule_prestige_gain - reverse_add_opinion = { - target = scope:challenger - modifier = respect_opinion - opinion = 20 - } - } - } - } - - stress_impact = { - humble = minor_stress_impact_loss - gregarious = miniscule_stress_impact_loss - shy = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - opinion_modifier = { opinion_target = scope:challenger } - } - } - - # Have HerHim beaten for even asking. - option = { - name = ep3_laamp_flavour_ewan.3081.b - - add_dread = 30 - reverse_add_opinion = { - target = scope:challenger - modifier = overreaction_opinion - opinion = -50 - } - scope:challenger = { increase_wounds_effect = { REASON = beaten } } - - stress_impact = { - sadistic = medium_stress_impact_loss - arrogant = minor_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = minor_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_vengefulness = 2 } - opinion_modifier = { - opinion_target = scope:challenger - multiplier = -1 - } - } - } - - # Hah, no. - option = { - name = ep3_laamp_flavour_ewan.3081.c - - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:challenger - modifier = haughty_opinion - opinion = -20 - } - - stress_impact = { - arrogant = minor_stress_impact_loss - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 2 } - } - } -} - - - - - - - - - - - -################################################## -# TRAVEL DANGER / SUPPLIES - - -################################################## -# Bandits! -# by Ewan Cowhig Croft -# 4001 - 4010 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4001_duel_victory_effect = { - add_prestige = { - value = medium_prestige_gain - if = { - limit = { scope:sc_victor ?= root } - # If you win the duel, we give you a bit more than the usual amount, since you risked your life overtly. - add = 100 - } - } - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4001_duel_defeat_effect = { - add_prestige = medium_prestige_loss - increase_wounds_effect = { REASON = bandit_attack } - domicile = { - change_provisions = { - value = scope:provisions_loss - multiply = -1 - } - } -} - -# Bandit raid whilst moving. -ep3_laamp_flavour_ewan.4001 = { - type = character_event - title = ep3_laamp_flavour_ewan.4001.t - desc = ep3_laamp_flavour_ewan.4001.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:bandit_leader - animation = threatening - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4001 } - } - # Must have the correct travel danger type. - location = { - travel_danger_type = { - travel_plan = root.current_travel_plan - type = county_control - } - } - # Bandits won't attack forces over a certain size, even assuming you're spread out in a long line. - current_military_strength < @ep3_laamp_flavour_ewan_baggage_train_has_significant_armed_force - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4001 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4001 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - # Nab this as a scope, as we may need it if the duel finishes up. - save_scope_as = laamp_title - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Create a hostile bandit. - create_character = { - template = bandit_character - location = root.location - culture = root.location.culture - faith = root.location.faith - martial = { - min_template_decent_skill - max_template_high_skill - } - prowess = { - min_template_decent_skill - max_template_high_skill - } - save_scope_as = bandit_leader - } - # How many provisions do we need to surrender? - save_scope_value_as = { - name = provisions_loss - value = { - add = domicile.provisions - multiply = 0.33 - floor = yes - min = @ep3_laamp_flavour_ewan_4000_min_provisions_worth_attacking - } - } - } - - # Martial duel to repel them. - option = { - name = ep3_laamp_flavour_ewan.4001.a - - duel = { - skill = martial - target = scope:bandit_leader - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4001.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4001.a.tt.success - left_icon = scope:bandit_leader - ep3_laamp_flavour_ewan_4001_duel_victory_effect = yes - scope:bandit_leader = { - death = { death_reason = death_attacking_laamp_train } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4001.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4001.a.tt.failure - left_icon = scope:bandit_leader - ep3_laamp_flavour_ewan_4001_duel_defeat_effect = yes - } - } - } - - stress_impact = { - brave = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = 1 - } - } - } - - # SCE: tackle the bandit leader head-on. - option = { - name = ep3_laamp_flavour_ewan.4001.b - trigger = { can_start_single_combat_trigger = yes } - - custom_tooltip = { - text = duel_to_the_death.tt - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:bandit_leader - FATALITY = always - FIXED = no - LOCALE = terrain_scope - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = ep3_laamp_flavour_ewan.4002 - } - } - - stress_impact = { - brave = medium_stress_impact_loss - craven = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # Brigands: back off, little fish. - option = { - name = ep3_laamp_flavour_ewan.4001.c - trigger = { has_realm_law = camp_purpose_brigands } - reason = purpose_brigands - - duel = { - skill = intrigue - target = scope:bandit_leader - # Victory! - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4001.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4001.c.tt.success - left_icon = scope:bandit_leader - ep3_laamp_flavour_ewan_4001_duel_victory_effect = yes - } - } - # Defeat. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4001.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4001.c.tt.failure - left_icon = scope:bandit_leader - ep3_laamp_flavour_ewan_4001_duel_defeat_effect = yes - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - humble = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -2 } - } - } - - # Surrender an amount of provisions to them. - option = { - name = ep3_laamp_flavour_ewan.4001.d - trigger = { domicile.provisions >= scope:provisions_loss } - show_as_unavailable = { always = yes } - - add_prestige = miniscule_prestige_loss - domicile = { - change_provisions = { - value = scope:provisions_loss - multiply = -1 - } - } - - stress_impact = { - craven = major_stress_impact_loss - brave = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = -2 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - -ep3_laamp_flavour_ewan.4002 = { - hidden = yes - - immediate = { - if = { - limit = { scope:sc_victor = root } - root = { - trigger_event = { - id = ep3_laamp_flavour_ewan.4003 - days = 1 - } - } - } - else = { - # Otherwise, remember to have the bandits loot. - scope:laamp_title.holder.domicile = { - change_provisions = { - value = scope:provisions_loss - multiply = -1 - } - } - } - } -} - -# You won the single combat! -ep3_laamp_flavour_ewan.4003 = { - type = character_event - title = ep3_laamp_flavour_ewan.4003.t - desc = ep3_laamp_flavour_ewan.4003.desc - theme = laamp - left_portrait = { - character = root - animation = random_weapon_celebrate - } - override_background = { reference = battlefield } - - # Victory! - option = { - name = ep3_laamp_flavour_ewan.4003.a - - ep3_laamp_flavour_ewan_4001_duel_victory_effect = yes - - # No stress here. - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } -} - -################################################## -# A Land of Milk & Honey -# by Ewan Cowhig Croft -# 4011 - 4020 -################################################## - -# Bountiful hunting/foraging. -ep3_laamp_flavour_ewan.4011 = { - type = character_event - title = ep3_laamp_flavour_ewan.4011.t - desc = ep3_laamp_flavour_ewan.4011.desc - theme = widgetless_travel - left_portrait = { - character = root - animation = happiness - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4011 } - } - # Must be in a nice, safe area with plentiful food. - current_travel_plan.current_danger_value <= 0 - location = { - county.county_control >= 100 - OR = { - terrain = farmlands - AND = { - terrain = floodplains - county.development_level >= 25 - } - } - } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4011 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4011 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Everyone loses stress. - stress_impact = { - base = medium_stress_loss - lazy = minor_stress_impact_loss - gluttonous = minor_stress_impact_loss - } - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - # No complex impact because it'll make the tooltips wonky. - add_stress = medium_stress_loss - } - # How many provisions do we take on? - random_list = { - 100 = { - save_scope_value_as = { - name = provisions_gain - value = medium_provisions_gain - } - } - 100 = { - save_scope_value_as = { - name = provisions_gain - value = major_provisions_gain - } - } - 100 = { - save_scope_value_as = { - name = provisions_gain - value = massive_provisions_gain - } - } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - } - - # Enjoy the fruits. - option = { - name = ep3_laamp_flavour_ewan.4011.a - - domicile = { change_provisions = scope:provisions_gain } - - # Stress handled in the immediate. - ai_chance = { - # Only one option, so no logic needed. - base = 1 - } - } -} - -################################################## -# Parched -# by Ewan Cowhig Croft -# 4021 - 4030 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4021_camp_avoids_dehydration_effect = { - add_prestige = minor_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = 20 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4021_increment_dehydration_effect = { - if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t3_modifier } - custom_tooltip = ep3_laamp_flavour_ewan.4021.tt.dehydration_already_at_worst - } - else_if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t2_modifier } - hidden_effect = { remove_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t2_modifier } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t3_modifier - years = 10 - } - } - else_if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t1_modifier } - hidden_effect = { remove_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t1_modifier } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t2_modifier - years = 10 - } - } - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t1_modifier - years = 10 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4021_camp_suffers_dehydration_effect = { - if = { - limit = { health <= good_health } - ep3_laamp_flavour_ewan_4021_increment_dehydration_effect = yes - } - every_courtier = { - limit = { - location = root.location - health <= good_health - } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - custom_tooltip = ep3_laamp_flavour_ewan.4021.tt.dehydration_increments - hidden_effect = { ep3_laamp_flavour_ewan_4021_increment_dehydration_effect = yes } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4021_delegate_search_to_officer_effect = { - custom_tooltip = ep3_laamp_flavour_ewan.4021.tt.officer_aptitude - random_list = { - 0 = { - desc = ep3_laamp_flavour_ewan.4021.tt.delegated_to_officer.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.tt.delegated_to_officer.success - left_icon = $OFFICER$ - ep3_laamp_flavour_ewan_4021_camp_avoids_dehydration_effect = yes - } - modifier = { - add = { - value = $APTITUDE$ - multiply = 20 - min = 5 - max = 95 - } - always = yes - } - } - 0 = { - desc = ep3_laamp_flavour_ewan.4021.tt.delegated_to_officer.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.tt.delegated_to_officer.failure - left_icon = $OFFICER$ - ep3_laamp_flavour_ewan_4021_camp_suffers_dehydration_effect = yes - } - modifier = { - add = { - value = 100 - add = { - add = $APTITUDE$ - multiply = -20 - } - min = 5 - max = 95 - } - always = yes - } - } - } -} - -# Difficulty finding water. -ep3_laamp_flavour_ewan.4021 = { - type = character_event - title = ep3_laamp_flavour_ewan.4021.t - desc = ep3_laamp_flavour_ewan.4021.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = stress - } - lower_left_portrait = scope:portrait_1 - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4021 } - } - # If we've already got the parched modifier, don't stack it past the max. - NOT = { has_character_modifier = ep3_laamp_flavour_ewan_4021_extended_period_of_dehydration_t3_modifier } - # Make sure we're not somewhere where we could credibly source water. - location = { - any_neighboring_province = { is_river_province = no } - # You can't drink coastal ocean water except for some inland freshwater seas, but they will tend to have tributaries flowing into them so we allow it. - is_coastal = no - } - # And make sure we're not absolutely swimming in supplies. - domicile ?= { provisions <= sixty_percent_provisions_value } - # Must have the correct travel danger type. - location = { - OR = { - travel_danger_type = { - travel_plan = root.current_travel_plan - terrain = desert - } - travel_danger_type = { - travel_plan = root.current_travel_plan - terrain = desert_mountains - } - # Some terrains depend on season. - AND = { - is_nice_season_to_be_outside_trigger = { LOCATION = root.location } - travel_danger_type = { - travel_plan = root.current_travel_plan - terrain = steppe - } - } - AND = { - is_nice_season_to_be_outside_trigger = { LOCATION = root.location } - travel_danger_type = { - travel_plan = root.current_travel_plan - terrain = drylands - } - } - } - } - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4021 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4021 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # If we have a forager or a huntsman, grab whichever is better at their job. - court_position:chief_forager_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - save_scope_as = forager - # We'll want their aptitude later. - save_scope_value_as = { - name = forager_apt - value = "aptitude(chief_forager_camp_officer)" - } - # Plus, register who we're showing a portrait of. - save_scope_as = portrait_1 - } - } - court_position:huntperson_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - save_scope_as = hunter - # We'll want their aptitude later. - save_scope_value_as = { - name = hunter_apt - value = "aptitude(huntperson_camp_officer)" - } - # Plus, register who we're showing a portrait of. - save_scope_as = portrait_1 - } - } - # Sort whose event option will be displayed. - ## If we have both, pick whichever is better (preferring the forager). - if = { - limit = { - exists = scope:forager - exists = scope:hunter - } - if = { - limit = { scope:forager_apt >= scope:hunter_apt } - save_scope_value_as = { - name = preferred_officer - value = flag:forager - } - } - else = { - save_scope_value_as = { - name = preferred_officer - value = flag:hunter - } - } - } - else_if = { - limit = { exists = scope:forager } - save_scope_value_as = { - name = preferred_officer - value = flag:forager - } - } - else_if = { - limit = { exists = scope:hunter } - save_scope_value_as = { - name = preferred_officer - value = flag:hunter - } - } - # Sort our duel diff according to what terrain we're in. - save_scope_value_as = { - name = duel_diff - value = { - if = { - limit = { - location = { terrain = desert } - } - add = very_high_skill_rating - } - if = { - limit = { - location = { terrain = desert_mountains } - } - add = extremely_high_skill_rating - } - if = { - limit = { - location = { terrain = steppe } - } - add = high_skill_rating - } - if = { - limit = { - location = { terrain = drylands } - } - add = decent_skill_rating - } - } - } - } - - weight_multiplier = { - modifier = { - add = 1 - ep3_laamp_flavour_ewan_0041_access_sahara_provision_options_trigger = yes - } - } - - # Learning duel: there must be _something_ around here... - option = { - name = ep3_laamp_flavour_ewan.4021.a - - duel = { - skill = intrigue - value = scope:duel_diff - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4021.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.a.tt.success - left_icon = scope:CHANGE_ME - ep3_laamp_flavour_ewan_4021_camp_avoids_dehydration_effect = yes - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4021.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.a.tt.failure - left_icon = scope:CHANGE_ME - ep3_laamp_flavour_ewan_4021_camp_suffers_dehydration_effect = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Chief forager: send them out searching. - option = { - name = ep3_laamp_flavour_ewan.4021.b - trigger = { scope:preferred_officer ?= flag:forager } - reason = have_chief_forager - - ep3_laamp_flavour_ewan_4021_delegate_search_to_officer_effect = { - OFFICER = scope:forager - APTITUDE = scope:forager_apt - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Huntsman: send them out searching. - option = { - name = ep3_laamp_flavour_ewan.4021.c - trigger = { scope:preferred_officer ?= flag:hunter } - reason = have_huntperson - - ep3_laamp_flavour_ewan_4021_delegate_search_to_officer_effect = { - OFFICER = scope:hunter - APTITUDE = scope:hunter_apt - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Reserve water: ration your way through this. - option = { - name = ep3_laamp_flavour_ewan.4021.d - trigger = { - domicile = { has_domicile_building = supply_tent_reserve_water } - } - reason = has_building_supply_tent_reserve_water - - add_prestige = minor_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - - # No stress here. - ai_chance = { - # If you have the good option, take the good option. - base = 1000 - } - } - - # Let's hope we're out of this hell soon. - option = { - name = ep3_laamp_flavour_ewan.4021.e - - random_list = { - 30 = { - desc = ep3_laamp_flavour_ewan.4021.e.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.e.tt.success - # Consolation prestige, since you took the "I'm inept and I did no planning" option. - add_prestige = minor_prestige_gain - } - modifier = { - add = -20 - location = { terrain = desert_mountains } - } - modifier = { - add = 25 - location = { terrain = drylands } - } - } - 70 = { - desc = ep3_laamp_flavour_ewan.4021.e.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4021.e.tt.failure - ep3_laamp_flavour_ewan_4021_camp_suffers_dehydration_effect = yes - } - modifier = { - add = 20 - location = { terrain = desert_mountains } - } - modifier = { - add = -25 - location = { terrain = drylands } - } - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - -################################################## -# Sickness in the Herd -# by Ewan Cowhig Croft -# 4031 - 4040 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4031_animals_treated_effect = { - add_prestige = minor_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_effect = { - add_prestige = minor_prestige_loss - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_modifier - years = 10 - } -} - -scripted_effect ep3_laamp_flavour_ewan_4031_cull_sick_animals_apply_opinions_effect = { - every_courtier = { - limit = { - location = root.location - has_trait = callous - } - custom = custom.every_callous_follower - add_opinion = { - target = root - modifier = practical_opinion - opinion = 40 - } - } - every_courtier = { - limit = { - location = root.location - has_trait = compassionate - } - custom = custom.every_compassionate_follower - add_opinion = { - target = root - modifier = callous_opinion - opinion = -40 - } - } -} - -# Pack animals are sick or wounded. -ep3_laamp_flavour_ewan.4031 = { - type = character_event - title = ep3_laamp_flavour_ewan.4031.t - desc = ep3_laamp_flavour_ewan.4031.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = stress - } - lower_left_portrait = scope:groom - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4031 } - } - # Make sure we're not already suffering from the previous effects of sickness amongst the animals. - NOR = { - has_character_modifier = ep3_laamp_flavour_ewan_4031_sickness_affects_some_of_herd_modifier - has_character_modifier = ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_modifier - has_character_modifier = ep3_laamp_flavour_ewan_4031_sickness_spreads_wildly_through_herd_modifier - has_character_modifier = ep3_laamp_flavour_ewan_4031_callous_culled_herd_modifier - has_character_modifier = ep3_laamp_flavour_ewan_4031_plentiful_steeds_culled_herd_modifier - has_character_modifier = ep3_laamp_flavour_ewan_4031_callous_and_plentiful_steeds_culled_herd_modifier - } - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4031 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4031 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # If we have a groom, nab 'em. - court_position:head_groom_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - save_scope_as = groom - # We'll want their aptitude later. - save_scope_value_as = { - name = groom_apt - value = "aptitude(head_groom_camp_officer)" - } - } - } - } - - # Learning duel to treat them. - option = { - name = ep3_laamp_flavour_ewan.4031.a - - duel = { - skill = learning - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4031.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.a.tt.success - ep3_laamp_flavour_ewan_4031_animals_treated_effect = yes - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4031.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.a.tt.failure - ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_effect = yes - } - } - } - - stress_impact = { compassionate = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - modifier = { - add = 50 - highest_skill = learning - } - } - } - - # Martial duel to treat them. - option = { - name = ep3_laamp_flavour_ewan.4031.b - - duel = { - skill = martial - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4031.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.b.tt.success - ep3_laamp_flavour_ewan_4031_animals_treated_effect = yes - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4031.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.b.tt.failure - ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_effect = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - modifier = { - add = 50 - highest_skill = martial - } - } - } - - # Head groom: up & at 'em m'droog. - option = { - name = ep3_laamp_flavour_ewan.4031.c - trigger = { exists = scope:groom } - - random_list = { - 0 = { - desc = ep3_laamp_flavour_ewan.4031.tt.delegated_to_officer.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.tt.delegated_to_officer.success - left_icon = scope:groom - ep3_laamp_flavour_ewan_4031_animals_treated_effect = yes - } - modifier = { - add = { - value = scope:groom_apt - multiply = 20 - min = 5 - max = 95 - } - always = yes - } - } - 0 = { - desc = ep3_laamp_flavour_ewan.4031.tt.delegated_to_officer.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.tt.delegated_to_officer.failure - left_icon = scope:groom - ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_effect = yes - } - modifier = { - add = { - value = 100 - add = { - add = scope:groom_apt - multiply = -20 - } - min = 5 - max = 95 - } - always = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Callous: slaughter and toss the sick ones, save the rest. - option = { - name = ep3_laamp_flavour_ewan.4031.d - trigger = { - has_trait = callous - NOT = { - domicile = { has_domicile_building = baggage_train_ample_steeds } - } - } - trait = callous - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_callous_culled_herd_modifier - years = 10 - } - ep3_laamp_flavour_ewan_4031_cull_sick_animals_apply_opinions_effect = yes - - stress_impact = { callous = medium_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - } - } - - # Plentiful Steeds: slaughter and toss the sick ones, save the rest. - option = { - name = ep3_laamp_flavour_ewan.4031.e - trigger = { - NOT = { has_trait = callous } - domicile = { has_domicile_building = baggage_train_ample_steeds } - } - reason = has_building_baggage_train_ample_steeds - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_plentiful_steeds_culled_herd_modifier - years = 10 - } - ep3_laamp_flavour_ewan_4031_cull_sick_animals_apply_opinions_effect = yes - - stress_impact = { - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - } - } - - # Callous & Plentiful Steeds: slaughter and toss the sick ones, save the rest. - option = { - name = ep3_laamp_flavour_ewan.4031.f - trigger = { - has_trait = callous - domicile = { has_domicile_building = baggage_train_ample_steeds } - } - reason = is_callous_has_building_baggage_train_ample_steeds - - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_callous_and_plentiful_steeds_culled_herd_modifier - years = 10 - } - ep3_laamp_flavour_ewan_4031_cull_sick_animals_apply_opinions_effect = yes - - stress_impact = { callous = major_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = -2 } - } - } - - # Carry on & pray to HealthGodName for mercy. - option = { - name = ep3_laamp_flavour_ewan.4031.g - - random_list = { - 10 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.g.tt.sickness_fades - custom_tooltip = ep3_laamp_flavour_ewan.4031.g.tt.some_of_herd.tt - } - } - 30 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.g.tt.sickness_contained - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_sickness_affects_some_of_herd_modifier - years = 10 - } - } - } - 40 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.g.tt.sickness_spreads - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_sickness_spreads_through_herd_modifier - years = 10 - } - } - } - 20 = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4031.g.tt.sickness_spreads_wildly - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4031_sickness_spreads_wildly_through_herd_modifier - years = 10 - } - } - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_zeal = 1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - -################################################## -# Fortuna's Tithe -# by Ewan Cowhig Croft -# 4041 - 4050 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = { - location = root.location - health <= good_health -} - -scripted_trigger ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = { - maa_current_troops_count >= 2 - root = { - OR = { - is_at_war = no - AND = { - is_at_war = yes - prev = { is_raised = no } - } - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_4041_use_snowy_forest_backdrop_trigger = { - OR = { - scope:weather_type = flag:storm_snow - scope:weather_type = flag:frozen_water - } -} - -scripted_effect ep3_laamp_flavour_ewan_4041_train_rallies_effect = { - add_prestige = medium_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = $OPINION$ - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = { - if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t3_modifier } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_already_at_worst - } - else_if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t2_modifier } - hidden_effect = { remove_character_modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t2_modifier } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t3_modifier - years = 8 - } - } - else_if = { - limit = { has_character_modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t1_modifier } - hidden_effect = { remove_character_modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t1_modifier } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t2_modifier - years = 8 - } - } - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_hypothermia_t1_modifier - years = 8 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4041_process_consequences_by_weather_type_effect = { - switch = { - trigger = scope:weather_type - flag:storm_thunder = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 40 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments - hidden_effect = { ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes } - } - if = { - limit = { - NOR = { - exists = scope:lightning_strike_happened - root.primary_title = { has_variable = had_ep3_laamp_flavour_ewan_4041_lightning_strike } - } - } - random = { - chance = 1 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.struck_by_lightning - hidden_effect = { - random_list = { - 60 = { - increase_wounds_effect = { REASON = struck_by_lightning } - increase_wounds_effect = { REASON = struck_by_lightning } - increase_wounds_effect = { REASON = struck_by_lightning } - } - 40 = { - death = { death_reason = death_struck_by_lightning } - } - } - save_scope_as = lightning_strike_happened - root = { - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4041_lightning_strike - value = scope:lightning_strike_happened - years = 50 - } - } - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.tt.struck_by_lightning - if = { - limit = { - scope:lightning_strike_happened = { is_alive = no } - } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.struck_by_lightning.dead - } - else = { custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.struck_by_lightning.alive } - } - } - } - } - } - } - } - flag:storm_wind = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 25 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments - hidden_effect = { ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes } - } - } - } - flag:storm_snow = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 60 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments_twice - hidden_effect = { - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - } - } - } - } - flag:storm_sand = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 50 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.modifier_worse_for_vulnerable_characters - hidden_effect = { - if = { - limit = { - OR = { - is_adult = no - AND = { - is_female = yes - age >= Define:NCharacter|FEMALE_ELDERLY_AGE - } - AND = { - is_male = yes - age >= Define:NCharacter|MALE_ELDERLY_AGE - } - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_sandstorm_lungs_vulnerable_modifier - years = 10 - } - } - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_sandstorm_lungs_adult_modifier - years = 5 - } - } - } - } - } - } - flag:wild_fires = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 30 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.modifier_worse_for_vulnerable_characters - hidden_effect = { - if = { - limit = { - OR = { - is_adult = no - AND = { - is_female = yes - age >= Define:NCharacter|FEMALE_ELDERLY_AGE - } - AND = { - is_male = yes - age >= Define:NCharacter|MALE_ELDERLY_AGE - } - } - } - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_wildfire_lungs_vulnerable_modifier - years = 10 - } - } - else = { - add_character_modifier = { - modifier = ep3_laamp_flavour_ewan_4041_wildfire_lungs_adult_modifier - years = 5 - } - } - } - } - if = { - limit = { - # Some people can always outrun the flames... - trigger_if = { - limit = { - # ... unless fate has been especially cruel. - NOT = { has_trait = one_legged } - } - NOR = { - has_trait = athletic - has_trait = strong - has_trait = physique_good - } - } - } - random = { - chance = 5 - death = { death_reason = death_burnt_in_wild_fire } - } - } - } - every_maa_regiment = { - limit = { ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = yes } - custom = ep3_laamp_flavour_ewan.4041.tt.every_regiment - random = { - chance = 40 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.regiments_take_damage_range.wildfire - hidden_effect = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = { - integer_range = { - min = ep3_laamp_flavour_ewan_4041_regiment_damage_wildfires_min - max = ep3_laamp_flavour_ewan_4041_regiment_damage_wildfires_max - } - } - multiply = -1 - } - } - } - } - } - flag:avalanches = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 60 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments_twice - hidden_effect = { - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - } - } - if = { - limit = { - NOR = { - has_trait = winter_soldier - has_trait = rough_terrain_expert - } - } - random = { - chance = 5 - death = { death_reason = death_swept_away_by_avalanche } - } - } - } - every_maa_regiment = { - limit = { ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = yes } - custom = ep3_laamp_flavour_ewan.4041.tt.every_regiment - random = { - chance = { - value = 40 - # Big ups to the Barcas. - if = { - limit = { is_unit_type = elephant_cavalry } - add = 40 - } - } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.regiments_take_damage_range.avalanche - hidden_effect = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = { - integer_range = { - min = ep3_laamp_flavour_ewan_4041_regiment_damage_avalanches_min - max = ep3_laamp_flavour_ewan_4041_regiment_damage_avalanches_max - } - } - multiply = -1 - } - } - } - } - } - flag:flash_floods = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 30 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments - hidden_effect = { ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes } - } - if = { - limit = { - # Except strong/veteran swimmers... - trigger_if = { - limit = { - # ... unless fate has been especially cruel. - NOT = { has_trait = one_legged } - } - NOR = { - has_trait = forder - has_trait = athletic - has_trait = strong - has_trait = physique_good - } - } - } - random = { - chance = 5 - death = { death_reason = death_swept_away_by_flash_flood } - } - } - } - every_maa_regiment = { - limit = { ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = yes } - custom = ep3_laamp_flavour_ewan.4041.tt.every_regiment - random = { - chance = { - value = 40 - # Big ups to the Barcas. - if = { - limit = { is_unit_type = elephant_cavalry } - add = 40 - } - } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.regiments_take_damage_range.flash_floods - hidden_effect = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = { - integer_range = { - min = ep3_laamp_flavour_ewan_4041_regiment_damage_flash_floods_min - max = ep3_laamp_flavour_ewan_4041_regiment_damage_flash_floods_max - } - } - multiply = -1 - } - } - } - } - } - flag:frozen_water = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 50 - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.hypothermia_increments_twice - hidden_effect = { - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - ep3_laamp_flavour_ewan_4041_increment_hypothermia_effect = yes - } - } - if = { - limit = { - NOT = { has_trait = winter_soldier } - # No swimming exception on this one: the shock of it, especially in thick winter clothing, is gonna paralyse you. - } - random = { - chance = 5 - death = { death_reason = death_drowned_in_hidden_icy_water } - } - } - } - every_maa_regiment = { - limit = { ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = yes } - custom = ep3_laamp_flavour_ewan.4041.tt.every_regiment - random = { - chance = { - value = 30 - # Heavier MaA types & cavalry are screwed. - if = { - limit = { - OR = { - is_unit_type = elephant_cavalry - is_unit_type = camel_cavalry - is_unit_type = heavy_cavalry - is_unit_type = light_cavalry - is_unit_type = heavy_infantry - is_unit_type = siege_weapon - } - } - add = 30 - } - # Anything lighter, or at least not mounted, can at least _try_ to bolt. - else_if = { - limit = { - OR = { - is_unit_type = skirmishers - is_unit_type = archers - is_unit_type = pikemen - } - } - add = -20 - } - } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.regiments_take_damage_range.frozen_water - hidden_effect = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = { - integer_range = { - min = ep3_laamp_flavour_ewan_4041_regiment_damage_frozen_water_min - max = ep3_laamp_flavour_ewan_4041_regiment_damage_frozen_water_max - } - } - multiply = -1 - } - } - } - } - } - flag:earthquake = { - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4041_here_and_not_peak_health_trigger = yes } - custom = ep3_laamp_flavour_ewan.4021.tt.every_courtier_at_your_location_with_less_than_excellent_health - random = { - chance = 25 - death = { death_reason = death_consumed_by_earthquake } - } - } - every_maa_regiment = { - limit = { ep3_laamp_flavour_ewan_4041_valid_regiment_trigger = yes } - custom = ep3_laamp_flavour_ewan.4041.tt.every_regiment - random = { - chance = { - value = 50 - # Heavier MaA types are screwed. - if = { - limit = { - OR = { - is_unit_type = elephant_cavalry - is_unit_type = heavy_infantry - is_unit_type = siege_weapon - is_unit_type = heavy_cavalry - } - } - add = 30 - } - # Anything lighter can at least _try_ to bolt. - else_if = { - limit = { - OR = { - is_unit_type = skirmishers - is_unit_type = archers - } - } - add = -30 - } - } - custom_tooltip = ep3_laamp_flavour_ewan.4041.tt.regiments_take_damage_range.earthquake - hidden_effect = { - change_maa_troops_count = { - value = maa_current_troops_count - multiply = { - integer_range = { - min = ep3_laamp_flavour_ewan_4041_regiment_damage_earthquake_min - max = ep3_laamp_flavour_ewan_4041_regiment_damage_earthquake_max - } - } - multiply = -1 - } - } - } - } - } - } -} - -# Bad weather destroys wagons or pack animals. -ep3_laamp_flavour_ewan.4041 = { - type = character_event - title = ep3_laamp_flavour_ewan.4041.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:weather_type = flag:storm_thunder } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.storm.thunder - } - triggered_desc = { - trigger = { scope:weather_type = flag:storm_wind } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.storm.wind - } - triggered_desc = { - trigger = { scope:weather_type = flag:storm_snow } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.storm.snow - } - triggered_desc = { - trigger = { scope:weather_type = flag:storm_sand } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.storm.sand - } - triggered_desc = { - trigger = { scope:weather_type = flag:wild_fires } - desc = { - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.wild_fires.intro - first_valid = { - triggered_desc = { - trigger = { - location = { - OR = { - terrain = steppe - terrain = drylands - } - } - } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.wild_fires.scrub - } - triggered_desc = { - trigger = { - location = { - OR = { - terrain = hills - terrain = mountains - } - } - } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.wild_fires.slopes - } - triggered_desc = { - trigger = { - location = { - OR = { - terrain = jungle - terrain = forest - terrain = taiga - } - } - } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.wild_fires.treeline - } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.wild_fires.fallback - } - } - } - triggered_desc = { - trigger = { scope:weather_type = flag:avalanches } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.avalanche - } - triggered_desc = { - trigger = { scope:weather_type = flag:flash_floods } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.flood - } - triggered_desc = { - trigger = { scope:weather_type = flag:frozen_water } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.frozen_water - } - triggered_desc = { - trigger = { scope:weather_type = flag:earthquake } - desc = ep3_laamp_flavour_ewan.4041.desc.weather_type.earthquake - } - } - desc = ep3_laamp_flavour_ewan.4041.desc.outro - } - theme = widgetless_travel_danger - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - scope:weather_type = flag:storm_thunder - scope:weather_type = flag:storm_snow - scope:weather_type = flag:storm_wind - } - } - animation = shiver - } - animation = shock - } - override_background = { - trigger = { ep3_laamp_flavour_ewan_4041_use_snowy_forest_backdrop_trigger = yes } - reference = wilderness - } - override_background = { - trigger = { ep3_laamp_flavour_ewan_4041_use_snowy_forest_backdrop_trigger = no } - reference = wilderness - } - # ALL THE VFX! - override_effect_2d = { - trigger = { scope:weather_type = flag:wild_fires } - reference = smoke - } - widgets = { - widget = { - is_shown = { - OR = { - scope:weather_type = flag:storm_snow - scope:weather_type = flag:avalanches - scope:weather_type = flag:frozen_water - } - } - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:storm_thunder } - gui = "event_window_widget_vfx_lightning_storm" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:storm_wind } - gui = "event_window_widget_vfx_rain_storm" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:storm_sand } - gui = "event_window_widget_vfx_sandstorm" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:wild_fires } - gui = "event_window_widget_vfx_heavy_smoke" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:flash_floods } - gui = "event_window_widget_vfx_rainy_fog" - container = "foreground_shader_vfx_container" - } - widget = { - is_shown = { scope:weather_type = flag:earthquake } - gui = "event_window_widget_vfx_earthquake" - container = "foreground_shader_vfx_container" - } - } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4041 } - } - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4041 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4041 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Roll our severe weather type. - random_list = { - # Some storms can happen anywhere. - ## Thunder. - 250 = { - trigger = { - location = { - NOR = { - terrain = desert - terrain = desert_mountains - terrain = oasis - } - } - } - save_scope_value_as = { - name = weather_type - value = flag:storm_thunder - } - } - ## Wind. - 250 = { - trigger = { - location = { - NOR = { - terrain = desert - terrain = desert_mountains - terrain = oasis - } - } - } - save_scope_value_as = { - name = weather_type - value = flag:storm_wind - } - } - # Snow storms. - 100 = { - trigger = { - location_has_normal_or_worse_winter_trigger = yes - # Some people won't consider this excessive hardship. - NOR = { - culture_uses_frequent_winter_transportation_trigger = yes - has_trait = winter_soldier - } - } - save_scope_value_as = { - name = weather_type - value = flag:storm_snow - } - } - # Sand storms. - 100 = { - trigger = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - terrain = oasis - } - } - } - save_scope_value_as = { - name = weather_type - value = flag:storm_sand - } - } - # Wild fires. - 100 = { - trigger = { - # Is it summer where we are? - is_nice_season_to_be_outside_trigger = { LOCATION = root.location } - # If so, proceed. - location = { - # Just in case, since winter may retreat late in Siberia but wild fires do happen. - county = { county_has_winter_trigger = no } - # Suitable terrains. - OR = { - terrain = plains - terrain = farmlands - terrain = hills - terrain = mountains - terrain = jungle - terrain = forest - terrain = taiga - terrain = steppe - terrain = drylands - } - # And places where they occur. - OR = { - geographical_region = world_europe_south - geographical_region = world_europe_east - geographical_region = world_asia_minor - geographical_region = world_middle_east - geographical_region = world_india - geographical_region = world_africa - geographical_region = world_steppe - geographical_region = world_burma - geographical_region = world_asia_china - geographical_region = world_asia_japan - geographical_region = world_asia_korea - geographical_region = world_asia_southeast - } - } - } - save_scope_value_as = { - name = weather_type - value = flag:wild_fires - } - } - # Avalanches. - 200 = { - trigger = { - location_has_normal_or_worse_winter_trigger = yes - location = { terrain = mountains } - # Some people won't consider this excessive hardship. - NOR = { - has_trait = rough_terrain_expert - culture = { has_cultural_parameter = mountain_trait_bonuses } - } - } - save_scope_value_as = { - name = weather_type - value = flag:avalanches - } - } - # Flood. - 200 = { - trigger = { - OR = { - location = { - OR = { - terrain = floodplains - terrain = wetlands - } - } - AND = { - current_season_wet = yes - location = { - OR = { - is_coastal = yes - any_neighboring_province = { is_river_province = yes } - terrain = plains - terrain = hills - terrain = farmlands - terrain = jungle - terrain = forest - } - # Some places will never have floods — not that they mightn't IRL, but they'd be potentially verisimilitude-breaking at a glance IG. - NOR = { - terrain = mountains - terrain = desert - terrain = desert_mountains - terrain = oasis - } - } - } - } - # Some people won't consider this excessive hardship. - NOT = { has_trait = forder } - } - save_scope_value_as = { - name = weather_type - value = flag:flash_floods - } - } - # Frozen water. - 200 = { - trigger = { - location_has_normal_or_worse_winter_trigger = yes - location = { - OR = { - terrain = plains - terrain = forest - terrain = taiga - } - } - # Rule out anyone who wouldn't be fooled by this. - NOR = { - culture_uses_frequent_winter_transportation_trigger = yes - has_trait = winter_soldier - } - } - save_scope_value_as = { - name = weather_type - value = flag:frozen_water - } - } - # Earthquakes. - 10 = { - trigger = { - location = { - OR = { - geographical_region = world_europe_south_east - geographical_region = world_europe_south_italy - geographical_region = world_asia_minor - geographical_region = world_middle_east_persia - geographical_region = world_tibet - geographical_region = world_himalaya - geographical_region = world_burma - geographical_region = world_asia_china - geographical_region = world_asia_japan - geographical_region = world_asia_korea - geographical_region = world_asia_southeast - # Plus some places but _only_ in their mountainous/hilly areas. - AND = { - geographical_region = ghw_region_iberia - OR = { - terrain = mountains - terrain = desert_mountains - terrain = hills - } - } - AND = { - geographical_region = ghw_region_north_africa - OR = { - terrain = mountains - terrain = desert_mountains - terrain = hills - } - } - AND = { - geographical_region = ghw_region_horn_of_africa - OR = { - terrain = mountains - terrain = desert_mountains - terrain = hills - } - } - } - } - } - save_scope_value_as = { - name = weather_type - value = flag:earthquake - } - # If this isn't the direct holding of a player, cause some serious damage. - location.county = { - holder = { - if = { - limit = { - is_ai = yes - } - random_courtier = { - limit = { location = prev.location } - death = { death_reason = death_consumed_by_earthquake } - } - random_courtier = { - limit = { location = prev.location } - death = { death_reason = death_consumed_by_earthquake } - } - random_courtier = { - limit = { location = prev.location } - death = { death_reason = death_consumed_by_earthquake } - } - random_courtier = { - limit = { location = prev.location } - death = { death_reason = death_consumed_by_earthquake } - } - prev = { - change_development_level = { - integer_range = { - min = -35 - max = -10 - } - } - change_county_control = -100 - } - random = { - chance = 20 - death = { death_reason = death_consumed_by_earthquake } - } - } - } - } - } - } - } - - # Martial duel to get things going. - option = { - name = ep3_laamp_flavour_ewan.4041.a - - duel = { - skill = martial - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4041.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.a.tt.success - ep3_laamp_flavour_ewan_4041_train_rallies_effect = { OPINION = 30 } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4041.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.a.tt.failure - ep3_laamp_flavour_ewan_4041_process_consequences_by_weather_type_effect = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Stewardship duel to get things going. - option = { - name = ep3_laamp_flavour_ewan.4041.b - - duel = { - skill = stewardship - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4041.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.b.tt.success - ep3_laamp_flavour_ewan_4041_train_rallies_effect = { OPINION = 30 } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4041.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.b.tt.failure - ep3_laamp_flavour_ewan_4041_process_consequences_by_weather_type_effect = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - } - } - - # Stubborn: come on, _heave_! - option = { - name = ep3_laamp_flavour_ewan.4041.c - trigger = { has_trait = stubborn } - trait = stubborn - - random_list = { - 50 = { - desc = ep3_laamp_flavour_ewan.4041.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.c.tt.success - ep3_laamp_flavour_ewan_4041_train_rallies_effect = { OPINION = 40 } - } - } - 50 = { - desc = ep3_laamp_flavour_ewan.4041.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.c.tt.failure - ep3_laamp_flavour_ewan_4041_process_consequences_by_weather_type_effect = yes - } - } - } - - stress_impact = { stubborn = minor_stress_impact_loss } - ai_chance = { - # If you're stubborn, you're quite likely to uhhh... be stubborn. - base = 100 - } - } - - # Pray to FateGodName & hope. - option = { - name = ep3_laamp_flavour_ewan.4041.d - trigger = { - NOT = { has_trait = stubborn } - } - - random_list = { - 25 = { - desc = ep3_laamp_flavour_ewan.4041.d.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.d.tt.success - add_prestige = minor_prestige_gain - } - } - 75 = { - desc = ep3_laamp_flavour_ewan.4041.d.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4041.d.tt.failure - add_piety = minor_piety_loss - ep3_laamp_flavour_ewan_4041_process_consequences_by_weather_type_effect = yes - } - } - } - - stress_impact = { - zealous = miniscule_stress_impact_loss - cynical = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_zeal = 1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - -################################################## -# Supplies Unaccounted For -# by Ewan Cowhig Croft -# 4051 - 4060 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4051_roll_duel_effect = { - duel = { - skill = $SKILL$ - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = $VICTORY_LOC$ - send_interface_toast = { - title = $VICTORY_LOC$ - add_prestige = minor_prestige_gain - custom_tooltip = ep3_laamp_flavour_ewan.4051.tt.most_provisions_regained - domicile = { - change_provisions = { - value = scope:provisions_tally - multiply = 0.8 - ceiling = yes - } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = $DEFEAT_LOC$ - send_interface_toast = { - title = $DEFEAT_LOC$ - random_list = { - 40 = { - custom_tooltip = ep3_laamp_flavour_ewan.4051.tt.some_provisions_regained - domicile = { - change_provisions = { - value = scope:provisions_tally - multiply = 0.2 - ceiling = yes - } - } - } - 60 = { custom_tooltip = ep3_laamp_flavour_ewan.4051.tt.provisions_lost } - } - } - } - } -} - -# Supplies go missing in large armies. -ep3_laamp_flavour_ewan.4051 = { - type = character_event - title = ep3_laamp_flavour_ewan.4051.t - desc = ep3_laamp_flavour_ewan.4051.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = anger - } - override_background = { reference = army_camp } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4051 } - } - # No one would seriously try this in a smaller baggage train. - ## Outside of that one gallowsbait event, of course. - current_military_strength >= @ep3_laamp_flavour_ewan_baggage_train_has_significant_armed_force - # Plus make sure we've got enough provisions for someone to try it on. - domicile.provisions >= @ep3_laamp_flavour_ewan_4051_minimum_provisions_count - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4051 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4051 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Lose an amount of provisions scaling to how many we currently have. - domicile = { - if = { - limit = { provisions >= 1000 } - # Register how many we're expending so we can try to get most of them back. - save_scope_value_as = { - name = provisions_tally - value = 300 - } - change_provisions = { - value = scope:provisions_tally - multiply = -1 - } - } - else_if = { - limit = { provisions >= 750 } - # Register how many we're expending so we can try to get most of them back. - save_scope_value_as = { - name = provisions_tally - value = 250 - } - change_provisions = { - value = scope:provisions_tally - multiply = -1 - } - } - else_if = { - limit = { provisions >= 500 } - # Register how many we're expending so we can try to get most of them back. - save_scope_value_as = { - name = provisions_tally - value = 150 - } - change_provisions = { - value = scope:provisions_tally - multiply = -1 - } - } - else_if = { - limit = { provisions >= 250 } - # Register how many we're expending so we can try to get most of them back. - save_scope_value_as = { - name = provisions_tally - value = 75 - } - change_provisions = { - value = scope:provisions_tally - multiply = -1 - } - } - else = { - # Register how many we're expending so we can try to get most of them back. - save_scope_value_as = { - name = provisions_tally - value = 50 - } - change_provisions = { - value = scope:provisions_tally - multiply = -1 - } - } - } - } - - # Martial duel to find who's responsible. - option = { - name = ep3_laamp_flavour_ewan.4051.a - - ep3_laamp_flavour_ewan_4051_roll_duel_effect = { - SKILL = martial - VICTORY_LOC = ep3_laamp_flavour_ewan.4051.a.tt.success - DEFEAT_LOC = ep3_laamp_flavour_ewan.4051.a.tt.failure - } - - stress_impact = { wrathful = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Stewardship duel to find who's responsible. - option = { - name = ep3_laamp_flavour_ewan.4051.b - - ep3_laamp_flavour_ewan_4051_roll_duel_effect = { - SKILL = stewardship - VICTORY_LOC = ep3_laamp_flavour_ewan.4051.b.tt.success - DEFEAT_LOC = ep3_laamp_flavour_ewan.4051.b.tt.failure - } - - stress_impact = { diligent = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_greed = 1 } - } - } - - # Intrigue duel to find who's responsible. - option = { - name = ep3_laamp_flavour_ewan.4051.c - - ep3_laamp_flavour_ewan_4051_roll_duel_effect = { - SKILL = intrigue - VICTORY_LOC = ep3_laamp_flavour_ewan.4051.c.tt.success - DEFEAT_LOC = ep3_laamp_flavour_ewan.4051.c.tt.failure - } - - stress_impact = { deceitful = miniscule_stress_impact_loss } - ai_chance = { - base = 1 - ai_value_modifier = { ai_honor = -1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - -################################################## -# Eyes in the Night -# by Ewan Cowhig Croft -# 4061 - 4070 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_4061_local_cannibal_trigger = { - OR = { - has_trait = cannibal - any_secret = { type = secret_cannibal } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - # Alright, figure out how big our size mult'll be. - save_scope_value_as = { - name = hunter_size - value = { - integer_range = { - min = $MIN$ - max = $MAX$ - } - } - } - # And set up our duel diffs. - save_scope_value_as = { - name = duel_diff_safe - value = { - value = scope:hunter_size - multiply = 2.5 - floor = yes - min = 10 - max = 20 - } - } - save_scope_value_as = { - name = duel_diff_risky - value = { - value = scope:hunter_size - multiply = 3.5 - floor = yes - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4061_roll_courtier_deaths_effect = { - if = { - limit = { scope:hunter_size >= 9 } - random_courtier = { - limit = { location = root.location } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_1 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - this != scope:death_1 - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_2 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - NOR = { - this = scope:death_1 - this = scope:death_2 - } - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_3 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - NOR = { - this = scope:death_1 - this = scope:death_2 - this = scope:death_3 - } - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - death = { death_reason = death_hunted_by_wild_beast } - } - } - else_if = { - limit = { scope:hunter_size >= 6 } - random_courtier = { - limit = { location = root.location } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_1 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - this != scope:death_1 - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_2 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - NOR = { - this = scope:death_1 - this = scope:death_2 - } - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - death = { death_reason = death_hunted_by_wild_beast } - } - } - else_if = { - limit = { scope:hunter_size >= 3 } - random_courtier = { - limit = { location = root.location } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_1 - death = { death_reason = death_hunted_by_wild_beast } - } - random_courtier = { - limit = { - location = root.location - this != scope:death_1 - } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - save_scope_as = death_2 - death = { death_reason = death_hunted_by_wild_beast } - } - } - else = { - random_courtier = { - limit = { location = root.location } - weight = { - base = 50 - modifier = { - add = { - add = prowess - add = { - value = martial - multiply = 0.5 - } - multiply = -1 - } - } - } - death = { death_reason = death_hunted_by_wild_beast } - } - } -} - -# Local predator picking off people each evening. -ep3_laamp_flavour_ewan.4061 = { - type = character_event - title = ep3_laamp_flavour_ewan.4061.t - desc = { - desc = ep3_laamp_flavour_ewan.4061.desc.intro - # Animal size. - first_valid = { - triggered_desc = { - trigger = { scope:hunter_size >= 12 } - desc = ep3_laamp_flavour_ewan.4061.desc.size.titanic - } - triggered_desc = { - trigger = { scope:hunter_size >= 10 } - desc = ep3_laamp_flavour_ewan.4061.desc.size.colossal - } - triggered_desc = { - trigger = { scope:hunter_size >= 8 } - desc = ep3_laamp_flavour_ewan.4061.desc.size.mammoth - } - triggered_desc = { - trigger = { scope:hunter_size >= 6 } - desc = ep3_laamp_flavour_ewan.4061.desc.size.huge - } - triggered_desc = { - trigger = { scope:hunter_size >= 4 } - desc = ep3_laamp_flavour_ewan.4061.desc.size.large - } - desc = ep3_laamp_flavour_ewan.4061.desc.size.nimble - } - desc = ep3_laamp_flavour_ewan.4061.desc.midtro - # Sight. - first_valid = { - triggered_desc = { - trigger = { has_trait = blind } - desc = ep3_laamp_flavour_ewan.4061.desc.sight.blind - } - desc = ep3_laamp_flavour_ewan.4061.desc.sight.sighted - } - # Terrain - first_valid = { - triggered_desc = { - trigger = { - location = { - any_neighboring_province = { is_river_province = yes } - } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.major_river - } - triggered_desc = { - trigger = { - location = { terrain = farmlands } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.farmlands - } - triggered_desc = { - trigger = { - location = { terrain = hills } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.hills - } - triggered_desc = { - trigger = { - location = { terrain = mountains } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.mountains - } - triggered_desc = { - trigger = { - location = { terrain = desert } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.desert - } - triggered_desc = { - trigger = { - location = { terrain = desert_mountains } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.desert_mountains - } - triggered_desc = { - trigger = { - location = { terrain = oasis } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.oasis - } - triggered_desc = { - trigger = { - location = { terrain = jungle } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.jungle - } - triggered_desc = { - trigger = { - location = { terrain = forest } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.forest - } - triggered_desc = { - trigger = { - location = { terrain = taiga } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.taiga - } - triggered_desc = { - trigger = { - location = { terrain = wetlands } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.wetlands - } - triggered_desc = { - trigger = { - location = { terrain = steppe } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.steppe - } - triggered_desc = { - trigger = { - location = { terrain = floodplains } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.floodplains - } - triggered_desc = { - trigger = { - location = { terrain = drylands } - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.drylands - } - desc = ep3_laamp_flavour_ewan.4061.desc.terrain.plains - } - desc = ep3_laamp_flavour_ewan.4061.desc.outro - } - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = worry - } - # Night would be more dramatic, but the follow-up wilderness events _have_ to be during the day due to art constraints, so we start off in the morning instead. - override_background = { reference = corridor_day } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4061 } - } - # Narrative'll break if you don't have _some_ available courtiers. - any_courtier = { location = root.location } - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4061 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4061 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_short - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Roll our large Old World man-eater. - random_list = { - # Feral Dog (fallback) - 25 = { - save_scope_value_as = { - name = hunter_type - value = flag:dog - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 4 - } - } - # Wolf - 250 = { - trigger = { - location = { hunt_animal_wolf_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:wolf - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 2 - MAX = 4 - } - } - # Hyena - 200 = { - trigger = { - location = { hunt_animal_hyena_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:hyena - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 4 - } - } - # Lion - 200 = { - trigger = { - location = { hunt_animal_lion_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:lion - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 2 - MAX = 6 - } - } - # Tiger - 300 = { - trigger = { - location = { hunt_animal_tiger_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:tiger - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 4 - MAX = 7 - } - } - # Leopard - 150 = { - trigger = { - location = { hunt_animal_leopard_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:leopard - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 3 - MAX = 5 - } - } - # Panther (black leopards) - 1 = { - trigger = { - location = { hunt_animal_leopard_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:panther - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 3 - MAX = 5 - } - } - # Lynx - 75 = { - trigger = { - location = { hunt_animal_lynx_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:lynx - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 2 - MAX = 4 - } - } - # Caracal - 75 = { - trigger = { - location = { hunt_animal_caracal_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:caracal - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 3 - } - } - # Bear - 150 = { - trigger = { - location = { hunt_animal_bear_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:bear - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 4 - MAX = 9 - } - } - # Hippo - ## This one goes out to Dog: he was the best, deadliest pet an Arisen could ever ask for. - ## Yes, hippos do eat meat, though in the ordinary course of things they wouldn't _hunt_ per se. Not like this — basically this'd have to be a hippo that's maybe desperate for food, likely extra territorial, and probably just has a certain taste for meat. - 25 = { - trigger = { - location = { hunt_animal_hippo_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:hippo - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 8 - MAX = 12 - } - } - # Crocodile - 100 = { - trigger = { - ## - location = { hunt_animal_crocodile_trigger = yes } - # Just to be safe, try to ensure we're at least intending to step near their habitat for longer than a day. - current_travel_plan.next_location = { hunt_animal_crocodile_trigger = yes } - } - save_scope_value_as = { - name = hunter_type - value = flag:crocodile - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 3 - MAX = 8 - } - } - # Cannibal (generated) - 1 = { - trigger = { can_start_single_combat_trigger = yes } - save_scope_value_as = { - name = hunter_type - value = flag:cannibal_generated - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 1 - } - # Create & nab our cannibal. - create_character = { - template = criminal_brawn_character - location = root.location - save_scope_as = cannibal - trait = cannibal - prowess = { - max_template_medium_skill - max_template_very_high_skill - } - } - } - # Cannibal (existing) - 10 = { - trigger = { - can_start_single_combat_trigger = yes - any_pool_character = { - province = root.location - ep3_laamp_flavour_ewan_4061_local_cannibal_trigger = yes - } - } - save_scope_value_as = { - name = hunter_type - value = flag:cannibal_existing - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 1 - } - # Nab our cannibal. - random_pool_character = { - province = root.location - limit = { ep3_laamp_flavour_ewan_4061_local_cannibal_trigger = yes } - save_scope_as = cannibal - } - } - # Cannibal (Chad) - 50 = { - trigger = { - can_start_single_combat_trigger = yes - character:easteregg_chad_uhl ?= { - is_alive = yes - location ?= root.location - is_pool_character = yes - } - } - save_scope_value_as = { - name = hunter_type - value = flag:cannibal_chad - } - ep3_laamp_flavour_ewan_4061_roll_animal_size_effect = { - MIN = 1 - MAX = 1 - } - # Nab our cannibal. - character:easteregg_chad_uhl = { save_scope_as = cannibal } - } - } - # Apply our local modifier. - location.county = { - if = { - limit = { - # But not to hapless players who don't know what's happening. - NOT = { - holder = { is_ai = no } - } - } - switch = { - trigger = scope:hunter_size - 12 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_12_modifier - years = 3 - } - } - 11 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_11_modifier - years = 3 - } - } - 10 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_10_modifier - years = 3 - } - } - 9 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_09_modifier - years = 3 - } - } - 8 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_08_modifier - years = 3 - } - } - 7 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_07_modifier - years = 3 - } - } - 6 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_06_modifier - years = 3 - } - } - 5 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_05_modifier - years = 3 - } - } - 4 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_04_modifier - years = 3 - } - } - 3 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_03_modifier - years = 3 - } - } - 2 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_02_modifier - years = 3 - } - } - 1 = { - add_county_modifier = { - modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_01_modifier - years = 3 - } - } - } - } - } - } - - # Martial duel to try and organise better watches. - option = { - name = ep3_laamp_flavour_ewan.4061.a - - custom_tooltip = ep3_laamp_flavour_ewan.4061.a.tt.duel.safe - duel = { - skill = martial - value = scope:duel_diff_safe - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4061.a.tt.success - send_interface_toast = { - type = event_toast_effect_good - title = ep3_laamp_flavour_ewan.4061.a.tt.success - add_prestige = minor_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = 20 - } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4061.a.tt.failure - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamp_flavour_ewan.4061.a.tt.failure - ep3_laamp_flavour_ewan_4061_roll_courtier_deaths_effect = yes - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # Go after it yourself. - option = { - name = ep3_laamp_flavour_ewan.4061.b - - custom_tooltip = ep3_laamp_flavour_ewan.4061.a.tt.duel.risky - custom_tooltip = ep3_laamp_flavour_ewan.4061.a.tt.duel.risky.are_you_sure - trigger_event = ep3_laamp_flavour_ewan.4062 - - # Flag not to clean up our cannibal, if we made one. - save_scope_value_as = { - name = dont_clean_cannibal - value = yes - } - - stress_impact = { - lifestyle_hunter = minor_stress_impact_loss - brave = minor_stress_impact_loss - craven = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 2 } - } - } - - # As long as it doesn't eat anyone important. - option = { - name = ep3_laamp_flavour_ewan.4061.c - - random_list = { - 50 = { - desc = ep3_laamp_flavour_ewan.4061.c.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4061.c.tt.success - add_prestige = miniscule_prestige_gain - } - } - 50 = { - desc = ep3_laamp_flavour_ewan.4061.c.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4061.c.tt.failure - ep3_laamp_flavour_ewan_4061_roll_courtier_deaths_effect = yes - } - } - } - - stress_impact = { - craven = medium_stress_impact_loss - brave = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_energy = -2 } - } - } - - after = { - # If we're slowed due to multi, resume travel. - mp_resume_travel_plan = yes - # Clean up our cannibal, if necessary. - if = { - limit = { - scope:hunter_type = flag:cannibal_generated - NOT = { exists = scope:dont_clean_cannibal } - } - scope:cannibal = { - death = { death_reason = death_vanished } - } - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = { - OR = { - scope:hunter_type = flag:cannibal_generated - scope:hunter_type = flag:cannibal_existing - scope:hunter_type = flag:cannibal_chad - } -} - -scripted_trigger ep3_laamp_flavour_ewan_4062_animal_group_canine_trigger = { - OR = { - scope:hunter_type = flag:dog - scope:hunter_type = flag:wolf - scope:hunter_type = flag:hyena - } -} - -scripted_trigger ep3_laamp_flavour_ewan_4062_animal_group_feline_trigger = { - OR = { - scope:hunter_type = flag:lion - scope:hunter_type = flag:tiger - scope:hunter_type = flag:leopard - scope:hunter_type = flag:panther - scope:hunter_type = flag:lynx - scope:hunter_type = flag:caracal - } -} - -scripted_trigger ep3_laamp_flavour_ewan_4062_animal_group_human_trigger = { - OR = { - scope:hunter_type = flag:cannibal_generated - scope:hunter_type = flag:cannibal_existing - scope:hunter_type = flag:cannibal_chad - } -} - -scripted_effect ep3_laamp_flavour_ewan_4062_animal_duel_effect = { - duel = { - skill = $SKILL$ - value = scope:duel_diff_risky - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.tt.success - add_prestige = { - value = medium_prestige_gain - add = { - value = scope:hunter_size - multiply = 50 - } - } - every_courtier = { - limit = { location = root.location } - custom = custom.every_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = { - value = 30 - add = { - value = scope:hunter_size - multiply = 2 - } - } - } - } - } - ep3_laamp_flavour_ewan_4062_clean_man_eater_effect = yes - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.tt.failure - ep3_laamp_flavour_ewan_4062_animal_duel_loss_effect = yes - } - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4062_animal_duel_loss_effect = { - switch = { - trigger = scope:hunter_type - flag:dog = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = dog - SUCCESS_% = 90 - FAILURE_% = 10 - WOUNDS = 1 - } - } - flag:wolf = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = wolf - SUCCESS_% = 80 - FAILURE_% = 20 - WOUNDS = 1 - } - } - flag:hyena = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = hyena - SUCCESS_% = 85 - FAILURE_% = 15 - WOUNDS = 1 - } - } - flag:lion = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = lion - SUCCESS_% = 60 - FAILURE_% = 40 - WOUNDS = 2 - } - } - flag:tiger = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = tiger - SUCCESS_% = 40 - FAILURE_% = 60 - WOUNDS = 3 - } - } - flag:leopard = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = leopard - SUCCESS_% = 60 - FAILURE_% = 40 - WOUNDS = 2 - } - } - flag:panther = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = panther - SUCCESS_% = 60 - FAILURE_% = 40 - WOUNDS = 2 - } - } - flag:lynx = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = lynx - SUCCESS_% = 80 - FAILURE_% = 20 - WOUNDS = 1 - } - } - flag:caracal = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = caracal - SUCCESS_% = 80 - FAILURE_% = 20 - WOUNDS = 1 - } - } - flag:bear = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = bear - SUCCESS_% = 30 - FAILURE_% = 70 - WOUNDS = 3 - } - } - flag:hippo = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = hippo - SUCCESS_% = 10 - FAILURE_% = 90 - WOUNDS = 3 - } - } - flag:crocodile = { - ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - ANIMAL = crocodile - SUCCESS_% = 40 - FAILURE_% = 60 - WOUNDS = 3 - } - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4062_animal_duel_loss_guts_effect = { - save_scope_value_as = { - name = wounds_tally - value = $WOUNDS$ - } - random_list = { - $SUCCESS_%$ = { - increase_wounds_effect = { REASON = killed_by_monstrous_$ANIMAL$ } - if = { - limit = { scope:wounds_tally = 2 } - increase_wounds_effect = { REASON = killed_by_monstrous_$ANIMAL$ } - } - else_if = { - limit = { scope:wounds_tally >= 3 } - increase_wounds_effect = { REASON = killed_by_monstrous_$ANIMAL$ } - increase_wounds_effect = { REASON = killed_by_monstrous_$ANIMAL$ } - } - } - $FAILURE_%$ = { - death = { death_reason = death_killed_by_monstrous_$ANIMAL$ } - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4062_clean_man_eater_effect = { - hidden_effect = { - location.county = { - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_12_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_11_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_10_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_09_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_08_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_07_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_06_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_05_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_04_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_03_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_02_modifier - remove_county_modifier = ep3_laamp_flavour_ewan_4061_hungry_maneater_size_01_modifier - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4062_engagement_stress_effect = { - # vs. cannibals. - if = { - limit = { - OR = { - scope:hunter_type = flag:cannibal_generated - scope:hunter_type = flag:cannibal_existing - scope:hunter_type = flag:cannibal_chad - } - } - stress_impact = { - base = 10 - lifestyle_hunter = -10 - brave = -20 - craven = 10 - } - } - # vs. size. - ## 12. - else_if = { - limit = { scope:hunter_size >= 12 } - stress_impact = { - base = 50 - lifestyle_hunter = -30 - brave = -30 - craven = 30 - } - } - ## 10. - else_if = { - limit = { scope:hunter_size >= 10 } - stress_impact = { - base = 40 - lifestyle_hunter = -25 - brave = -25 - craven = 25 - } - } - ## 08. - else_if = { - limit = { scope:hunter_size >= 8 } - stress_impact = { - base = 20 - lifestyle_hunter = -20 - brave = -20 - craven = 20 - } - } - ## 06. - else_if = { - limit = { scope:hunter_size >= 6 } - stress_impact = { - base = 10 - lifestyle_hunter = -15 - brave = -15 - craven = 15 - } - } - ## 04. - else_if = { - limit = { scope:hunter_size >= 4 } - stress_impact = { - lifestyle_hunter = -10 - brave = -10 - craven = 10 - } - } - ## 02. - else_if = { - limit = { scope:hunter_size >= 2 } - stress_impact = { - lifestyle_hunter = -7 - brave = -7 - craven = 7 - } - } - ## 01. - else = { - stress_impact = { - lifestyle_hunter = -5 - brave = -5 - craven = 5 - } - } - # If we're over a certain size, we take base stress. - # Set up our animal stress. - save_scope_value_as = { - name = brave_size_stress - value = { - add = scope:hunter_size - multiply = -3 - } - } - save_scope_value_as = { - name = craven_size_stress - value = { - add = scope:hunter_size - multiply = 4 - } - } -} - -# Alright, time to fight! -ep3_laamp_flavour_ewan.4062 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { scope:hunter_type = flag:dog } - desc = ep3_laamp_flavour_ewan.4062.t.dog - } - triggered_desc = { - trigger = { scope:hunter_type = flag:wolf } - desc = ep3_laamp_flavour_ewan.4062.t.wolf - } - triggered_desc = { - trigger = { scope:hunter_type = flag:hyena } - desc = ep3_laamp_flavour_ewan.4062.t.hyena - } - triggered_desc = { - trigger = { scope:hunter_type = flag:lion } - desc = ep3_laamp_flavour_ewan.4062.t.lion - } - triggered_desc = { - trigger = { scope:hunter_type = flag:tiger } - desc = ep3_laamp_flavour_ewan.4062.t.tiger - } - triggered_desc = { - trigger = { scope:hunter_type = flag:leopard } - desc = ep3_laamp_flavour_ewan.4062.t.leopard - } - triggered_desc = { - trigger = { scope:hunter_type = flag:panther } - desc = ep3_laamp_flavour_ewan.4062.t.panther - } - triggered_desc = { - trigger = { scope:hunter_type = flag:lynx } - desc = ep3_laamp_flavour_ewan.4062.t.lynx - } - triggered_desc = { - trigger = { scope:hunter_type = flag:caracal } - desc = ep3_laamp_flavour_ewan.4062.t.caracal - } - triggered_desc = { - trigger = { scope:hunter_type = flag:bear } - desc = ep3_laamp_flavour_ewan.4062.t.bear - } - triggered_desc = { - trigger = { scope:hunter_type = flag:hippo } - desc = ep3_laamp_flavour_ewan.4062.t.hippo - } - triggered_desc = { - trigger = { scope:hunter_type = flag:crocodile } - desc = ep3_laamp_flavour_ewan.4062.t.crocodile - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_generated } - desc = ep3_laamp_flavour_ewan.4062.t.cannibal_generated - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_existing } - desc = ep3_laamp_flavour_ewan.4062.t.cannibal_existing - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_chad } - desc = ep3_laamp_flavour_ewan.4062.t.cannibal_chad - } - } - } - desc = { - desc = ep3_laamp_flavour_ewan.4062.desc.intro - # Tracks. - first_valid = { - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_4062_animal_group_canine_trigger = yes } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.canine - } - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_4062_animal_group_feline_trigger = yes } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.feline - } - triggered_desc = { - trigger = { scope:hunter_type = flag:bear } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.ursine - } - triggered_desc = { - trigger = { scope:hunter_type = flag:hippo } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.hippopotomine - } - triggered_desc = { - trigger = { scope:hunter_type = flag:crocodile } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.crocodyline - } - triggered_desc = { - trigger = { ep3_laamp_flavour_ewan_4062_animal_group_human_trigger = yes } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.human - } - } - desc = ep3_laamp_flavour_ewan.4062.desc.tracks.connector - # Terrain - first_valid = { - triggered_desc = { - trigger = { - location = { - any_neighboring_province = { is_river_province = yes } - } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.major_river - } - triggered_desc = { - trigger = { - location = { terrain = farmlands } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.farmlands - } - triggered_desc = { - trigger = { - location = { terrain = hills } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.hills - } - triggered_desc = { - trigger = { - location = { terrain = mountains } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.mountains - } - triggered_desc = { - trigger = { - location = { terrain = desert } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.desert - } - triggered_desc = { - trigger = { - location = { terrain = desert_mountains } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.desert_mountains - } - triggered_desc = { - trigger = { - location = { terrain = oasis } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.oasis - } - triggered_desc = { - trigger = { - location = { terrain = jungle } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.jungle - } - triggered_desc = { - trigger = { - location = { terrain = forest } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.forest - } - triggered_desc = { - trigger = { - location = { terrain = taiga } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.taiga - } - triggered_desc = { - trigger = { - location = { terrain = wetlands } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.wetlands - } - triggered_desc = { - trigger = { - location = { terrain = steppe } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.steppe - } - triggered_desc = { - trigger = { - location = { terrain = floodplains } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.floodplains - } - triggered_desc = { - trigger = { - location = { terrain = drylands } - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.drylands - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.plains - } - desc = ep3_laamp_flavour_ewan.4062.desc.terrain.connector - # Animal - first_valid = { - triggered_desc = { - trigger = { scope:hunter_type = flag:dog } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.dog - } - triggered_desc = { - trigger = { scope:hunter_type = flag:wolf } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.wolf - } - triggered_desc = { - trigger = { scope:hunter_type = flag:hyena } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.hyena - } - triggered_desc = { - trigger = { scope:hunter_type = flag:lion } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.lion - } - triggered_desc = { - trigger = { scope:hunter_type = flag:tiger } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.tiger - } - triggered_desc = { - trigger = { scope:hunter_type = flag:leopard } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.leopard - } - triggered_desc = { - trigger = { scope:hunter_type = flag:panther } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.panther - } - triggered_desc = { - trigger = { scope:hunter_type = flag:lynx } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.lynx - } - triggered_desc = { - trigger = { scope:hunter_type = flag:caracal } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.caracal - } - triggered_desc = { - trigger = { scope:hunter_type = flag:bear } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.bear - } - triggered_desc = { - trigger = { - scope:hunter_type = flag:hippo - scope:hunter_size >= 10 - } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.hippo.largest - } - triggered_desc = { - trigger = { scope:hunter_type = flag:hippo } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.hippo.fallback - } - triggered_desc = { - trigger = { scope:hunter_type = flag:crocodile } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.crocodile - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_generated } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.cannibal_generated - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_existing } - desc = { - first_valid = { - triggered_desc = { - trigger = { character:easteregg_anna_johansson ?= scope:cannibal } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.cannibal_existing.anna - } - triggered_desc = { - trigger = { - scope:cannibal = { - any_secret = { type = secret_cannibal } - } - } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.cannibal_existing.secret - } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.cannibal_existing.fallback - } - } - } - triggered_desc = { - trigger = { scope:hunter_type = flag:cannibal_chad } - desc = ep3_laamp_flavour_ewan.4062.desc.animal.cannibal_chad - } - } - } - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:cannibal - animation = random_weapon_aggressive - } - override_background = { reference = wilderness } - - immediate = { - # Plus, we'll need to know how big our animal is. - set_variable = { - name = 4061_size_adjective - value = scope:hunter_size - } - # Sort our sacrifices. - court_position:huntperson_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - save_scope_as = huntsperson - } - } - court_position:kennelperson_camp_officer ?= { - if = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - save_scope_as = kenneler - } - } - } - - # Animal: martial duel. - option = { - name = ep3_laamp_flavour_ewan.4062.a - trigger = { ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = no } - - ep3_laamp_flavour_ewan_4062_animal_duel_effect = { SKILL = martial } - - ep3_laamp_flavour_ewan_4062_engagement_stress_effect = yes - ai_chance = { - base = 1 - modifier = { - add = { - value = martial - multiply = 10 - } - martial > prowess - } - } - } - - # Animal: prowess duel. - option = { - name = ep3_laamp_flavour_ewan.4062.b - trigger = { ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = no } - - ep3_laamp_flavour_ewan_4062_animal_duel_effect = { SKILL = prowess } - - ep3_laamp_flavour_ewan_4062_engagement_stress_effect = yes - ai_chance = { - base = 1 - modifier = { - add = { - value = prowess - multiply = 10 - } - prowess > martial - } - } - } - - # Huntperson: shoot her, SHOOOOT HERRRR! - option = { - name = ep3_laamp_flavour_ewan.4062.c - trigger = { - ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = no - exists = scope:huntsperson - } - reason = have_huntperson - - scope:huntsperson = { - duel = { - skill = prowess - value = scope:duel_diff_risky - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.c.tt.success - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.c.tt.success - left_icon = scope:huntsperson - add_prestige = { - value = medium_prestige_gain - add = { - value = scope:hunter_size - multiply = 50 - } - multiply = 0.5 - } - every_courtier = { - limit = { location = root.location } - custom = custom.every_follower - add_opinion = { - target = scope:huntsperson - modifier = saviour_opinion - opinion = { - value = 30 - add = { - value = scope:hunter_size - multiply = 2 - } - } - } - } - } - ep3_laamp_flavour_ewan_4062_clean_man_eater_effect = yes - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.c.tt.failure - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.c.tt.failure - left_icon = scope:huntsperson - scope:huntsperson = { ep3_laamp_flavour_ewan_4062_animal_duel_loss_effect = yes } - } - } - } - } - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Dog: kennelmaster, bring me that hound! - option = { - name = ep3_laamp_flavour_ewan.4062.d - trigger = { - ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = no - scope:hunter_type = flag:dog - exists = scope:kenneler - NOT = { has_character_modifier = dog_story_modifier } - } - - scope:kenneler = { - duel = { - skill = prowess - value = scope:duel_diff_risky - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.d.tt.success - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.d.tt.success - left_icon = scope:kenneler - add_prestige = medium_prestige_gain - start_dog_story_cycle_effect = yes - every_courtier = { - limit = { location = root.location } - custom = custom.every_follower - add_opinion = { - target = scope:kenneler - modifier = impressed_opinion - opinion = { - value = 15 - add = { - value = scope:hunter_size - multiply = 2 - } - } - } - } - } - ep3_laamp_flavour_ewan_4062_clean_man_eater_effect = yes - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4062.d.tt.failure - root = { - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4062.d.tt.failure - left_icon = scope:kenneler - scope:kenneler = { ep3_laamp_flavour_ewan_4062_animal_duel_loss_effect = yes } - } - } - } - } - } - - stress_impact = { - greedy = miniscule_stress_impact_loss - lustful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_sociability = 1 } - } - } - - # Cannibal: single combat. - option = { - name = ep3_laamp_flavour_ewan.4062.e - trigger = { ep3_laamp_flavour_ewan_4062_cannibal_options_trigger = yes } - - # In case death would change it (say, losing an artefact), register scope:cannibal's prowess. - save_scope_value_as = { - name = cannibal_prowess - value = scope:cannibal.prowess - } - # Then, into the actual duel we go! - custom_tooltip = { - text = duel_to_the_death.tt - configure_start_single_combat_effect = { - SC_INITIATOR = scope:cannibal - SC_ATTACKER = scope:cannibal - SC_DEFENDER = root - FATALITY = always - FIXED = no - LOCALE = terrain_scope - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = ep3_laamp_flavour_ewan.4063 - } - } - - # No stress here. - ai_chance = { - # You don't get a choice here, you're fightin'. - base = 1 - } - } - - after = { - # If we're slowed due to multi, resume travel. - mp_resume_travel_plan = yes - # Clean up our animal size. - if = { - # The AI can get killed here _real_ fast, so we make sure to check that they're not gonna fire an error. - limit = { is_alive = yes } - remove_variable = 4061_size_adjective - } - } -} - -ep3_laamp_flavour_ewan.4063 = { - hidden = yes - - immediate = { - if = { - limit = { scope:sc_victor = root } - root = { - trigger_event = { - id = ep3_laamp_flavour_ewan.4064 - days = 1 - } - } - # Log if it was Chad who lost. - if = { - limit = { character:easteregg_chad_uhl ?= scope:sc_loser } - trigger_event = ep3_laamp_flavour_ewan.4065 - } - # Or Anna. - else_if = { - limit = { character:easteregg_anna_johansson ?= scope:sc_loser } - trigger_event = ep3_laamp_flavour_ewan.4067 - } - } - # Log if it was Chad who won. - else_if = { - limit = { character:easteregg_chad_uhl ?= scope:sc_victor } - trigger_event = ep3_laamp_flavour_ewan.4066 - } - # Or Anna. - else_if = { - limit = { character:easteregg_anna_johansson ?= scope:sc_loser } - trigger_event = ep3_laamp_flavour_ewan.4068 - } - } -} - -# You won the single combat! -ep3_laamp_flavour_ewan.4064 = { - type = character_event - title = ep3_laamp_flavour_ewan.4064.t - desc = ep3_laamp_flavour_ewan.4064.desc - theme = laamp - left_portrait = { - character = root - animation = random_weapon_celebrate - } - override_background = { reference = wilderness } - - immediate = { - add_prestige = { - value = medium_prestige_gain - add = { - value = scope:cannibal_prowess - multiply = 25 - } - } - ep3_laamp_flavour_ewan_4062_clean_man_eater_effect = yes - } - - # Victory! - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - any_secret = { type = secret_cannibal } - has_trait = cannibal - } - } - desc = ep3_laamp_flavour_ewan.4064.a.is_cannibal - } - desc = ep3_laamp_flavour_ewan.4064.a.not_cannibal - } - } - } - - every_courtier = { - limit = { location = root.location } - custom = custom.every_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = { - value = 30 - add = scope:cannibal_prowess - } - } - } - - # No stress here. - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } -} - -# Gather our ultimate fighter statistics. -ep3_laamp_flavour_ewan.4065 = { hidden = yes } -ep3_laamp_flavour_ewan.4066 = { hidden = yes } -ep3_laamp_flavour_ewan.4067 = { hidden = yes } -ep3_laamp_flavour_ewan.4068 = { hidden = yes } - -################################################## -# Slavers -# by Ewan Cowhig Croft -# 4071 - 4080 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_4071_valid_courtiers_to_lose_trigger = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - NOR = { - is_close_family_of = root - is_consort_of = root - has_important_relationship_with_character_trigger = { CHARACTER = root } - highest_skill_value >= very_high_skill_rating - prowess >= very_high_skill_rating - average_of_all_skills_and_prowess >= sum_of_all_skills_threshold_excellent - has_trait_with_flag = illness - has_wounds_trigger = yes - } -} - -scripted_effect ep3_laamp_flavour_ewan_4071_won_duel_effect = { - add_prestige = { - value = medium_prestige_gain - if = { - limit = { scope:sc_victor ?= root } - # If you win the duel, we give you a bit more than the usual amount, since you risked your life overtly. - add = 100 - } - } - every_courtier = { - limit = { location = root.location } - custom = custom.every_follower - add_opinion = { - target = root - modifier = saviour_opinion - opinion = 30 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4071_lose_courtiers_effect = { - scope:follower_1 = { - death = { death_reason = death_disappeared_into_slave_markets } - } - scope:follower_2 = { - death = { death_reason = death_disappeared_into_slave_markets } - } - scope:follower_3 = { - death = { death_reason = death_disappeared_into_slave_markets } - } -} - -# Bastards try to kidnap people from the edges of your train. -ep3_laamp_flavour_ewan.4071 = { - type = character_event - title = ep3_laamp_flavour_ewan.4071.t - desc = ep3_laamp_flavour_ewan.4071.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:slaver - animation = schadenfreude - } - lower_left_portrait = scope:follower_1 - lower_center_portrait = scope:follower_2 - lower_right_portrait = scope:follower_3 - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4071 } - } - # Must have the correct travel danger type. - location = { - travel_danger_type = { - travel_plan = root.current_travel_plan - type = county_control - } - } - # And you won't see slavers literally outside someone important's capital, just openly kidnapping travellers. - NOT = { - location.county = { - holder.highest_held_title_tier >= tier_duchy - this = holder.capital_county - } - } - # Must have enough courtiers to lose in a duel. - any_courtier = { - count >= 3 - ep3_laamp_flavour_ewan_4071_valid_courtiers_to_lose_trigger = yes - } - # Slavers won't attack forces over a certain size, even assuming you're spread out in a long line. - current_military_strength < @ep3_laamp_flavour_ewan_baggage_train_has_significant_armed_force - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4071 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4071 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Nab our available courtiers. - ## First sorting them to a list. - every_courtier = { - limit = { ep3_laamp_flavour_ewan_4071_valid_courtiers_to_lose_trigger = yes } - add_to_list = loseable_courtiers_list - } - ## Then sorting who we'll lose if we lose a duel. - ordered_in_list = { - list = loseable_courtiers_list - order_by = sum_of_all_skills_and_prowess_value - max = 3 - check_range_bounds = no - if = { - limit = { - NOT = { exists = scope:follower_1 } - } - save_scope_as = follower_1 - } - else_if = { - limit = { - NOT = { - this = scope:follower_1 - exists = scope:follower_2 - } - } - save_scope_as = follower_2 - } - else_if = { - limit = { - NOT = { - this = scope:follower_1 - this = scope:follower_2 - exists = scope:follower_3 - } - } - save_scope_as = follower_3 - } - } - ## Then sorting who we'll lose if we sell people. - if = { - # Which means making sure we've got enough people; we want 5, we have three taken from us, so we need at least 8 in the list. - limit = { "list_size(loseable_courtiers_list)" >= 8 } - ordered_in_list = { - list = loseable_courtiers_list - order_by = { - value = sum_of_all_skills_and_prowess_value - multiply = -1 - } - max = 5 - check_range_bounds = no - # We're gonna save these as individual scopes for easier tooltipping, but also put them in a list for less verbose checking in some specific script later. - if = { - limit = { - NOT = { exists = scope:follower_4 } - } - save_scope_as = follower_4 - add_to_list = sellable_courtiers_list - } - else_if = { - limit = { - NOT = { - this = scope:follower_4 - exists = scope:follower_5 - } - } - save_scope_as = follower_5 - add_to_list = sellable_courtiers_list - } - else_if = { - limit = { - NOT = { - this = scope:follower_4 - this = scope:follower_5 - exists = scope:follower_6 - } - } - save_scope_as = follower_6 - add_to_list = sellable_courtiers_list - } - else_if = { - limit = { - NOT = { - this = scope:follower_4 - this = scope:follower_5 - this = scope:follower_6 - exists = scope:follower_7 - } - } - save_scope_as = follower_7 - add_to_list = sellable_courtiers_list - } - else_if = { - limit = { - NOT = { - this = scope:follower_4 - this = scope:follower_5 - this = scope:follower_6 - this = scope:follower_7 - exists = scope:follower_8 - } - } - save_scope_as = follower_8 - add_to_list = sellable_courtiers_list - } - } - } - # Create a hostile slaver. - create_character = { - template = bandit_character - location = root.location - culture = root.location.culture - faith = root.location.faith - trait = gallowsbait - martial = { - min_template_decent_skill - max_template_high_skill - } - stewardship = { - min_template_decent_skill - max_template_high_skill - } - prowess = { - min_template_decent_skill - max_template_high_skill - } - save_scope_as = slaver - after_creation = { - # Make sure we telegraph that they're a dick. - ## First, level up their gallowsbait - laamp_rewards_apply_criminal_xp_effect = { - TRACK = bandit - XP_MAX = gallowsbait_xp_massive_gain - XP_MIN = gallowsbait_xp_massive_gain - } - laamp_rewards_apply_criminal_xp_effect = { - TRACK = marauder - XP_MAX = gallowsbait_xp_massive_gain - XP_MIN = gallowsbait_xp_massive_gain - } - ## Then make sure they've got a suitably horrid personality. - if = { - limit = { number_of_personality_traits < 3 } - add_trait = callous - } - if = { - limit = { number_of_personality_traits < 3 } - add_trait = greedy - } - if = { - limit = { number_of_personality_traits < 3 } - add_trait = arbitrary - } - if = { - limit = { number_of_personality_traits < 3 } - add_trait = wrathful - } - if = { - limit = { number_of_personality_traits < 3 } - add_trait = vengeful - } - } - } - } - - # Martial duel to fight them off. - option = { - name = ep3_laamp_flavour_ewan.4071.a - - duel = { - skill = martial - target = scope:slaver - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4071.a.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4071.a.tt.success - left_icon = scope:slaver - ep3_laamp_flavour_ewan_4071_won_duel_effect = yes - scope:slaver = { - death = { death_reason = death_attacking_laamp_train } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4071.a.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4071.a.tt.failure - left_icon = scope:slaver - add_prestige = minor_prestige_loss - ep3_laamp_flavour_ewan_4071_lose_courtiers_effect = yes - } - } - } - - # No stress here, - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 2 } - } - } - - # SCE: launch yourself at the largest and fiercest of them. - option = { - name = ep3_laamp_flavour_ewan.4071.b - trigger = { can_start_single_combat_trigger = yes } - - custom_tooltip = { - text = duel_to_the_death.tt - configure_start_single_combat_effect = { - SC_INITIATOR = root - SC_ATTACKER = root - SC_DEFENDER = scope:slaver - FATALITY = always - FIXED = no - LOCALE = terrain_scope - INVALIDATION_EVENT = single_combat.1006 - OUTPUT_EVENT = ep3_laamp_flavour_ewan.4072 - } - } - save_scope_value_as = { - name = duel_begun - value = yes - } - - stress_impact = { - brave = medium_stress_impact_loss - craven = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Haggle & sell some lesser courtiers yourself. - option = { - name = ep3_laamp_flavour_ewan.4071.c - trigger = { exists = scope:follower_4 } - - # Alright, explain how this works. - custom_tooltip = ep3_laamp_flavour_ewan.4071.c.sale_explanation.profit - custom_tooltip = ep3_laamp_flavour_ewan.4071.c.sale_explanation.limitations - custom_tooltip = ep3_laamp_flavour_ewan.4071.c.sale_explanation.death - # Then sum it up. - scope:slaver = { - pay_short_term_gold = { - target = root - gold = { - add = scope:follower_4.sum_of_all_skills_and_prowess_value - add = scope:follower_5.sum_of_all_skills_and_prowess_value - add = scope:follower_6.sum_of_all_skills_and_prowess_value - add = scope:follower_7.sum_of_all_skills_and_prowess_value - add = scope:follower_8.sum_of_all_skills_and_prowess_value - } - } - } - # And we'd lose the listed courtiers, permanently. - scope:follower_4 = { - death = { - death_reason = death_disappeared_into_slave_markets - killer = root - } - } - scope:follower_5 = { - death = { - death_reason = death_disappeared_into_slave_markets - killer = root - } - } - scope:follower_6 = { - death = { - death_reason = death_disappeared_into_slave_markets - killer = root - } - } - scope:follower_7 = { - death = { - death_reason = death_disappeared_into_slave_markets - killer = root - } - } - scope:follower_8 = { - death = { - death_reason = death_disappeared_into_slave_markets - killer = root - } - } - # Sort out opinions. - ## We make a fake version first for easier tooltipping. - show_as_tooltip = { - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - has_trait = callous - } - custom = custom.every_callous_follower - add_opinion = { - target = root - modifier = practical_opinion - opinion = 30 - } - } - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - has_trait = compassionate - } - custom = custom.every_compassionate_follower - add_opinion = { - target = root - modifier = callous_opinion - opinion = -100 - } - } - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - NOR = { - has_trait = compassionate - has_trait = callous - } - } - custom = custom.every_other_follower - add_opinion = { - target = root - modifier = outraged_opinion - opinion = -50 - } - } - } - ## Then we process the actual list. - hidden_effect = { - every_courtier = { - # Compassionates. - if = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - has_trait = compassionate - } - add_opinion = { - target = root - modifier = callous_opinion - opinion = -100 - } - } - # Callous courtiers who didn't lose friends, consorts, or spouses. - else_if = { - limit = { - has_trait = callous - save_temporary_scope_as = char_temp - NOT = { - any_in_list = { - list = sellable_courtiers_list - OR = { - AND = { - reverse_opinion = { - target = scope:char_temp - value >= 30 - } - OR = { - is_consort_of = scope:char_temp - is_close_or_extended_family_of = scope:char_temp - } - } - has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = scope:char_temp } - } - } - } - } - add_opinion = { - target = root - modifier = practical_opinion - opinion = 30 - } - } - else_if = { - limit = { - save_temporary_scope_as = char_temp - NOT = { - any_in_list = { - list = sellable_courtiers_list - count = all - OR = { - reverse_opinion = { - target = scope:char_temp - value <= -80 - } - has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = scope:char_temp } - } - } - } - } - add_opinion = { - target = root - modifier = outraged_opinion - opinion = -50 - } - } - } - } - # Last, but by no means least, gallowsbait. - laamp_rewards_apply_criminal_xp_effect = { - TRACK = marauder - XP_MAX = gallowsbait_xp_major_gain - XP_MIN = gallowsbait_xp_major_gain - } - - stress_impact = { - callous = major_stress_impact_loss - arbitrary = medium_stress_impact_loss - just = massive_stress_impact_gain - compassionate = massive_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_greed = 2 - ai_compassion = -3 - } - } - } - - # Ignore the cries and hope for the best. - option = { - name = ep3_laamp_flavour_ewan.4071.d - - random_list = { - 25 = { - desc = ep3_laamp_flavour_ewan.4071.d.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4071.d.tt.success - scope:slaver = { - death = { death_reason = death_attacking_laamp_train } - } - } - } - 75 = { - desc = ep3_laamp_flavour_ewan.4071.d.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4071.d.tt.failure - add_prestige = medium_prestige_loss - ep3_laamp_flavour_ewan_4071_lose_courtiers_effect = yes - } - } - } - - stress_impact = { - craven = medium_stress_impact_loss - brave = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_energy = 1 - ai_honor = -0.5 - } - } - } - - after = { - # If we're slowed due to multi, resume travel. - mp_resume_travel_plan = yes - # Whatever else happens, our slaver is gone. - hidden_effect = { - scope:slaver = { - if = { - limit = { - is_alive = yes - NOT = { exists = scope:duel_begun } - } - death = { death_reason = death_vanished } - } - } - } - } -} - -ep3_laamp_flavour_ewan.4072 = { - hidden = yes - - immediate = { - if = { - limit = { scope:sc_victor = root } - root = { trigger_event = ep3_laamp_flavour_ewan.4073 } - } - else = { ep3_laamp_flavour_ewan_4071_lose_courtiers_effect = yes } - } -} - -# You won the single combat! -ep3_laamp_flavour_ewan.4073 = { - type = character_event - title = ep3_laamp_flavour_ewan.4073.t - desc = ep3_laamp_flavour_ewan.4073.desc - theme = laamp - left_portrait = { - character = root - animation = random_weapon_celebrate - } - override_background = { reference = battlefield } - - # Victory! - option = { - name = ep3_laamp_flavour_ewan.4073.a - - ep3_laamp_flavour_ewan_4071_won_duel_effect = yes - - # No stress here. - ai_chance = { - # No logic needed for notification event. - base = 1 - } - } -} - -################################################## -# Born of Desperation -# by Ewan Cowhig Croft -# 4081 - 4090 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4081_duel_loss_effect = { - add_prestige = medium_prestige_loss - increase_wounds_effect = { REASON = starving_peasant_horde } - domicile = { - change_provisions = { - value = scope:provisions_loss - multiply = -1 - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_4081_roll_non_financial_duel_effect = { - duel = { - skill = $SKILL$ - value = high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = $VICTORY_LOC$ - send_interface_toast = { - title = $VICTORY_LOC$ - add_prestige = medium_prestige_gain - every_courtier = { - limit = { ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes } - custom = custom.every_adult_follower - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = $DEFEAT_LOC$ - send_interface_toast = { - title = $DEFEAT_LOC$ - ep3_laamp_flavour_ewan_4081_duel_loss_effect = yes - } - } - } -} - -# Hungry locals swarm at you, searching for food. -ep3_laamp_flavour_ewan.4081 = { - type = character_event - title = ep3_laamp_flavour_ewan.4081.t - desc = { - desc = ep3_laamp_flavour_ewan.4081.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:hunger_type = flag:epidemic } - desc = ep3_laamp_flavour_ewan.4081.desc.epidemic - } - triggered_desc = { - trigger = { scope:hunger_type = flag:mundane } - desc = ep3_laamp_flavour_ewan.4081.desc.mundane - } - } - desc = ep3_laamp_flavour_ewan.4081.desc.outro - } - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:local_peasant - animation = aggressive_spear - outfit_tags = { beggar_rags } - hide_info = yes - } - override_background = { reference = wilderness } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4081 } - } - # Must have the correct travel danger type. - location = { - OR = { - travel_danger_type = { - travel_plan = root.current_travel_plan - type = county_control - } - travel_danger_type = { - travel_plan = root.current_travel_plan - type = epidemic - } - } - } - # A mob won't attack forces over a certain size, even assuming you're spread out in a long line. - current_military_strength < @ep3_laamp_flavour_ewan_baggage_train_has_significant_armed_force - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4081 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4081 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Check to see if this is a generic famine or an epidemic-induced one. - if = { - limit = { - location = { - any_province_epidemic = { } - } - } - save_scope_value_as = { - name = hunger_type - value = flag:epidemic - } - } - else ={ - save_scope_value_as = { - name = hunger_type - value = flag:mundane - } - } - # How many provisions do we need to surrender? - save_scope_value_as = { - name = provisions_loss - value = { - add = domicile.provisions - multiply = 0.2 - floor = yes - min = @ep3_laamp_flavour_ewan_4000_min_provisions_worth_attacking - } - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - # Create a peasant to look annoyed for players. - if = { - limit = { is_ai = no } - hidden_effect = { - random_list = { - 90 = { - create_character = { - template = generic_peasant_character - location = root.location - culture = root.location.culture - faith = root.location.faith - prowess = 16 - save_scope_as = local_peasant - after_creation = { - change_current_weight = -100 - add_character_flag = no_headgear - } - } - } - 10 = { - create_character = { - template = diseased_peasant_character - location = root.location - culture = root.location.culture - faith = root.location.faith - prowess = 16 - save_scope_as = local_peasant - after_creation = { - change_current_weight = -100 - add_character_flag = no_headgear - } - } - } - } - } - } - } - - # Diplomacy duel to try and calm them. - option = { - name = ep3_laamp_flavour_ewan.4081.a - - ep3_laamp_flavour_ewan_4081_roll_non_financial_duel_effect = { - SKILL = diplomacy - VICTORY_LOC = ep3_laamp_flavour_ewan.4081.a.tt.success - DEFEAT_LOC = ep3_laamp_flavour_ewan.4081.a.tt.failure - } - - stress_impact = { - calm = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_compassion = 1 } - } - } - - # Stewardship duel to try and force them to pay. - option = { - name = ep3_laamp_flavour_ewan.4081.b - - duel = { - skill = stewardship - value = high_skill_rating - # Victory! - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4081.b.tt.success - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4081.b.tt.success - add_gold = medium_gold_laamps_value - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - OR = { - has_trait = compassionate - has_trait = generous - } - # Compassionate overrules greedy, but callous and sadistic overrule generous. - NOR = { - has_trait = callous - has_trait = sadistic - } - } - custom = ep3_laamp_flavour_ewan.4081.b.tt.success.every_compassionate_or_generous_follower - add_opinion = { - target = root - modifier = callous_opinion - opinion = -30 - } - } - every_courtier = { - limit = { - ep3_laamp_flavour_ewan_available_courtier_travel_danger_trigger = yes - OR = { - has_trait = callous - has_trait = sadistic - has_trait = greedy - } - # Callous and sadistic overrule generous, but compassionate overrules greedy. - NOT = { has_trait = compassionate } - } - custom = ep3_laamp_flavour_ewan.4081.b.tt.success.every_callous_greedy_or_sadistic_follower - add_opinion = { - target = root - modifier = practical_opinion - opinion = 30 - } - } - } - } - # Defeat. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = ep3_laamp_flavour_ewan.4081.b.tt.failure - send_interface_toast = { - title = ep3_laamp_flavour_ewan.4081.b.tt.failure - ep3_laamp_flavour_ewan_4081_duel_loss_effect = yes - } - } - } - - stress_impact = { - greedy = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - generous = major_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_greed = 1 - ai_compassion = -0.5 - } - } - } - - # Martial duel to force them back. - option = { - name = ep3_laamp_flavour_ewan.4081.c - - ep3_laamp_flavour_ewan_4081_roll_non_financial_duel_effect = { - SKILL = martial - VICTORY_LOC = ep3_laamp_flavour_ewan.4081.c.tt.success - DEFEAT_LOC = ep3_laamp_flavour_ewan.4081.c.tt.failure - } - - stress_impact = { - wrathful = medium_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - calm = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = -0.5 - } - } - } - - # Accept and let them take X provisions. - option = { - name = ep3_laamp_flavour_ewan.4081.d - trigger = { domicile.provisions >= scope:provisions_loss } - show_as_unavailable = { always = yes } - - add_prestige = miniscule_prestige_loss - domicile = { - change_provisions = { - value = scope:provisions_loss - multiply = -1 - } - } - - stress_impact = { - calm = miniscule_stress_impact_loss - generous = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - greedy = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = -1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { - mp_resume_travel_plan = yes - # Clean up our peasant. - scope:local_peasant ?= { silent_disappearance_effect = yes } - } -} - -################################################## -# Night Attack -# by Ewan Cowhig Croft -# 4091 - 4100 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_4091_roll_duel_effect = { - duel = { - skill = $SKILL$ - value = very_high_skill_rating - # Victory! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = $SUCCESS_LOC$ - send_interface_toast = { - title = $SUCCESS_LOC$ - add_prestige = medium_prestige_gain - } - } - # Defeat. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = $FAILURE_LOC$ - send_interface_toast = { - title = $FAILURE_LOC$ - increase_wounds_effect = { REASON = battle } - random_courtier = { - limit = { location = root.location } - increase_wounds_effect = { REASON = battle } - save_temporary_scope_as = courtier_1 - } - random_courtier = { - limit = { - location = root.location - this != scope:courtier_1 - } - increase_wounds_effect = { REASON = battle } - save_temporary_scope_as = courtier_2 - } - random_courtier = { - limit = { - location = root.location - this != scope:courtier_1 - this != scope:courtier_2 - } - increase_wounds_effect = { REASON = battle } - } - } - } - } -} - -# Unknown group assaults your camp one evening. -ep3_laamp_flavour_ewan.4091 = { - type = character_event - title = ep3_laamp_flavour_ewan.4091.t - desc = ep3_laamp_flavour_ewan.4091.desc - theme = widgetless_travel_danger - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:retainer - animation = aggressive_sword - outfit_tags = { military_outfit } - hide_info = yes - } - override_background = { reference = ep3_campfire } - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_available_travelling_adult = yes - current_travel_plan = { is_travel_with_domicile = yes } - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_4091 } - } - # Must have the correct travel danger type. - location = { - OR = { - travel_danger_type = { - travel_plan = root.current_travel_plan - type = owner_opinion - } - travel_danger_type = { - travel_plan = root.current_travel_plan - type = county_control - } - } - } - # Plus rule out anyone who'd have likely have a palisade. - NOT = { - domicile = { has_domicile_building = camp_perimeter_palisade } - } - } - - immediate = { - # Slow down in MP. - mp_delay_travel_plan = { DAYS = 90 } - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_4091 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_4091 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Increment XP. - traveler_danger_xp_effect = { - MIN = 1 - MAX = 3 - } - # Save our county for loc. - location.county = { save_scope_as = current_county } - # Create a bandit to look annoyed for players. - if = { - limit = { is_ai = no } - hidden_effect = { - create_character = { - template = mercenary - employer = root.location.county.holder - culture = root.location.culture - faith = root.location.county.holder.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = retainer - } - } - } - } - - # Martial duel to fight them off. - option = { - name = ep3_laamp_flavour_ewan.4091.a - - ep3_laamp_flavour_ewan_4091_roll_duel_effect = { - SKILL = martial - SUCCESS_LOC = ep3_laamp_flavour_ewan.4091.a.tt.success - FAILURE_LOC = ep3_laamp_flavour_ewan.4091.a.tt.failure - } - - # No stress here. - ai_chance = { - base = 1 - ai_value_modifier = { ai_rationality = 1 } - } - } - - # Prowess duel to launch yourself into the frey. - option = { - name = ep3_laamp_flavour_ewan.4091.b - - ep3_laamp_flavour_ewan_4091_roll_duel_effect = { - SKILL = prowess - SUCCESS_LOC = ep3_laamp_flavour_ewan.4091.b.tt.success - FAILURE_LOC = ep3_laamp_flavour_ewan.4091.b.tt.failure - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = 1 } - } - } - - # Hide from the chaos. - option = { - name = ep3_laamp_flavour_ewan.4091.c - - every_courtier = { - limit = { - location = root.location - NOT = { has_trait = craven } - } - custom = ep3_laamp_flavour_ewan.4091.c.every_non_craven_follower - add_opinion = { - target = root - modifier = disgusted_opinion - opinion = -25 - } - } - - stress_impact = { - craven = minor_stress_impact_loss - brave = medium_stress_impact_gain - } - ai_chance = { - base = 1 - ai_value_modifier = { ai_boldness = -1 } - } - } - - # If we're slowed due to multi, resume travel. - after = { mp_resume_travel_plan = yes } -} - - - - - - - - - - - -################################################## -# LOANED COURTIER RETURNS - -################################################## -# Core Tombola -# by Ewan Cowhig Croft -# 9501 - 9510 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_9501_culture_to_adopt_trigger = { - culture = { - OR = { - this != prev.host.culture - this != prev.host.capital_county.culture - } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { - num_sinful_traits = { - value <= 0 - target = $FAITH$ - } - num_virtuous_traits = { - value >= 1 - target = $FAITH$ - } -} - -scripted_trigger ep3_laamp_flavour_ewan_9501_character_would_go_idea_shopping_trigger = { - NOT = { has_character_flag = ai_will_not_convert } - faith = { - NOR = { - this = prev.host.faith - this = prev.host.capital_county.faith - } - } - # Cynics don't care enough to switch - ## Or rather, they switch for entirely cynical reasons and we're portraying this as more of a finding-your-true-self thing. - NOT = { has_trait = cynical } - # Religious characters compare what faiths fit them best. - OR = { - # Non-zealous characters will consider a switch if they're not virtuous but would be in a new faith. - AND = { - NOT = { has_trait = zealous } - num_virtuous_traits = { - value <= 0 - target = faith - } - OR = { - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = host.faith } - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = host.capital_county.faith } - } - } - # Zealous characters will _also_ switch, but also need to feel like they're sinful in their current faith. - AND = { - has_trait = zealous - num_sinful_traits = { - value >= 1 - target = faith - } - num_virtuous_traits = { - value <= 0 - target = faith - } - OR = { - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = host.faith } - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = host.capital_county.faith } - } - } - } -} - -# Takes care of returning to camp after a period away. -ep3_laamp_flavour_ewan.9501 = { - hidden = yes - - trigger = { - is_imprisoned = no - scope:visitor = { - is_alive = yes - is_imprisoned = no - is_incapable = no - } - } - - on_trigger_fail = { - # Dead. - if = { - limit = { - scope:visitor = { is_alive = no } - } - trigger_event = ep3_laamp_flavour_ewan.9531 - } - # Imprisoned. - else_if = { - limit = { - scope:visitor = { is_imprisoned = yes } - } - trigger_event = ep3_laamp_flavour_ewan.9532 - } - # Incapable. - else_if = { - limit = { - scope:visitor = { is_incapable = yes } - } - trigger_event = ep3_laamp_flavour_ewan.9533 - } - # If we're imprisoned, just return them to camp with no fanfare. - else_if = { - limit = { is_imprisoned = yes } - scope:visitor = { return_to_court = yes } - } - # Fallback (we don't know what's happened to them). - else = { trigger_event = ep3_laamp_flavour_ewan.9534 } - } - - immediate = { - # Wherever they were, we give them the language of the place & their soon-to-be-former host if they didn't speak them already. - scope:visitor = { - # Prio the host's language. - if = { - limit = { - NOT = { knows_language_of_culture = host.culture } - current_extra_languages < language_soft_cap - } - learn_language_of_culture = host.culture - } - # Then the local tongue. - if = { - limit = { - NOT = { knows_language_of_culture = host.capital_county.culture } - current_extra_languages < language_soft_cap - } - learn_language_of_culture = host.capital_county.culture - } - # Nab our host scopes so we can reference them in loc. - host = { - save_scope_as = host - capital_county = { save_scope_as = capital } - } - } - # Next, determine what event we get when they return. - ## Try to have these add up to 100%. - random_list = { - # They're the same as ever. - 60 = { - trigger_event = ep3_laamp_flavour_ewan.9511 - # Boosts for other entries come out of this one, so we reduce the likelihood based on modifiers further down. - modifier = { - add = -20 - scope:visitor = { has_trait = gregarious } - } - modifier = { - add = -60 - scope:visitor = { - has_trait = zealous - ep3_laamp_flavour_ewan_9501_character_would_go_idea_shopping_trigger = yes - } - } - } - # They've learnt a thing or two. - 25 = { - trigger_event = ep3_laamp_flavour_ewan.9512 - } - # They have taken on the local culture. - 5 = { - trigger = { - scope:visitor = { - ep3_laamp_flavour_ewan_9501_culture_to_adopt_trigger = yes - NOT = { has_character_flag = laamp_follower_tombola_changed_culture_flag } - } - } - scope:visitor = { add_character_flag = laamp_follower_tombola_changed_culture_flag } - trigger_event = ep3_laamp_flavour_ewan.9521 - # More likely for gregarious characters. - modifier = { - add = 20 - scope:visitor = { has_trait = gregarious } - } - # Less likely for shy characters. - modifier = { - add = -5 - scope:visitor = { has_trait = shy } - } - } - # They have adopted the local faith. - 5 = { - # Zealous characters won't ever consider this unless they have a sin-virtue mismatch. - trigger = { - scope:visitor = { - ep3_laamp_flavour_ewan_9501_character_would_go_idea_shopping_trigger = yes - NOT = { has_character_flag = laamp_follower_tombola_changed_faith_flag } - } - } - scope:visitor = { add_character_flag = laamp_follower_tombola_changed_faith_flag } - trigger_event = ep3_laamp_flavour_ewan.9522 - # If zealous characters are valid for this, then it means the new faith is a much better fit, so we weight them up drastically. - modifier = { - add = 60 - scope:visitor = { has_trait = zealous } - } - } - # They've taken both the culture and the faith - 5 = { - trigger = { - scope:visitor = { - ep3_laamp_flavour_ewan_9501_culture_to_adopt_trigger = yes - # Zealous characters won't ever consider this unless they have a sin-virtue mismatch. - ep3_laamp_flavour_ewan_9501_character_would_go_idea_shopping_trigger = yes - NOR = { - has_character_flag = laamp_follower_tombola_changed_culture_flag - has_character_flag = laamp_follower_tombola_changed_faith_flag - } - } - } - scope:visitor = { - add_character_flag = laamp_follower_tombola_changed_culture_flag - add_character_flag = laamp_follower_tombola_changed_faith_flag - } - trigger_event = ep3_laamp_flavour_ewan.9523 - # More likely for gregarious characters. - modifier = { - add = 20 - scope:visitor = { has_trait = gregarious } - } - # Less likely for shy characters. - modifier = { - add = -5 - scope:visitor = { has_trait = shy } - } - # If zealous characters are valid for this, then it means the new faith is a much better fit, so we weight them up drastically. - modifier = { - add = 60 - scope:visitor = { has_trait = zealous } - } - } - } - } -} - -################################################## -# Follower Returned -# by Ewan Cowhig Croft -# 9511 - 9520 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = { - stress_impact = { - sadistic = minor_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = medium_stress_impact_gain - } -} - -# Follower returns, the same as when they left. -ep3_laamp_flavour_ewan.9511 = { - type = character_event - title = ep3_laamp_flavour_ewan.9511.t - desc = { - desc = ep3_laamp_flavour_ewan.9511.desc.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:visitor_spouse } - desc = ep3_laamp_flavour_ewan.9511.desc.spouse.got_married - } - desc = ep3_laamp_flavour_ewan.9511.desc.spouse.nope - } - desc = ep3_laamp_flavour_ewan.9511.desc.outro - } - theme = laamp - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:visitor - animation = happiness - } - lower_right_portrait = scope:visitor_spouse - override_background = { reference = ep3_campfire } - - immediate = { - scope:visitor = { - # Have they have gotten married to a local? - if = { - limit = { - can_marry_trigger = yes - OR = { - NOT = { has_sexuality = homosexual } - allowed_to_marry_same_sex_trigger = yes - } - might_cheat_on_every_partner_trigger = yes - } - random = { - chance = { - value = 20 - # Reduce this a little for each existing marriage. - every_spouse = { add = -5 } - # Gregarious characters go out more. - if = { - limit = { has_trait = gregarious } - add = 10 - } - # Lustful characters are potentially in the market. - if = { - limit = { has_trait = gregarious } - add = 5 - } - } - # Create our new char. - save_scope_as = attraction_check - create_character = { - employer = root - age = { - value = scope:visitor.age - integer_range = { - min = -5 - max = 5 - } - min = 20 - max = 85 - } - gender_female_chance = scope_attraction_based_female_chance - culture = scope:visitor.host.capital_county.culture - faith = scope:visitor.host.capital_county.faith - dynasty = none - diplomacy = { - min_template_low_skill - max_template_medium_skill - } - martial = { - min_template_low_skill - max_template_medium_skill - } - stewardship = { - min_template_low_skill - max_template_medium_skill - } - intrigue = { - min_template_low_skill - max_template_medium_skill - } - learning = { - min_template_low_skill - max_template_medium_skill - } - prowess = { - min_template_low_skill - max_template_medium_skill - } - random_traits = no - # Education - random_traits_list = { - count = 1 - education_diplomacy_2 = {} - education_martial_2 = {} - education_stewardship_2 = {} - education_intrigue_2 = {} - education_learning_2 = {} - } - # Personality traits that match their partner - random_traits_list = { - count = 2 - lustful = { - trigger = { - scope:visitor = { has_trait = lustful } - } - } - chaste = { - trigger = { - scope:visitor = { has_trait = chaste } - } - } - gluttonous = { - trigger = { - scope:visitor = { has_trait = gluttonous } - } - } - temperate = { - trigger = { - scope:visitor = { has_trait = temperate } - } - } - greedy = { - trigger = { - scope:visitor = { has_trait = greedy } - } - } - generous = { - trigger = { - scope:visitor = { has_trait = generous } - } - } - lazy = { - trigger = { - scope:visitor = { has_trait = lazy } - } - } - diligent = { - trigger = { - scope:visitor = { has_trait = diligent } - } - } - wrathful = { - trigger = { - scope:visitor = { has_trait = wrathful } - } - } - calm = { - trigger = { - scope:visitor = { has_trait = calm } - } - } - patient = { - trigger = { - scope:visitor = { has_trait = patient } - } - } - impatient = { - trigger = { - scope:visitor = { has_trait = impatient } - } - } - arrogant = { - trigger = { - scope:visitor = { has_trait = arrogant } - } - } - humble = { - trigger = { - scope:visitor = { has_trait = humble } - } - } - deceitful = { - trigger = { - scope:visitor = { has_trait = deceitful } - } - } - honest = { - trigger = { - scope:visitor = { has_trait = honest } - } - } - craven = { - trigger = { - scope:visitor = { has_trait = craven } - } - } - brave = { - trigger = { - scope:visitor = { has_trait = brave } - } - } - shy = { - trigger = { - scope:visitor = { has_trait = shy } - } - } - gregarious = { - trigger = { - scope:visitor = { has_trait = gregarious } - } - } - ambitious = { - trigger = { - scope:visitor = { has_trait = ambitious } - } - } - content = { - trigger = { - scope:visitor = { has_trait = content } - } - } - arbitrary = { - trigger = { - scope:visitor = { has_trait = arbitrary } - } - } - just = { - trigger = { - scope:visitor = { has_trait = just } - } - } - cynical = { - trigger = { - scope:visitor = { has_trait = cynical } - } - } - zealous = { - trigger = { - scope:visitor = { has_trait = zealous } - } - } - paranoid = { - trigger = { - scope:visitor = { has_trait = paranoid } - } - } - trusting = { - trigger = { - scope:visitor = { has_trait = trusting } - } - } - compassionate = { - trigger = { - scope:visitor = { has_trait = compassionate } - } - } - callous = { - trigger = { - scope:visitor = { has_trait = callous } - } - } - sadistic = { - trigger = { - scope:visitor = { has_trait = sadistic } - } - } - stubborn = { - trigger = { - scope:visitor = { has_trait = stubborn } - } - } - fickle = { - trigger = { - scope:visitor = { has_trait = fickle } - } - } - vengeful = { - trigger = { - scope:visitor = { has_trait = vengeful } - } - } - forgiving = { - trigger = { - scope:visitor = { has_trait = forgiving } - } - } - eccentric = { - trigger = { - scope:visitor = { has_trait = eccentric } - } - } - } - # +1 random personality trait - random_traits_list = { - count = 1 - lustful = {} - chaste = {} - gluttonous = {} - temperate = {} - greedy = {} - generous = {} - lazy = {} - diligent = {} - wrathful = {} - calm = {} - patient = {} - impatient = {} - arrogant = {} - humble = {} - deceitful = {} - honest = {} - craven = {} - brave = {} - shy = {} - gregarious = {} - ambitious = {} - content = {} - arbitrary = {} - just = {} - cynical = {} - zealous = {} - paranoid = {} - trusting = {} - compassionate = {} - callous = {} - sadistic = {} - stubborn = {} - fickle = {} - vengeful = {} - forgiving = {} - eccentric = {} - } - # Somethings to spice 'em up. - random_traits_list = { - count = { 1 2 } - # Lifestyles - lifestyle_reveler = {} - lifestyle_blademaster = {} - lifestyle_hunter = {} - lifestyle_mystic = {} - lifestyle_physician = {} - lifestyle_herbalist = {} - lifestyle_gardener = {} - # Stress - drunkard = {} - rakish = {} - reclusive = {} - irritable = {} - flagellant = {} - profligate = {} - improvident = {} - contrite = {} - comfort_eater = {} - inappetetic = {} - journaller = {} - confider = {} - athletic = {} - # Fame - lifestyle_poet = {} - loyal = {} - disloyal = {} - gallowsbait = {} - # Health - depressed_genetic = {} - lunatic_genetic = {} - possessed_genetic = {} - one_eyed = {} - one_legged = {} - disfigured = {} - # Genetic - beauty_bad_1 = {} - beauty_good_1 = {} - intellect_bad_1 = {} - intellect_good_1 = {} - physique_bad_1 = {} - physique_good_1 = {} - clubfooted = {} - hunchbacked = {} - lisping = {} - stuttering = {} - dwarf = {} - giant = {} - spindly = {} - scaly = {} - albino = {} - wheezing = {} - bleeder = {} - infertile = {} - # Natural - fecund = {} - strong = {} - shrewd = {} - } - save_scope_as = visitor_spouse - after_creation = { set_sexuality = bisexual } - } - # Alright, now let's marry 'em up. - if = { - limit = { is_female = yes } - marry_matrilineal = scope:visitor_spouse - } - else = { marry = scope:visitor_spouse } - # Aaaand make sure that the marriage is a happy one. - hidden_effect = { - set_random_lover_reason = { TARGET = scope:visitor_spouse } - add_opinion = { - target = scope:visitor_spouse - modifier = love_opinion - opinion = 100 - } - reverse_add_opinion = { - target = scope:visitor_spouse - modifier = love_opinion - opinion = 100 - } - } - } - } - # And send 'em home. - return_to_court = yes - } - } - - # Welcome, welcome! - option = { - name = ep3_laamp_flavour_ewan.9511.a - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # _Married?_ I think not! - option = { - name = ep3_laamp_flavour_ewan.9511.b - trigger = { exists = scope:visitor_spouse } - - # Divorce. - scope:visitor = { divorce = scope:visitor_spouse } - # Banish them. - remove_courtier_or_guest = { - character = scope:visitor_spouse - new_location = scope:host.capital_county.title_province - } - # And apply some opinions. - scope:visitor = { - add_opinion = { - modifier = forced_divorce_opinion - target = root - } - } - scope:visitor_spouse = { - add_opinion = { - modifier = forced_divorce_opinion - target = root - } - } - - stress_impact = { - sadistic = major_stress_impact_loss - callous = miniscule_stress_impact_loss - compassionate = major_stress_impact_gain - } - # The AI should never take this option. - ai_chance = { base = 0 } - } - - # You are no longer welcome with us. - option = { - name = ep3_laamp_flavour_ewan.9511.c - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -# Follower returns and they've learnt a thing or two. -ep3_laamp_flavour_ewan.9512 = { - type = character_event - title = ep3_laamp_flavour_ewan.9512.t - desc = ep3_laamp_flavour_ewan.9512.desc - theme = laamp - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:visitor - triggered_animation = { - trigger = { scope:skill = flag:diplomacy } - animation = chancellor - } - triggered_animation = { - trigger = { - OR = { - scope:skill = flag:martial - scope:skill = flag:prowess - } - } - animation = marshal - } - triggered_animation = { - trigger = { scope:skill = flag:stewardship } - animation = steward - } - triggered_animation = { - trigger = { scope:skill = flag:intrigue } - animation = spymaster - } - triggered_animation = { - trigger = { scope:skill = flag:learning } - animation = chaplain - } - animation = hero_flex - } - override_background = { reference = ep3_campfire } - - immediate = { - scope:visitor = { - # Sort how much skill we'll be adding. - save_scope_value_as = { - name = skill_gain - value = { - integer_range = { - min = 2 - max = 4 - } - if = { - limit = { has_trait = diligent } - add = 1 - } - else_if = { - limit = { has_trait = lazy } - add = -1 - } - } - } - # Now add it to the highest skill that scope:visitor has. - switch = { - trigger = highest_skill - diplomacy = { add_diplomacy_skill = scope:skill_gain } - martial = { add_martial_skill = scope:skill_gain } - stewardship = { add_stewardship_skill = scope:skill_gain } - intrigue = { add_intrigue_skill = scope:skill_gain } - learning = { add_learning_skill = scope:skill_gain } - } - # Finally, return them to court. - return_to_court = yes - } - } - - # How you've improved, scope:visitor! - option = { - name = ep3_laamp_flavour_ewan.9512.a - - # No effect. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Begone, vagabond. - option = { - name = ep3_laamp_flavour_ewan.9512.b - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -################################################## -# Not As I Remember You -# by Ewan Cowhig Croft -# 9521 - 9530 -################################################## - -scripted_effect ep3_laamp_flavour_ewan_9521_change_visitor_culture_effect = { - scope:visitor = { - culture = { save_scope_as = old_culture } - random_list = { - 100 = { - trigger = { - this != host.culture - } - set_culture = host.culture - save_scope_value_as = { - name = culture_change - value = flag:host - } - } - 100 = { - trigger = { - this != host.capital_county.culture - } - set_culture = host.capital_county.culture - save_scope_value_as = { - name = culture_change - value = flag:capital - } - } - } - culture = { save_scope_as = new_culture } - } -} - -scripted_effect ep3_laamp_flavour_ewan_9521_register_culture_change_reaction_effect = { - # Sort our reactions. - ## They changed away from our culture. - if = { - limit = { culture = scope:old_culture } - save_scope_value_as = { - name = culture_reaction - value = flag:changed_away - } - } - ## They changed _to_ our culture. - else_if = { - limit = { culture = scope:new_culture } - save_scope_value_as = { - name = culture_reaction - value = flag:changed_to - } - } - ## They simply changed culture. - else = { - save_scope_value_as = { - name = culture_reaction - value = flag:uninvolved - } - } -} - -scripted_effect ep3_laamp_flavour_ewan_9521_apply_ethos_skill_bonuses_effect = { - # They've learnt a lot from their new ethos (even if it was the same as their old one). - ## First, randomise our values. - save_scope_value_as = { - name = skill_2 - value = { - integer_range = { - min = 2 - max = 5 - } - } - } - save_scope_value_as = { - name = skill_1 - value = { - integer_range = { - min = { - value = scope:skill_2 - add = 1 - } - max = 6 - } - } - } - ## Then apply them. - switch = { - trigger = has_cultural_pillar - ethos_bellicose = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.martial - add_martial_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.prowess - add_prowess_skill = scope:skill_2 - } - } - ethos_stoic = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.martial - add_martial_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.stewardship - add_stewardship_skill = scope:skill_2 - } - } - ethos_bureaucratic = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.stewardship - add_stewardship_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.learning - add_learning_skill = scope:skill_2 - } - } - ethos_spiritual = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.learning - add_learning_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.diplomacy - add_diplomacy_skill = scope:skill_2 - } - } - ethos_courtly = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.diplomacy - add_diplomacy_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.intrigue - add_intrigue_skill = scope:skill_2 - } - } - ethos_egalitarian = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.diplomacy - add_diplomacy_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.stewardship - add_stewardship_skill = scope:skill_2 - } - } - ethos_communal = { - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.primary_skill.stewardship - add_stewardship_skill = scope:skill_1 - } - custom_tooltip = { - text = ep3_laamp_flavour_ewan.9521.tt.secondary_skill.learning - add_learning_skill = scope:skill_2 - } - } - } -} - -# Follower has taken on the culture of the place they stayed at. -ep3_laamp_flavour_ewan.9521 = { - type = character_event - title = ep3_laamp_flavour_ewan.9521.t - desc = { - desc = ep3_laamp_flavour_ewan.9521.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:culture_change = flag:host } - desc = ep3_laamp_flavour_ewan.9521.desc.source.host - } - triggered_desc = { - trigger = { scope:culture_change = flag:capital } - desc = ep3_laamp_flavour_ewan.9521.desc.source.capital - } - } - first_valid = { - triggered_desc = { - trigger = { scope:culture_reaction = flag:changed_away } - desc = ep3_laamp_flavour_ewan.9521.desc.reaction.changed_away - } - triggered_desc = { - trigger = { scope:culture_reaction = flag:changed_to } - desc = ep3_laamp_flavour_ewan.9521.desc.reaction.changed_to - } - triggered_desc = { - trigger = { scope:culture_reaction = flag:uninvolved } - desc = ep3_laamp_flavour_ewan.9521.desc.reaction.uninvolved - } - } - desc = ep3_laamp_flavour_ewan.9521.desc.outro - } - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:culture_reaction = flag:changed_away } - animation = shock - } - triggered_animation = { - trigger = { scope:culture_reaction = flag:changed_to } - animation = admiration - } - triggered_animation = { - trigger = { scope:culture_reaction = flag:uninvolved } - animation = personality_forgiving - } - } - right_portrait = { - character = scope:visitor - animation = personality_bold - } - override_background = { reference = ep3_campfire } - - immediate = { - # Configure scope:visitor's culture change. - ep3_laamp_flavour_ewan_9521_change_visitor_culture_effect = yes - # Sort our reactions. - ep3_laamp_flavour_ewan_9521_register_culture_change_reaction_effect = yes - # They've learnt a lot from their new ethos (even if it was the same as their old one). - ep3_laamp_flavour_ewan_9521_apply_ethos_skill_bonuses_effect = yes - # Bring them home. - scope:visitor = { return_to_court = yes } - } - - # Accept them back. - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { scope:culture_reaction = flag:changed_away } - desc = ep3_laamp_flavour_ewan.9521.a.changed_away - } - triggered_desc = { - trigger = { scope:culture_reaction = flag:changed_to } - desc = ep3_laamp_flavour_ewan.9521.a.changed_to - } - triggered_desc = { - trigger = { scope:culture_reaction = flag:uninvolved } - desc = ep3_laamp_flavour_ewan.9521.a.uninvolved - } - } - } - } - - # No effects. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # You're not wanted any more, scope:visitor. - option = { - name = ep3_laamp_flavour_ewan.9521.b - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -scripted_effect ep3_laamp_flavour_ewan_9522_change_visitor_faith_effect = { - scope:visitor = { - faith = { save_scope_as = old_faith } - random_list = { - 100 = { - trigger = { - this != host.faith - } - set_character_faith = host.faith - save_scope_value_as = { - name = faith_change - value = flag:host - } - } - 100 = { - trigger = { - this != host.capital_county.faith - } - set_character_faith = host.capital_county.faith - save_scope_value_as = { - name = faith_change - value = flag:capital - } - } - } - faith = { save_scope_as = new_faith } - } -} - -scripted_effect ep3_laamp_flavour_ewan_9522_register_faith_change_reaction_effect = { - # Sort our reactions. - ## We are cynical. - if = { - limit = { has_trait = cynical } - save_scope_value_as = { - name = faith_reaction - value = flag:give_a_shit - } - } - ## They changed away from our faith. - if = { - limit = { faith = scope:old_faith } - save_scope_value_as = { - name = faith_reaction - value = flag:changed_away - } - } - ## They changed _to_ our faith. - else_if = { - limit = { faith = scope:new_faith } - save_scope_value_as = { - name = faith_reaction - value = flag:changed_to_ours - } - } - ## They changed to a faith we love. - else_if = { - limit = { faith = scope:new_faith } - save_scope_value_as = { - name = faith_reaction - value = flag:changed_to_lovable - } - } - ## They changed to a faith we tolerate. - else_if = { - limit = { faith = scope:new_faith } - save_scope_value_as = { - name = faith_reaction - value = flag:changed_to_acceptable - } - } - ## They simply changed faith. - else = { - save_scope_value_as = { - name = faith_reaction - value = flag:uninvolved - } - } -} - -# Follower has taken on the faith of the place they stayed at. -ep3_laamp_flavour_ewan.9522 = { - type = character_event - title = ep3_laamp_flavour_ewan.9522.t - desc = { - desc = ep3_laamp_flavour_ewan.9522.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:faith_change = flag:host } - desc = ep3_laamp_flavour_ewan.9522.desc.source.host - } - triggered_desc = { - trigger = { scope:faith_change = flag:capital } - desc = ep3_laamp_flavour_ewan.9522.desc.source.capital - } - } - desc = ep3_laamp_flavour_ewan.9522.desc.source.bridge - first_valid = { - triggered_desc = { - trigger = { scope:faith_reaction = flag:give_a_shit } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.give_a_shit - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_away } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.changed_away - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_ours } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.changed_to_ours - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_lovable } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.changed_to_lovable - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_acceptable } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.changed_to_acceptable - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:uninvolved } - desc = ep3_laamp_flavour_ewan.9522.desc.reaction.uninvolved - } - } - desc = ep3_laamp_flavour_ewan.9522.desc.outro - } - theme = laamp - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:faith_reaction = flag:give_a_shit } - animation = dismissal - } - triggered_animation = { - trigger = { scope:faith_reaction = flag:changed_away } - animation = shock - } - triggered_animation = { - trigger = { - OR = { - scope:faith_reaction = flag:changed_to_ours - scope:faith_reaction = flag:changed_to_lovable - scope:faith_reaction = flag:changed_to_acceptable - } - } - animation = admiration - } - triggered_animation = { - trigger = { scope:faith_reaction = flag:uninvolved } - animation = personality_forgiving - } - } - right_portrait = { - character = scope:visitor - animation = personality_zealous - } - override_background = { reference = ep3_campfire } - - immediate = { - # Configure scope:visitor's faith change. - ep3_laamp_flavour_ewan_9522_change_visitor_faith_effect = yes - # Sort our reactions. - ep3_laamp_flavour_ewan_9522_register_faith_change_reaction_effect = yes - # The conversion process involves a lot of education. - scope:visitor = { - add_learning_skill = { - integer_range = { - min = 3 - max = 8 - } - } - } - # Bring them home. - scope:visitor = { return_to_court = yes } - } - - # Zealous, same faith: welcome, SisterBrother! - option = { - name = ep3_laamp_flavour_ewan.9522.a - trigger = { - has_trait = zealous - faith = scope:visitor.faith - } - trait = zealous - - add_piety = minor_piety_gain - - stress_impact = { zealous = minor_stress_impact_loss } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Zealous, other: But why convert to scope:new_faith... - option = { - name = ep3_laamp_flavour_ewan.9522.b - trigger = { - has_trait = zealous - NOR = { - faith = scope:visitor.faith - faith = scope:old_faith - } - } - trait = zealous - - # No effects. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Zealous, converted away: What have you done, you fool?! - option = { - name = ep3_laamp_flavour_ewan.9522.c - trigger = { - has_trait = zealous - faith = scope:old_faith - } - trait = zealous - - # No effects. - - stress_impact = { zealous = minor_stress_impact_gain } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Cynical: scope:old_faith, scope:new_faith, you're still scope:visitor to me. - option = { - name = ep3_laamp_flavour_ewan.9522.d - trigger = { has_trait = cynical } - - reverse_add_opinion = { - target = scope:visitor - modifier = respect_opinion - opinion = 50 - } - if = { - limit = { - can_set_relation_potential_friend_trigger = { CHARACTER = scope:visitor } - } - set_relation_potential_friend = scope:visitor - } - - stress_impact = { cynical = medium_stress_impact_loss } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Good to have you back, scope:visitor. - option = { - name = ep3_laamp_flavour_ewan.9522.e - trigger = { - NOR = { - has_trait = zealous - has_trait = cynical - } - } - - # No effect. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # You are no longer welcome here. - option = { - name = ep3_laamp_flavour_ewan.9522.f - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -# Follower has taken on the faith and culture of the place they stayed at. -ep3_laamp_flavour_ewan.9523 = { - type = character_event - title = ep3_laamp_flavour_ewan.9523.t - desc = { - desc = ep3_laamp_flavour_ewan.9523.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:faith_change = flag:host } - desc = ep3_laamp_flavour_ewan.9523.desc.source.host - } - triggered_desc = { - trigger = { scope:faith_change = flag:capital } - desc = ep3_laamp_flavour_ewan.9523.desc.source.capital - } - } - desc = ep3_laamp_flavour_ewan.9523.desc.source.bridge - first_valid = { - triggered_desc = { - trigger = { scope:faith_reaction = flag:give_a_shit } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.give_a_shit - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_away } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.changed_away - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_ours } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.changed_to_ours - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_lovable } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.changed_to_lovable - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:changed_to_acceptable } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.changed_to_acceptable - } - triggered_desc = { - trigger = { scope:faith_reaction = flag:uninvolved } - desc = ep3_laamp_flavour_ewan.9523.desc.reaction.uninvolved - } - } - desc = ep3_laamp_flavour_ewan.9523.desc.outro - } - theme = laamp - # We dupe the faith logic for portraits, because it's the more important of the two & because _Jesus H. Christ_ the permutations otherwise. - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:faith_reaction = flag:give_a_shit } - animation = dismissal - } - triggered_animation = { - trigger = { scope:faith_reaction = flag:changed_away } - animation = shock - } - triggered_animation = { - trigger = { - OR = { - scope:faith_reaction = flag:changed_to_ours - scope:faith_reaction = flag:changed_to_lovable - scope:faith_reaction = flag:changed_to_acceptable - } - } - animation = admiration - } - triggered_animation = { - trigger = { scope:faith_reaction = flag:uninvolved } - animation = personality_forgiving - } - } - right_portrait = { - character = scope:visitor - animation = personality_zealous - } - override_background = { reference = ep3_campfire } - - immediate = { - # Configure scope:visitor's changes. - ## Culture. - ep3_laamp_flavour_ewan_9521_change_visitor_culture_effect = yes - ## Faith. - ep3_laamp_flavour_ewan_9522_change_visitor_faith_effect = yes - # Sort our reactions. - ## Culture. - ep3_laamp_flavour_ewan_9521_register_culture_change_reaction_effect = yes - ## Faith. - ep3_laamp_flavour_ewan_9522_register_faith_change_reaction_effect = yes - # They've learnt a lot from their new ethos (even if it was the same as their old one). - ## Ignore a bonus from conversion — they're already getting a substantial one from this change that's more flavourful. - ep3_laamp_flavour_ewan_9521_apply_ethos_skill_bonuses_effect = yes - # Bring them home. - scope:visitor = { return_to_court = yes } - } - - # Zealous, same faith: welcome, SisterBrother! - option = { - name = ep3_laamp_flavour_ewan.9523.a - trigger = { - has_trait = zealous - faith = scope:visitor.faith - } - trait = zealous - - add_piety = minor_piety_gain - - stress_impact = { zealous = minor_stress_impact_loss } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Zealous, other: But why convert to scope:new_faith... - option = { - name = ep3_laamp_flavour_ewan.9523.b - trigger = { - has_trait = zealous - NOR = { - faith = scope:visitor.faith - faith = scope:old_faith - } - } - trait = zealous - - # No effects. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Zealous, converted away: What have you done, you fool?! - option = { - name = ep3_laamp_flavour_ewan.9523.c - trigger = { - has_trait = zealous - faith = scope:old_faith - } - trait = zealous - - # No effects. - - stress_impact = { zealous = minor_stress_impact_gain } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Cynical: scope:old_faith, scope:new_faith, you're still scope:visitor to me. - option = { - name = ep3_laamp_flavour_ewan.9523.d - trigger = { has_trait = cynical } - - reverse_add_opinion = { - target = scope:visitor - modifier = respect_opinion - opinion = 50 - } - if = { - limit = { - can_set_relation_potential_friend_trigger = { CHARACTER = scope:visitor } - } - set_relation_potential_friend = scope:visitor - } - - stress_impact = { cynical = medium_stress_impact_loss } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Good to have you back, scope:visitor. - option = { - name = ep3_laamp_flavour_ewan.9523.e - trigger = { - NOR = { - has_trait = zealous - has_trait = cynical - } - } - - # No effect. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # You are no longer welcome here. - option = { - name = ep3_laamp_flavour_ewan.9523.f - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -################################################## -# Missing Follower -# by Ewan Cowhig Croft -# 9531 - 9540 -################################################## - -# Follower has died whilst away from camp. -ep3_laamp_flavour_ewan.9531 = { - type = character_event - title = ep3_laamp_flavour_ewan.9531.t - desc = ep3_laamp_flavour_ewan.9531.desc - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:visitor - animation = map_fear - } - override_background = { reference = ep3_campfire } - - trigger = { - # Make sure that this isn't a character who we would've been informed about the death of already (i.e., a spouse or family — relations are lost on death already so we have to bite the bullet there without doing something awful with variables). - NOR = { - is_spouse_of_even_if_dead = scope:visitor - is_close_or_extended_family_of = scope:visitor - } - } - - immediate = { - custom_tooltip = ep3_laamp_flavour_ewan.9531.tt.follower_is_dead - hidden_effect = { - scope:visitor = { return_to_court = yes } - } - } - - # To think we shall never see HerHim again... - option = { - name = ep3_laamp_flavour_ewan.9531.a - - # No effect. - - # No stress here. - # The AI should only take this if it's the _only_ option. - ai_chance = { base = 0 } - } - - # Callous: eh. - option = { - name = ep3_laamp_flavour_ewan.9531.b - trigger = { has_trait = callous } - trait = callous - - stress_impact = { callous = major_stress_impact_loss } - # If you're callous, take the stress loss. - ai_chance = { base = 100 } - } -} - -# Follower has been imprisoned away from camp. -ep3_laamp_flavour_ewan.9532 = { - type = character_event - title = ep3_laamp_flavour_ewan.9532.t - desc = ep3_laamp_flavour_ewan.9532.desc - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:visitor - animation = prisondungeon - } - override_background = { reference = ep3_campfire } - - trigger = { - root != scope:visitor.imprisoner - } - - on_trigger_fail = { - scope:visitor = { return_to_court = yes } - } - - immediate = { - scope:visitor.imprisoner = { save_scope_as = imprisoner } - show_as_tooltip = { - rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:visitor - IMPRISONER = scope:imprisoner - } - } - hidden_effect = { - scope:visitor = { return_to_court = yes } - } - } - - # We must free scope:visitor! - option = { - name = ep3_laamp_flavour_ewan.9532.a - - # No effects. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Scope:imprisoner can keep HerHim for all I care. - option = { - name = ep3_laamp_flavour_ewan.9532.b - - remove_courtier_or_guest = scope:visitor - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -# Follower has become incapable whilst away from camp. -ep3_laamp_flavour_ewan.9533 = { - type = character_event - title = ep3_laamp_flavour_ewan.9533.t - desc = ep3_laamp_flavour_ewan.9533.desc - theme = laamp - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:visitor - animation = paranoia - } - override_background = { reference = ep3_campfire } - - immediate = { - custom_tooltip = ep3_laamp_flavour_ewan.9533.tt.follower_is_incapable - scope:visitor = { return_to_court = yes } - } - - # What on Earth happened to HerHim? - option = { - name = ep3_laamp_flavour_ewan.9533.a - trigger = { - NOT = { has_trait = compassionate } - } - - # No effect. - - # No stress here. - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Compassionate: worry not, scope:visitor, we shall care for you. - option = { - name = ep3_laamp_flavour_ewan.9533.b - trigger = { has_trait = compassionate } - trait = compassionate - - reverse_add_opinion = { - target = scope:visitor - modifier = feast_helped_me_opinion - opinion = 50 - } - every_courtier = { - custom = custom.every_non_callous_or_sadistic_follower - limit = { - NOR = { - has_trait = callous - has_trait = sadistic - } - } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - - stress_impact = { compassionate = major_stress_impact_loss } - # The AI should always just uncritically take people back. - ai_chance = { base = 100 } - } - - # Drive this imbecile away. - option = { - name = ep3_laamp_flavour_ewan.9533.c - - scope:visitor = { select_and_move_to_pool_effect = yes } - - ep3_laamp_flavour_ewan_9511_standard_drive_away_char_stress_effect = yes - # The AI should never take this option. - ai_chance = { base = 0 } - } -} - -# Follower never comes home. -ep3_laamp_flavour_ewan.9534 = { - type = character_event - title = ep3_laamp_flavour_ewan.9534.t - desc = ep3_laamp_flavour_ewan.9534.desc - theme = laamp - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:visitor - animation = map_disbelief - } - override_background = { reference = ep3_campfire } - - immediate = { - custom_tooltip = ep3_laamp_flavour_ewan.9534.tt.follower_is_lost - hidden_effect = { - remove_courtier_or_guest = { - character = scope:visitor - new_location = scope:visitor.location - } - } - } - - # I wonder what could have happened to HerHim... - option = { - name = ep3_laamp_flavour_ewan.9534.a - - # No effects. - - # No stress, no AI. - } -} - -################################################## -# Camp Activity Feed Message -# by Ewan Cowhig Croft -# 9541 - 9550 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = { - is_adult = yes - is_available_allow_travelling = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_nicknameable_courtier_trigger = { - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - has_any_nickname = no -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_dog_courtier_trigger = { - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - ep3_laamp_flavour_ewan_no_dog_trigger = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_cat_courtier_trigger = { - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - ep3_laamp_flavour_ewan_no_cat_trigger = yes -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_potential_friend_courtier_trigger = { - this != scope:follower_1 - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - "trait_compatibility(scope:follower_1)" >= low_positive_trait_compatibility - NOT = { - has_important_relationship_with_character_trigger = { CHARACTER = scope:follower_1 } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_potential_rival_courtier_trigger = { - this != scope:follower_1 - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - "trait_compatibility(scope:follower_1)" <= low_negative_trait_compatibility - NOT = { - has_important_relationship_with_character_trigger = { CHARACTER = scope:follower_1 } - } -} - -scripted_trigger ep3_laamp_flavour_ewan_9541_valid_stressed_courtier_trigger = { - ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes - stress >= 1 -} - -# Something minor happens at camp. -ep3_laamp_flavour_ewan.9541 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_9541 } - } - # Plus make sure _someone_ is valid for something. - any_courtier = { ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes } - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_9541 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_9541 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_shorter - } - } - # Grab a courtier for our relation effect triggers. - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes } - save_scope_as = follower_1 - } - # Right, determine what's going to be happening. - random_list = { - # Nicknames. - 500 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_nicknameable_courtier_trigger = yes } - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_nicknameable_courtier_trigger = yes } - weight = { laamp_weight_up_minor_chars_modifier = yes } - save_scope_as = eponymee - } - hidden_effect = { - scope:eponymee = { - assign_random_nickname_effect = yes - hidden_effect = { - if = { - limit = { - has_any_nickname = no - } - set_random_negative_nickname_effect = yes - } - } - } - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.nickname_gained - desc = ep3_laamp_flavour_ewan.9541.desc.nickname_gained - left_icon = scope:eponymee - } - } - # Dogs. - 75 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_dog_courtier_trigger = yes } - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_dog_courtier_trigger = yes } - weight = { laamp_weight_up_minor_chars_modifier = yes } - save_scope_as = pet_owner - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.dog_gained - desc = ep3_laamp_flavour_ewan.9541.desc.dog_gained - left_icon = scope:pet_owner - scope:pet_owner = { start_dog_story_cycle_effect = yes } - } - } - # Cats. - 100 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_cat_courtier_trigger = yes } - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_cat_courtier_trigger = yes } - weight = { laamp_weight_up_minor_chars_modifier = yes } - save_scope_as = pet_owner - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.cat_gained - desc = ep3_laamp_flavour_ewan.9541.desc.cat_gained - left_icon = scope:pet_owner - scope:pet_owner = { start_cat_story_cycle_effect = yes } - } - } - # Opinions & potential friends. - 100 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_potential_friend_courtier_trigger = yes } - } - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_potential_friend_courtier_trigger = yes } - order_by = "trait_compatibility(scope:follower_1)" - save_scope_as = follower_2 - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.opinion_gained - desc = ep3_laamp_flavour_ewan.9541.desc.opinion_gained - left_icon = scope:follower_1 - right_icon = scope:follower_2 - scope:follower_1 = { - if = { - limit = { - can_set_relation_potential_friend_trigger = { CHARACTER = scope:follower_2 } - } - set_relation_potential_friend = scope:follower_2 - } - add_opinion = { - target = scope:follower_2 - modifier = friendliness_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = friendliness_opinion - opinion = 30 - } - } - } - } - # Opinions & potential rivals. - 100 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_potential_rival_courtier_trigger = yes } - } - ordered_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_potential_rival_courtier_trigger = yes } - order_by = "trait_compatibility(scope:follower_1)" - save_scope_as = follower_2 - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.opinion_lost - desc = ep3_laamp_flavour_ewan.9541.desc.opinion_lost - left_icon = scope:follower_1 - right_icon = scope:follower_2 - scope:follower_1 = { - if = { - limit = { - can_set_relation_potential_rival_trigger = { CHARACTER = scope:follower_2 } - } - set_relation_potential_rival = scope:follower_2 - } - add_opinion = { - target = scope:follower_2 - modifier = irritated_opinion - opinion = -30 - } - reverse_add_opinion = { - target = scope:follower_2 - modifier = irritated_opinion - opinion = -30 - } - } - } - } - # Gain stress. - ## Largely here as a fallback — not that interesting so we weight it down reaaaalll good. - 5 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes } - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_suitable_courtier_trigger = yes } - weight = { laamp_weight_up_minor_chars_modifier = yes } - save_scope_as = stressee - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.stress_gained - desc = ep3_laamp_flavour_ewan.9541.desc.stress_gained - left_icon = scope:stressee - scope:stressee = { - random_list = { - 20 = { add_stress = minor_stress_gain } - 60 = { add_stress = medium_stress_gain } - 20 = { add_stress = major_stress_gain } - } - } - } - } - # Lose stress. - 120 = { - trigger = { - any_courtier = { ep3_laamp_flavour_ewan_9541_valid_stressed_courtier_trigger = yes } - } - random_courtier = { - limit = { ep3_laamp_flavour_ewan_9541_valid_stressed_courtier_trigger = yes } - save_scope_as = stressee - } - send_interface_message = { - type = event_camp_follower_with_text - title = ep3_laamp_flavour_ewan.9541.t.stress_lost - desc = ep3_laamp_flavour_ewan.9541.desc.stress_lost - left_icon = scope:stressee - scope:stressee = { - random_list = { - 10 = { add_stress = minor_stress_loss } - 60 = { add_stress = medium_stress_loss } - 30 = { add_stress = major_stress_loss } - } - } - } - } - } - } -} - -################################################## -# AI Laamp Converts -# by Ewan Cowhig Croft -# 9551 - 9560 -################################################## - -scripted_trigger ep3_laamp_flavour_ewan_9551_character_would_go_idea_shopping_trigger = { - NOR = { - has_character_flag = ai_will_not_convert - has_trait = faith_warrior - has_trait = crusader_king - has_trait = stubborn - faith = location.faith - } - # Religious characters compare what faiths fit them best. - OR = { - # Non-zealous characters will consider a switch if they're not virtuous but would be in a new faith. - AND = { - NOT = { has_trait = zealous } - num_virtuous_traits = { - value <= 0 - target = faith - } - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = location.faith } - } - # Zealous characters will _also_ switch, but also need to feel like they're sinful in their current faith. - AND = { - has_trait = zealous - num_sinful_traits = { - value >= 1 - target = faith - } - num_virtuous_traits = { - value <= 0 - target = faith - } - ep3_laamp_flavour_ewan_9501_faith_sin_virtue_check_trigger = { FAITH = location.faith } - } - # Cynical characters will gladly convert to whatever, provided they feel it suits them. - AND = { - has_trait = cynical - NOR = { - has_trait = arrogant - has_trait = stubborn - } - } - } - # Just rule out the inevitable modded HoF laamps from trying to abandon their faith. - NOT = { faith.religious_head ?= root } -} - -# AI laamps convert to various local faiths. -ep3_laamp_flavour_ewan.9551 = { - hidden = yes - - trigger = { - # DLC check. - has_ep3_dlc_trigger = yes - # Standard checks. - is_adult = yes - is_available_allow_travelling = yes - # Make sure we're on dry land. - is_location_valid_for_travel_event_on_land = yes - # Laamps use title cooldowns, to help trim down repeats when succession happens. - primary_title = { - NOT = { has_variable = had_ep3_laamp_flavour_ewan_9551 } - } - # Now make sure that we'd actually convert. - ## Never convert reformed to unreformed without good reason. - location.faith = { - OR = { - NOT = { has_doctrine_parameter = unreformed } - AND = { - has_doctrine_parameter = unreformed - root.faith = { has_doctrine_parameter = unreformed } - } - root = { has_trait = eccentric } - } - } - ## General validity checks. - ep3_laamp_flavour_ewan_9551_character_would_go_idea_shopping_trigger = yes - # AI-only. - is_ai = yes - } - - immediate = { - if = { - limit = { enable_debug_laamp_event_logging_toggle_trigger = yes } - increment_global_variable_effect = { - VAR = tally_lfe_9551 - VAL = 1 - } - } - # Set our cooldown. - primary_title = { - set_variable = { - name = had_ep3_laamp_flavour_ewan_9551 - value = yes - years = @ep3_laamp_flavour_ewan_event_cooldown_longest - } - } - # And convert our character. - set_character_faith_with_conversion = location.faith - } -} - - - - - - - - - - - -################################################## -# MAINTENANCE - -# Range 9801+ reserved for w/e lil management events might turn up. diff --git a/events/dlc/ep3/ep3_laamps_provisions.txt b/events/dlc/ep3/ep3_laamps_provisions.txt deleted file mode 100644 index 2d6d34318..000000000 --- a/events/dlc/ep3/ep3_laamps_provisions.txt +++ /dev/null @@ -1,1157 +0,0 @@ -namespace = ep3_laamps_provisions - -scripted_trigger domicile_provisions_medium_to_low_trigger = { - domicile = { - provisions <= provisions_privation_threshold_start - provisions > provisions_privation_threshold_low - } -} -scripted_trigger domicile_provisions_low_to_very_low_trigger = { - domicile = { - provisions <= provisions_privation_threshold_low - provisions > provisions_privation_threshold_very_low - } -} -scripted_trigger domicile_provisions_very_low_to_zero_trigger = { - domicile = { - provisions <= provisions_privation_threshold_very_low - provisions > provisions_privation_threshold_empty - } -} - -scripted_trigger char_resistant_to_privation_in_desert_trigger = { - OR = { - has_trait = desert_warrior - culture = { has_cultural_parameter = resistant_to_desert_privation } - } -} -scripted_trigger char_resistant_to_privation_in_mountains_trigger = { - OR = { - has_trait = rough_terrain_expert - culture = { has_cultural_parameter = resistant_to_mountain_privation } - } -} -scripted_trigger char_resistant_to_privation_in_desert_mountains_trigger = { - OR = { - # Desert mountains are especially harsh, so yes, you need both. - AND = { - has_trait = desert_warrior - has_trait = rough_terrain_expert - } - culture = { - has_cultural_parameter = resistant_to_desert_privation - has_cultural_parameter = resistant_to_mountain_privation - } - } -} -scripted_trigger char_resistant_to_privation_in_winter_trigger = { - OR = { - has_trait = winter_soldier - culture = { has_cultural_parameter = resistant_to_winter_privation } - } -} - -scripted_effect apply_privation_event_cooldown_effect = { - # In a desert. - if = { - limit = { - location = { terrain = desert } - # Some characters give you a _degree_ of immunity. - char_resistant_to_privation_in_desert_trigger = no - scope:host.court_position:quartermaster_camp_officer ?= { char_resistant_to_privation_in_desert_trigger = no } - } - } - # In the mountains. - else_if = { - limit = { - location = { terrain = mountains } - # Some characters give you a _degree_ of immunity. - char_resistant_to_privation_in_mountains_trigger = no - scope:host.court_position:quartermaster_camp_officer ?= { char_resistant_to_privation_in_mountains_trigger = no } - } - } - # In desert mountains. - else_if = { - limit = { - location = { terrain = desert_mountains } - # Some characters give you a _degree_ of immunity. - char_resistant_to_privation_in_desert_mountains_trigger = no - scope:host.court_position:quartermaster_camp_officer ?= { char_resistant_to_privation_in_desert_mountains_trigger = no } - } - } - # In extreme winter. - else_if = { - limit = { - location = { has_province_modifier = winter_harsh_modifier } - # Some characters give you a _degree_ of immunity. - char_resistant_to_privation_in_winter_trigger = no - scope:host.court_position:quartermaster_camp_officer ?= { char_resistant_to_privation_in_winter_trigger = no } - } - } - # Aaaaand if we pass through all those, _then_ add our cooldown. - else = { - add_character_flag = { - flag = provision_events_cooldown - months = 3 - } - } -} - -# Medium provisions - people are concerned -ep3_laamps_provisions.1000 = { - type = character_event - title = ep3_laamps_provisions.1000.t - desc = ep3_laamps_provisions.1000.desc - theme = travel - left_portrait = { - character = root - animation = dismissal - } - right_portrait = { - character = scope:concerned - animation = worry - } - - trigger = { - domicile_provisions_medium_to_low_trigger = yes - NOT = { - has_character_flag = provision_events_cooldown - } - any_courtier_or_guest = { - age >= 12 - NOT = { has_character_flag = concerned_cooldown } - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - random_courtier_or_guest = { - limit = { - age >= 12 - NOT = { has_character_flag = concerned_cooldown } - is_of_major_interest_trigger = { CHARACTER = root } - } - alternative_limit = { - age >= 12 - NOT = { has_character_flag = concerned_cooldown } - is_of_minor_interest_trigger = { CHARACTER = root } - } - alternative_limit = { - age >= 12 - NOT = { has_character_flag = concerned_cooldown } - } - save_scope_as = concerned - add_character_flag = { - flag = concerned_cooldown - months = 12 - } - } - } - - #Option A: lose opinion - option = { - name = ep3_laamps_provisions.1000.a - scope:concerned = { - add_opinion = { - target = root - modifier = worried_opinion - opinion = -15 - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #Option B: give them money - option = { - name = ep3_laamps_provisions.1000.b - pay_short_term_gold = { - target = scope:concerned - gold = tiny_gold_value - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_greed = -0.5 - } - } - } -} - -# Low provisions - MaA take a hit -ep3_laamps_provisions.1010 = { - type = character_event - title = ep3_laamps_provisions.1010.t - desc = ep3_laamps_provisions.1010.desc - theme = travel - left_portrait = { - character = root - animation = worry - } - - trigger = { - domicile_provisions_low_to_very_low_trigger = yes - current_military_strength >= 100 - NOT = { - has_character_flag = provision_events_cooldown - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - } - - #Option A: - option = { - name = ep3_laamps_provisions.1010.a - # 15% of your MaA desert - every_maa_regiment = { - limit = { - maa_current_troops_count >= 7 - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.15 - } - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } -} - -# Low provisions - someone leaves -ep3_laamps_provisions.1020 = { - type = character_event - title = ep3_laamps_provisions.1020.t - desc = ep3_laamps_provisions.1020.desc - theme = travel - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:leaver - animation = rage - } - - trigger = { - domicile_provisions_low_to_very_low_trigger = yes - NOT = { - has_character_flag = provision_events_cooldown - } - any_courtier_or_guest = { - is_available_ai_adult = yes - NOR = { - is_close_family_of = root - has_any_court_position = yes - } - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - random_courtier_or_guest = { - limit = { - is_available_ai_adult = yes - NOR = { - is_close_family_of = root - has_any_court_position = yes - } - } - save_scope_as = leaver - } - } - - #Option A: - option = { - name = ep3_laamps_provisions.1020.a - current_travel_plan ?= { remove_character = scope:leaver } - scope:leaver = { move_to_pool = yes } - stress_impact = { - base = medium_stress_impact_gain - } - } -} - -# Very Low provisions - someone important leaves -ep3_laamps_provisions.1025 = { - type = character_event - title = ep3_laamps_provisions.1025.t - desc = ep3_laamps_provisions.1025.desc - theme = travel - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:leaver - animation = rage - } - - trigger = { - domicile_provisions_very_low_to_zero_trigger = yes - NOT = { - has_character_flag = provision_events_cooldown - } - any_courtier_or_guest = { - is_available_ai_adult = yes - OR = { - is_close_family_of = root - has_any_court_position = yes - } - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - random_courtier_or_guest = { - limit = { - OR = { - is_close_family_of = root - has_any_court_position = yes - } - } - save_scope_as = leaver - } - } - - #Option A: - option = { - name = ep3_laamps_provisions.1025.a - current_travel_plan ?= { remove_character = scope:leaver } - scope:leaver = { move_to_pool = yes } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -15 - } - } - stress_impact = { - base = major_stress_impact_gain - } - } -} - -# Very Low provisions - MaA are hit hard/desertions -ep3_laamps_provisions.1030 = { - type = character_event - title = ep3_laamps_provisions.1030.t - desc = ep3_laamps_provisions.1030.desc - theme = travel - left_portrait = { - character = root - animation = worry - } - - trigger = { - domicile_provisions_very_low_to_zero_trigger = yes - NOT = { - has_character_flag = provision_events_cooldown - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - } - - #Option A: - option = { - name = ep3_laamps_provisions.1030.a - # 35% of your MaA desert - every_maa_regiment = { - limit = { - maa_current_troops_count >= 3 - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.35 - } - } - } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -15 - } - } - stress_impact = { - base = major_stress_impact_gain - } - } -} - -# Very Low provisions - You get sick -ep3_laamps_provisions.1040 = { - type = character_event - title = ep3_laamps_provisions.1040.t - desc = ep3_laamps_provisions.1040.desc - theme = travel - left_portrait = { - character = root - animation = sick - } - - trigger = { - domicile_provisions_very_low_to_zero_trigger = yes - NOR = { - has_character_flag = provision_events_cooldown - has_trait = ill - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - } - - #Option A: - option = { - name = ep3_laamps_provisions.1040.a - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -15 - } - } - stress_impact = { - base = major_stress_impact_gain - } - } -} - -# Very Low provisions - someone dies/pet dies -ep3_laamps_provisions.1050 = { - type = character_event - title = ep3_laamps_provisions.1050.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - has_variable = story_cycle_horse_name - } - desc = ep3_laamps_provisions.1050.desc_pet_horse - } - triggered_desc = { - trigger = { - has_variable = story_cycle_dog_name - } - desc = ep3_laamps_provisions.1050.desc_pet_dog - } - triggered_desc = { - trigger = { - has_variable = story_cycle_cat_name - } - desc = ep3_laamps_provisions.1050.desc_pet_cat - } - desc = ep3_laamps_provisions.1050.desc_pet_no - } - first_valid = { - triggered_desc = { - trigger = { - exists = scope:pet_story - } - desc = ep3_laamps_provisions.1050.desc_pet - } - desc = ep3_laamps_provisions.1050.desc_follower - } - } - theme = death - left_portrait = { - character = root - animation = crying - } - right_portrait = { - trigger = { - exists = scope:dead - } - character = scope:dead - animation = dead - } - - trigger = { - domicile_provisions_very_low_to_zero_trigger = yes - NOT = { - has_character_flag = provision_events_cooldown - } - OR = { - any_owned_story = { type = story_cycle_pet_cat } - any_owned_story = { type = story_cycle_pet_dog } - any_owned_story = { type = story_cycle_martial_lifestyle_warhorse } - any_courtier_or_guest = { - is_available_ai = yes - } - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - random_owned_story = { - type = story_cycle_martial_lifestyle_warhorse - save_scope_as = pet_story - } - if = { - limit = { - NOT = { exists = scope:pet_story } - } - random_owned_story = { - type = story_cycle_pet_dog - save_scope_as = pet_story - } - } - if = { - limit = { - NOT = { exists = scope:pet_story } - } - random_owned_story = { - type = story_cycle_pet_cat - save_scope_as = pet_story - } - } - if = { - limit = { - NOT = { exists = scope:pet_story } - } - random_courtier_or_guest = { - limit = { - is_available_ai = yes - } - weight = { - base = 1 - modifier = { - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - add = 9 - } - modifier = { - is_player_heir_of = root - factor = 0 - } - modifier = { - is_adult = yes - add = 4 - } - modifier = { - health <= 4 - add = 1 - } - modifier = { - health <= 3 - add = 1.5 - } - modifier = { - health <= 2.5 - add = 2 - } - modifier = { - health <= 2 - add = 3.5 - } - modifier = { - health <= 1.5 - add = 5 - } - } - save_scope_as = dead - } - } - scope:dead ?= { - death = { - death_reason = death_starved - } - } - } - - #Option A: - option = { - name = { - trigger = { - exists = scope:dead - } - text = ep3_laamps_provisions.1050.a_1 - } - name = ep3_laamps_provisions.1050.a - if = { - limit = { - exists = scope:pet_story - } - scope:pet_story = { end_story = yes } - custom_tooltip = ep3_laamps_provisions.1050.a_tt - } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -15 - } - } - stress_impact = { - base = major_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - #Option B: cannibal only - option = { - trigger = { - exists = scope:dead - is_cannibal_trigger = yes - } - name = ep3_laamps_provisions.1050.b - every_courtier_or_guest = { - limit = { - NOT = { has_trait = cannibal } - } - custom = every_follower_custom - add_opinion = { - target = root - modifier = absolutely_horrified_opinion - opinion = -30 - } - } - ai_chance = { - # If available, do it - base = 500 - } - } - - #Option C: become cannibal - option = { - trigger = { - exists = scope:dead - is_cannibal_trigger = no - } - name = ep3_laamps_provisions.1050.c - add_secret = { type = secret_cannibal } - ai_chance = { - base = 0 - } - } - - #Option D: eat the pet... :( - option = { - trigger = { - NOT = { exists = scope:dead } - } - name = ep3_laamps_provisions.1050.d - custom_tooltip = ep3_laamps_provisions.1050.d.tt - if = { - limit = { - scope:pet_story = { - story_type = story_cycle_martial_lifestyle_warhorse - } - } - domicile = { - change_provisions = miniscule_provisions_gain - } - } - else = { - domicile = { - change_provisions = { - value = miniscule_provisions_gain - multiply = 0.5 - } - } - } - scope:pet_story = { end_story = yes } - stress_impact = { - base = medium_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - has_trait = callous - add = 10 - } - modifier = { - has_trait = sadistic - add = 10 - } - modifier = { - has_trait = cannibal - add = 10 - } - } - } -} - -# Very Low provisions - a pestilence spreads -ep3_laamps_provisions.1060 = { - type = character_event - title = ep3_laamps_provisions.1060.t - desc = ep3_laamps_provisions.1060.desc - theme = travel - left_portrait = { - character = root - animation = worry - } - - trigger = { - domicile_provisions_very_low_to_zero_trigger = yes - NOR = { - has_character_flag = provision_events_cooldown - has_game_rule = epidemic_frequency_disabled - } - location = { - NOR = { - any_province_epidemic = { } - has_variable = epidemic_cooldown_general - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - is_ai = yes - factor = 0.2 - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - } - - #Option A: - option = { - name = ep3_laamps_provisions.1060.a - location = { - create_epidemic_outbreak = { - type = typhus - intensity = minor - } - } - random_courtier_or_guest = { - limit = { can_contract_disease_trigger = { DISEASE = typhus } } - contract_disease_effect = { DISEASE = typhus TREATMENT_EVENT = no } - } - # 25% of your MaA die - every_maa_regiment = { - limit = { - maa_current_troops_count >= 4 - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.25 - } - } - } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -15 - } - } - stress_impact = { - base = major_stress_impact_gain - } - } -} - -# ZERO provisions - chance to die or develop very bad modifiers/traits -ep3_laamps_provisions.1070 = { - type = character_event - title = ep3_laamps_provisions.1070.t - desc = ep3_laamps_provisions.1070.desc - theme = death - left_portrait = { - character = root - animation = sick_stomach - } - - trigger = { - domicile.provisions <= provisions_privation_threshold_empty - NOT = { - has_character_flag = provision_events_cooldown - } - # give them a chance to stop first - current_travel_plan = { - has_variable = 1080_no_provisions_stop - } - } - - immediate = { - apply_privation_event_cooldown_effect = yes - # 50% of your MaA die/desert - every_maa_regiment = { - limit = { - maa_current_troops_count >= 2 - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.5 - } - } - } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -25 - } - } - } - - #Option A: - option = { - name = ep3_laamps_provisions.1070.a - random_list = { - 1 = { - # die - custom_tooltip = ep3_laamps_provisions.1070.a1 - hidden_effect = { - death = { - death_reason = death_starved - } - } - } - 1 = { - # bad health modifier - trigger = { - NOT = { has_character_modifier = weak_stomach_modifier } - } - custom_tooltip = ep3_laamps_provisions.1070.a2 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_character_modifier = weak_stomach_modifier - } - } - } - 1 = { - # lose prowess - trigger = { - prowess >= 2 - } - custom_tooltip = ep3_laamps_provisions.1070.a3 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_prowess_skill = -2 - } - } - } - 1 = { - # become cannibal - trigger = { - NOR = { - has_trait = cannibal - any_secret = { - type = secret_cannibal - } - } - } - custom_tooltip = ep3_laamps_provisions.1070.a4 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_trait = cannibal - } - } - } - 1 = { - # other bad health modifier - trigger = { - NOR = { - has_trait = disfigured - has_character_modifier = hunger_sickness_modifier - } - } - custom_tooltip = ep3_laamps_provisions.1070.a5 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_character_modifier = hunger_sickness_modifier - add_trait = disfigured - } - } - } - 1 = { - # become lunatic - trigger = { - NOR = { - has_trait = lunatic_1 - has_trait = lunatic_genetic - } - } - custom_tooltip = ep3_laamps_provisions.1070.a6 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_trait = lunatic_1 - } - } - } - 1 = { - # become blind - trigger = { - NOT = { - has_trait = blind - } - } - custom_tooltip = ep3_laamps_provisions.1070.a7 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_trait = blind - } - } - } - 1 = { - # become infirm - trigger = { - NOT = { - has_trait = infirm - } - } - custom_tooltip = ep3_laamps_provisions.1070.a8 - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_laamps_provisions.1070.tt - left_icon = root - add_trait = infirm - } - } - } - } - stress_impact = { - base = massive_stress_impact_gain - } - } -} - -# ZERO provisions - JUST STOP! -ep3_laamps_provisions.1080 = { - type = character_event - title = ep3_laamps_provisions.1080.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - exists = scope:complainer - } - desc = ep3_laamps_provisions.1080.desc_companion - } - desc = ep3_laamps_provisions.1080.desc_alone - } - } - theme = travel - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - trigger = { - exists = scope:complainer - } - character = scope:complainer - animation = sick_stomach - } - - trigger = { - domicile.provisions <= provisions_privation_threshold_empty - current_travel_plan = { - NOT = { - has_variable = 1080_no_provisions_stop - } - } - } - - immediate = { - current_travel_plan = { - set_variable = 1080_no_provisions_stop - hidden_effect = { - pause_travel_plan = yes - } - } - random_courtier_or_guest = { - limit = { - is_available_ai_adult = yes - } - weight = { - base = 1 - modifier = { - is_of_minor_interest_trigger = { CHARACTER = root } - add = 100 - } - modifier = { - is_of_major_interest_trigger = { CHARACTER = root } - add = 1000 - } - } - save_scope_as = complainer - } - location = { - if = { - limit = { is_sea_province = yes } - ordered_neighboring_province = { - limit = { exists = county } - alternative_limit = { - any_neighboring_province = { exists = county } - } - alternative_limit = { - any_neighboring_province = { - any_neighboring_province = { exists = county } - } - } - order_by = { - value = 0 - subtract = "squared_distance(root.location)" - } - if = { - limit = { exists = county } - save_scope_as = landfall - } - else = { - ordered_neighboring_province = { - limit = { exists = county } - alternative_limit = { - any_neighboring_province = { exists = county } - } - order_by = { - value = 0 - subtract = "squared_distance(root.location)" - } - if = { - limit = { exists = county } - save_scope_as = landfall - } - else = { - ordered_neighboring_province = { - limit = { exists = county } - order_by = { - value = 0 - subtract = "squared_distance(root.location)" - } - save_scope_as = landfall - } - } - } - } - } - } - } - } - - #Option A: we press on - option = { - name = ep3_laamps_provisions.1080.a - current_travel_plan = { - resume_travel_plan = yes - } - every_courtier_or_guest = { - custom = every_follower_custom - add_opinion = { - target = root - modifier = starving_opinion - opinion = -25 - } - } - - # Special, for the AI - start starving or succeed!? - if = { - limit = { - is_ai = yes - } - random = { - chance = { - value = 10 - add = root.sum_of_all_skills_value - } - domicile = { - change_provisions = max_provisions - } - } - } - ai_chance = { - base = 100 - } - } - - #Option B: take a break - option = { - name = ep3_laamps_provisions.1080.b - trigger = { - custom_tooltip = { - text = ep3_laamps_provisions.1080.sea - location = { - is_sea_province = no - } - } - } - show_as_unavailable = { - always = yes - } - #inform about moving the domicile - show_as_tooltip = { - domicile = { - move_domicile = root.location - } - } - current_travel_plan = { - abort_travel_plan = yes - } - ai_chance = { - base = 0 - } - } - - #Option C: make land!!!!!!! - option = { - name = ep3_laamps_provisions.1080.c - trigger = { exists = scope:landfall } - add_internal_flag = special - custom_tooltip = { - text = ep3_laamps_provisions.1080.c.tt - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - start_travel_plan = { - destination = scope:landfall - travel_with_domicile = yes - return_trip = no - players_use_planner = no - } - } - ai_chance = { - base = 0 - } - } -} diff --git a/events/dlc/ep3/ep3_landless_admin_events.txt b/events/dlc/ep3/ep3_landless_admin_events.txt deleted file mode 100644 index 53148d905..000000000 --- a/events/dlc/ep3/ep3_landless_admin_events.txt +++ /dev/null @@ -1,2280 +0,0 @@ -namespace = ep3_landless_admin - -################################################## -# EP3 Landless Admin -# by Veronica Pazos -# 1000 On the Door -# 1010 In Good Estate -# 1020 For a Bit of Gold -# 1030 A Secret for a Secret -# 1040 Next in Line -# 1050 Just Below Us - -# On the Door -# This guy could be a cool councillor -# 1000 - -ep3_landless_admin.1000 = { - type = character_event - title = ep3_landless_admin.1000.t - desc = ep3_landless_admin.1000.desc - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = gregarious - has_trait = generous - } - } - animation = ecstasy - } - animation = thinking - } - right_portrait = { - character = scope:proposed_councillor - animation = scheme - } - cooldown = { years = 5 } - - trigger = { - is_landless_administrative = yes - is_available = yes - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - NOT = { - any_courtier = { - has_any_high_skill_rating = yes - count < 3 - } - } - } - } - - immediate = { - if = { - limit = { - any_pool_character = { - province = root.location - is_available_healthy_ai_adult = yes - has_any_high_skill_rating = yes - } - } - random_pool_character = { - province = root.location - limit = { - is_available_healthy_ai_adult = yes - has_any_high_skill_rating = yes - } - save_scope_as = proposed_councillor - } - } - else = { - create_character = { - template = administrator_character - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - dynasty = none - location = root.location - faith = root.location.faith - culture = root.location.culture - save_scope_as = proposed_councillor - } - } - } - - # You're hired! - option = { - name = ep3_landless_admin.1000.a - add_courtier = scope:proposed_councillor - pay_short_term_gold = { - target = scope:proposed_councillor - gold = medium_gold_value - } - stress_impact = { # You feel like you're getting robbed - greedy = medium_stress_impact_gain - avaricious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - OR = { - has_trait = greedy - has_trait = avaricious - has_trait = arrogant - } - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Try to recruit them for free - option = { - name = ep3_landless_admin.1000.b - duel = { - skill = stewardship - target = scope:proposed_councillor - 5 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 1 - } - modifier = { - influence_level >= 3 - add = 10 - } - desc = ep3_landless_admin.1000.b.success - send_interface_toast = { - title = ep3_landless_admin.1000.b.success - left_icon = scope:proposed_councillor - add_courtier = scope:proposed_councillor - } - } - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 2 - } - desc = ep3_landless_admin.1000.b.mid - send_interface_toast = { - title = ep3_landless_admin.1000.b.mid - left_icon = scope:proposed_councillor - add_courtier = scope:proposed_councillor - custom_tooltip = obligation_hook_tt - add_hook = { - target = scope:proposed_councillor - type = obligation_hook - } - pay_short_term_gold = { - target = scope:proposed_councillor - gold = minor_gold_value - } - } - } - 20 = { - desc = ep3_landless_admin.1000.b.failure - send_interface_toast = { - title = ep3_landless_admin.1000.b.failure - left_icon = scope:proposed_councillor - reverse_add_opinion = { - target = scope:proposed_councillor - modifier = insulted_opinion - opinion = -15 - } - } - } - } - stress_impact = { - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -25 - has_trait = greedy - } - modifier = { - factor = 0 - short_term_gold <= medium_gold_value - } - } - } - - # I'm good, thanks - option = { - name = ep3_landless_admin.1000.c - stress_impact = { # Why wouldn't you hire this poor person - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= medium_gold_value - } - } - } -} - -# In Good Estate -# You have upgraded your estate a bunch, locals are impressed -# 1010 - -ep3_landless_admin.1010 = { - type = character_event - title = ep3_landless_admin.1010.t - desc = ep3_landless_admin.1010.desc - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - has_trait = arrogant - } - animation = laugh - } - animation = personality_content - } - right_portrait = { - character = scope:local - animation = admiration - } - lower_right_portrait = scope:child - cooldown = { years = 10 } - - trigger = { - government_allows = administrative - is_landed_or_landless_administrative = yes - domicile ?= { - has_domicile_building_or_higher = estate_main_03 - } - is_available = yes - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - domicile ?= { - has_domicile_building_or_higher = estate_main_05 - } - } - } - - immediate = { - domicile = { save_scope_as = my_estate } - if = { - limit = { - any_pool_character = { - province = root.location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - any_child = { - is_adult = no - } - } - } - random_pool_character = { - province = root.location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - any_child = { - is_adult = no - } - } - save_scope_as = local - random_child = { - limit = { is_adult = no } - save_scope_as = child - } - } - } - else = { - create_character = { - template = generic_peasant_character - dynasty = none - location = root.location - faith = root.location.faith - culture = root.location.culture - save_scope_as = local - } - hidden_effect = { - scope:local = { - move_to_pool = yes - } - } - create_character = { - template = peasant_toddler_character - culture = root.culture - faith = root.faith - location = root.location - save_scope_as = child - } - if = { #Set the previous character as their parent - limit = { - scope:local ?= { - is_female = no - } - } - hidden_effect = { - scope:child = { - set_father = scope:local - } - } - } - else = { - hidden_effect = { - scope:child = { - set_mother = scope:local - } - } - } - } - } - - # Paranoid - they're clearly spying on me! - option = { - name = ep3_landless_admin.1010.a - trigger = { - has_trait = paranoid - } - add_character_modifier = { - modifier = ep3_extra_security_modifier - years = 10 - } - scope:local = { - add_opinion = { - target = root - modifier = confused_opinion - opinion = -20 - } - } - stress_impact = { - paranoid = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = paranoid - } - } - } - - # Thanks friend, would you like to contribute? - option = { - name = ep3_landless_admin.1010.b - add_character_modifier = { - modifier = ep3_good_estate_modifier - years = 10 - } - - stress_impact = { - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = greedy - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = gregarious - } - } - } - } - - # Tell everyone pls - option = { - name = ep3_landless_admin.1010.c - change_influence = minor_influence_gain - - stress_impact = { - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - influence_level <= 2 - } - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - modifier = { - factor = 0 - has_trait = humble - } - } - } - - # That's sick, do you wanna join me? - option = { - name = ep3_landless_admin.1010.d - add_courtier = scope:local - add_courtier = scope:child - add_piety = miniscule_piety_gain - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - OR = { - has_trait = generous - has_trait = gregarious - } - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = callous - } - } - } - } -} - -# For a Bit of Gold -# Upgrade a building in your estate -# 1020 - -scripted_trigger ep3_landless_admin_1020_can_upgrade_market_trigger = { - has_domicile_building_or_higher = market_01 - NOT = { has_domicile_building_or_higher = market_06 } - trigger_if = { - limit = { has_domicile_building_or_higher = market_05 } - root = { estate_can_construct_market_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = market_04 } - root = { estate_can_construct_market_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = market_03 } - root = { estate_can_construct_market_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = market_02 } - root = { estate_can_construct_market_03_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_garden_trigger = { - has_domicile_building_or_higher = garden_01 - NOR = { - has_domicile_building_or_higher = garden_leisure_06 - has_domicile_building_or_higher = garden_fruit_06 - } - trigger_if = { - limit = { has_domicile_building_or_higher = garden_leisure_05 } - root = { estate_can_construct_garden_leisure_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = garden_leisure_04 } - root = { estate_can_construct_garden_leisure_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = garden_03 } - root = { estate_can_construct_garden_leisure_04_trigger = yes } - } - trigger_else = { always = yes } - trigger_if = { - limit = { has_domicile_building_or_higher = garden_fruit_05 } - root = { estate_can_construct_garden_fruit_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = garden_fruit_04 } - root = { estate_can_construct_garden_fruit_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = garden_03 } - root = { estate_can_construct_garden_fruit_04_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_guardhouse_trigger = { - has_domicile_building_or_higher = guardhouse_01 - NOT = { has_domicile_building_or_higher = guardhouse_04 } - trigger_if = { - limit = { has_domicile_building_or_higher = guardhouse_03 } - root = { estate_can_construct_guardhouse_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = guardhouse_02 } - root = { estate_can_construct_guardhouse_03_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_workshop_trigger = { - has_domicile_building_or_higher = workshop_01 - NOR = { - has_domicile_building_or_higher = workshop_carpenter_06 - has_domicile_building_or_higher = workshop_mason_06 - } - trigger_if = { - limit = { has_domicile_building_or_higher = workshop_carpenter_05 } - root = { estate_can_construct_workshop_carpenter_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_carpenter_04 } - root = { estate_can_construct_workshop_carpenter_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_carpenter_03 } - root = { estate_can_construct_workshop_carpenter_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_02 } - root = { estate_can_construct_workshop_carpenter_03_trigger = yes } - } - trigger_else = { always = yes } - trigger_if = { - limit = { has_domicile_building_or_higher = workshop_mason_05 } - root = { estate_can_construct_workshop_mason_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_mason_04 } - root = { estate_can_construct_workshop_mason_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_mason_03 } - root = { estate_can_construct_workshop_mason_04_trigger = yes } - } - # No workshop_02 here, as we default to building a carpenter. - trigger_else = { always = yes } - trigger_if = { - limit = { has_domicile_building_or_higher = workshop_textile_05 } - root = { estate_can_construct_workshop_textile_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_textile_04 } - root = { estate_can_construct_workshop_textile_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = workshop_textile_03 } - root = { estate_can_construct_workshop_textile_04_trigger = yes } - } - # No workshop_02 here, as we default to building a carpenter. - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_barracks_trigger = { - has_domicile_building_or_higher = barracks_01 - NOT = { has_domicile_building_or_higher = barracks_06 } - trigger_if = { - limit = { has_domicile_building_or_higher = barracks_05 } - root = { estate_can_construct_barracks_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = barracks_04 } - root = { estate_can_construct_barracks_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = barracks_03 } - root = { estate_can_construct_barracks_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = barracks_02 } - root = { estate_can_construct_barracks_03_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_vineyard_trigger = { - has_domicile_building_or_higher = vineyard_01 - NOT = { has_domicile_building_or_higher = vineyard_06 } - trigger_if = { - limit = { has_domicile_building_or_higher = vineyard_05 } - root = { estate_can_construct_vineyard_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = vineyard_04 } - root = { estate_can_construct_vineyard_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = vineyard_03 } - root = { estate_can_construct_vineyard_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = vineyard_02 } - root = { estate_can_construct_vineyard_03_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_olive_trigger = { - has_domicile_building_or_higher = olive_01 - NOT = { has_domicile_building_or_higher = olive_06 } - trigger_if = { - limit = { has_domicile_building_or_higher = olive_05 } - root = { estate_can_construct_olive_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = olive_04 } - root = { estate_can_construct_olive_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = olive_03 } - root = { estate_can_construct_olive_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = olive_02 } - root = { estate_can_construct_olive_03_trigger = yes } - } - trigger_else = { always = yes } -} - -scripted_trigger ep3_landless_admin_1020_can_upgrade_tea_trigger = { - has_domicile_building_or_higher = japanese_tea_plantation_01 - NOT = { has_domicile_building_or_higher = japanese_tea_plantation_06 } - trigger_if = { - limit = { has_domicile_building_or_higher = japanese_tea_plantation_05 } - root = { estate_can_construct_japanese_tea_plantation_06_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = japanese_tea_plantation_04 } - root = { estate_can_construct_japanese_tea_plantation_05_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = japanese_tea_plantation_03 } - root = { estate_can_construct_japanese_tea_plantation_04_trigger = yes } - } - trigger_else_if = { - limit = { has_domicile_building_or_higher = japanese_tea_plantation_02 } - root = { estate_can_construct_japanese_tea_plantation_03_trigger = yes } - } - trigger_else = { always = yes } -} - -ep3_landless_admin.1020 = { - type = character_event - title = ep3_landless_admin.1020.t - desc = { - desc = ep3_landless_admin.1020.desc.intro - first_valid = { - triggered_desc = { - trigger = { - var:domicile_building = flag:market - } - desc = ep3_landless_admin.1020.desc.market - } - triggered_desc = { - trigger = { - var:domicile_building = flag:garden - } - desc = ep3_landless_admin.1020.desc.garden - } - triggered_desc = { - trigger = { - var:domicile_building = flag:guardhouse - } - desc = ep3_landless_admin.1020.desc.guardhouse - } - triggered_desc = { - trigger = { - var:domicile_building = flag:workshop - } - desc = ep3_landless_admin.1020.desc.workshop - } - triggered_desc = { - trigger = { - var:domicile_building = flag:barracks - } - desc = ep3_landless_admin.1020.desc.barracks - } - triggered_desc = { - trigger = { - var:domicile_building = flag:vineyard - } - desc = ep3_landless_admin.1020.desc.vineyard - } - triggered_desc = { - trigger = { - var:domicile_building = flag:olive - } - desc = ep3_landless_admin.1020.desc.olive - } - triggered_desc = { - trigger = { - var:domicile_building = flag:tea - } - desc = ep3_landless_admin.1020.desc.tea - } - } - desc = ep3_landless_admin.1020.desc.outro - } - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = callous - } - animation = dismissal - } - animation = happiness - } - right_portrait = { - character = scope:steward - animation = steward - } - cooldown = { years = 10 } - - trigger = { - government_allows = administrative - is_landed_or_landless_administrative = yes - is_available = yes - # I'm sorry - ## ^Original source of shame removed on charges of [redacted]. The Council disapproves of such... lacking hygiene. - domicile ?= { - OR = { - ep3_landless_admin_1020_can_upgrade_market_trigger = yes - ep3_landless_admin_1020_can_upgrade_garden_trigger = yes - ep3_landless_admin_1020_can_upgrade_guardhouse_trigger = yes - ep3_landless_admin_1020_can_upgrade_workshop_trigger = yes - ep3_landless_admin_1020_can_upgrade_barracks_trigger = yes - ep3_landless_admin_1020_can_upgrade_vineyard_trigger = yes - ep3_landless_admin_1020_can_upgrade_olive_trigger = yes - } - } - domicile.domicile_location = { - has_ongoing_construction = no - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - NOT = { - any_courtier = { - has_any_high_skill_rating = yes - count < 3 - } - } - } - } - - immediate = { - random_list = { - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_market_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:market - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_garden_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:garden - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_guardhouse_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:guardhouse - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_workshop_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:workshop - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_barracks_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:barracks - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_vineyard_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:vineyard - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_olive_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:olive - } - } - 1 = { - trigger = { - domicile = { ep3_landless_admin_1020_can_upgrade_tea_trigger = yes } - } - set_variable = { - name = domicile_building - value = flag:tea - } - } - } - if = { - limit = { - exists = cp:councillor_steward - } - cp:councillor_steward = { save_scope_as = steward } - } - else_if = { - limit = { - any_courtier = { - is_available_healthy_ai_adult = yes - this != root - } - } - ordered_courtier = { - limit = { - is_available_healthy_ai_adult = yes - this != root - } - order_by = stewardship - save_scope_as = steward - } - } - else = { - create_character = { - template = stewardship_court_position_holder_template - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - dynasty = none - location = root.location - faith = root.location.faith - culture = root.location.culture - save_scope_as = steward - } - } - scope:steward = { assign_quirk_effect = yes } - } - - # Market - option = { - name = ep3_landless_admin.1020.a - trigger = { var:domicile_building = flag:market } - domicile = { - switch = { - trigger = has_domicile_building - market_01 = { add_domicile_building = market_02 } - market_02 = { add_domicile_building = market_03 } - market_03 = { add_domicile_building = market_04 } - market_04 = { add_domicile_building = market_05 } - market_05 = { add_domicile_building = market_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - greedy = medium_stress_impact_gain - avaricious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - OR = { - has_trait = greedy - has_trait = avaricious - has_trait = arrogant - } - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Garden - option = { - name = ep3_landless_admin.1020.b - trigger = { var:domicile_building = flag:garden } - domicile = { - switch = { - trigger = has_domicile_building - garden_01 = { add_domicile_building = garden_02 } - garden_02 = { add_domicile_building = garden_03 } - garden_03 = { add_domicile_building = garden_leisure_04 } - garden_leisure_04 = { add_domicile_building = garden_leisure_05 } - garden_leisure_05 = { add_domicile_building = garden_leisure_06 } - garden_fruit_04 = { add_domicile_building = garden_fruit_05 } - garden_fruit_05 = { add_domicile_building = garden_fruit_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -25 - has_trait = greedy - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Guardhouse - option = { - name = ep3_landless_admin.1020.c - trigger = { var:domicile_building = flag:guardhouse } - domicile = { - switch = { - trigger = has_domicile_building - guardhouse_01 = { add_domicile_building = guardhouse_02 } - guardhouse_02 = { add_domicile_building = guardhouse_03 } - guardhouse_03 = { add_domicile_building = guardhouse_04 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Workshop - option = { - name = ep3_landless_admin.1020.d - trigger = { var:domicile_building = flag:workshop } - domicile = { - switch = { - trigger = has_domicile_building - workshop_01 = { add_domicile_building = workshop_02 } - workshop_02 = { add_domicile_building = workshop_carpenter_03 } - workshop_carpenter_03 = { add_domicile_building = workshop_carpenter_04 } - workshop_carpenter_04 = { add_domicile_building = workshop_carpenter_05 } - workshop_carpenter_05 = { add_domicile_building = workshop_carpenter_06 } - workshop_mason_03 = { add_domicile_building = workshop_mason_04 } - workshop_mason_04 = { add_domicile_building = workshop_mason_05 } - workshop_mason_05 = { add_domicile_building = workshop_mason_06 } - workshop_textile_03 = { add_domicile_building = workshop_textile_04 } - workshop_textile_04 = { add_domicile_building = workshop_textile_05 } - workshop_textile_05 = { add_domicile_building = workshop_textile_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Barracks - option = { - name = ep3_landless_admin.1020.e - trigger = { var:domicile_building = flag:barracks } - domicile = { - switch = { - trigger = has_domicile_building - barracks_01 = { add_domicile_building = barracks_02 } - barracks_02 = { add_domicile_building = barracks_03 } - barracks_03 = { add_domicile_building = barracks_04 } - barracks_04 = { add_domicile_building = barracks_05 } - barracks_05 = { add_domicile_building = barracks_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Vineyard - option = { - name = ep3_landless_admin.1020.f - trigger = { var:domicile_building = flag:vineyard } - domicile = { - switch = { - trigger = has_domicile_building - vineyard_01 = { add_domicile_building = vineyard_02 } - vineyard_02 = { add_domicile_building = vineyard_03 } - vineyard_03 = { add_domicile_building = vineyard_04 } - vineyard_04 = { add_domicile_building = vineyard_05 } - vineyard_05 = { add_domicile_building = vineyard_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # Olive - option = { - name = ep3_landless_admin.1020.g - trigger = { var:domicile_building = flag:olive } - domicile = { - switch = { - trigger = has_domicile_building - olive_01 = { add_domicile_building = olive_02 } - olive_02 = { add_domicile_building = olive_03 } - olive_03 = { add_domicile_building = olive_04 } - olive_04 = { add_domicile_building = olive_05 } - olive_05 = { add_domicile_building = olive_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - - - # Tea - option = { - name = ep3_landless_admin.1020.j - trigger = { var:domicile_building = flag:tea } - domicile = { - switch = { - trigger = has_domicile_building - olive_01 = { add_domicile_building = japanese_tea_plantation_02 } - olive_02 = { add_domicile_building = japanese_tea_plantation_03 } - olive_03 = { add_domicile_building = japanese_tea_plantation_04 } - olive_04 = { add_domicile_building = japanese_tea_plantation_05 } - olive_05 = { add_domicile_building = japanese_tea_plantation_06 } - } - } - remove_short_term_gold = major_gold_value - change_influence = medium_influence_loss - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = -50 - has_trait = generous - } - modifier = { - factor = 0 - short_term_gold <= major_gold_value - } - } - } - - # There's other stuff I want to build - option = { - name = ep3_landless_admin.1020.h - flavor = ep3_landless_admin.1020.h.flavor - add_gold = medium_gold_value - - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - after = { remove_variable = domicile_building } -} - -# A Secret for a Secret -# You get offered a hook on your liege -# 1030 - -scripted_trigger ep3_landless_admin_1030_courtier_trigger = { - is_available_healthy_ai_adult = yes - OR = { - has_relation_rival = root.liege - opinion = { - target = root.liege - value <= -50 - } - AND = { - OR = { - has_trait = disloyal - has_trait = deceitful - has_trait = callous - } - NOT = { is_spouse_of = root.liege } # It'd look weird for their spouse to just rock up to you - } - } -} - -ep3_landless_admin.1030 = { - type = character_event - title = ep3_landless_admin.1030.t - desc = ep3_landless_admin.1030.desc - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - OR = { - has_trait = loyal - has_trait = just - has_trait = honest - } - } - animation = dismissal - } - animation = thinking - } - right_portrait = { - character = scope:courtier - animation = scheme - } - lower_right_portrait = scope:liege - cooldown = { years = 10 } - - trigger = { - government_allows = administrative - is_landed_or_landless_administrative = yes - is_available = yes - liege ?= { - is_ai = yes - any_secret = { - NOT = { - any_secret_knower = { this = root } - } - } - any_courtier_or_guest = { - ep3_landless_admin_1030_courtier_trigger = yes - } - } - can_add_hook = { - target = root.liege - type = strong_blackmail_hook - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - liege = { - save_scope_as = liege - random_secret = { - limit = { - NOT = { - any_secret_knower = { this = root } - } - } - save_scope_as = secret - } - random_courtier_or_guest = { - limit = { ep3_landless_admin_1030_courtier_trigger = yes } - weight = { - base = 1 - modifier = { - add = 5 - has_relation_nemesis = root.liege - } - modifier = { - add = 5 - has_relation_rival = root.liege - } - modifier = { - add = 2 - has_trait = deceitful - } - modifier = { - add = 2 - has_trait = disloyal - } - modifier = { - add = 2 - has_trait = callous - } - } - save_scope_as = courtier - } - } - scope:courtier = { get_quirk_character_effect = yes } - } - - # Paranoid - WHAT DO YOU THINK YOU'RE DOING??? - option = { - name = ep3_landless_admin.1030.a - trigger = { - has_trait = paranoid - } - add_character_modifier = { - modifier = ep3_no_secrets_modifier - years = 15 - } - stress_impact = { - paranoid = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = paranoid - } - } - } - - # Honorable - How dare you? - option = { - name = ep3_landless_admin.1030.b - trigger = { - OR = { - has_trait = loyal - has_trait = just - has_trait = honest - } - NOT = { has_trait = paranoid } - } - add_character_modifier = { - modifier = ep3_no_secrets_modifier - years = 15 - } - stress_impact = { - loyal = medium_stress_impact_loss - just = medium_stress_impact_loss - honest = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - disloyal = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = loyal - has_trait = just - has_trait = honest - } - } - modifier = { - factor = 0 - OR = { - has_trait = disloyal - has_trait = deceitful - has_trait = callous - } - } - } - } - - # Sure! - option = { - name = ep3_landless_admin.1030.c - add_hook = { - target = scope:liege - type = strong_blackmail_hook - secret = scope:secret - } - if = { - limit = { - any_secret = { - NOT = { - any_secret_knower = { this = scope:liege } - } - } - } - random_secret = { - limit = { - NOT = { - any_secret_knower = { this = scope:liege } - } - } - expose_secret = scope:courtier - } - } - else = { - scope:courtier = { - add_hook = { - type = favor_hook - target = root - } - } - } - stress_impact = { - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = greedy - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = gregarious - } - } - } - } - - # Try to get it for free hihi - option = { - name = ep3_landless_admin.1030.d - duel = { - target = scope:courtier - skill = intrigue - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - modifier = { - influence_level >= 3 - add = 10 - } - desc = ep3_landless_admin.1030.d.success - send_interface_toast = { - title = ep3_landless_admin.1030.d.success - left_icon = scope:courtier - add_hook = { - target = scope:liege - type = strong_blackmail_hook - secret = scope:secret - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - desc = ep3_landless_admin.1030.d.failure - send_interface_toast = { - title = ep3_landless_admin.1030.d.failure - left_icon = scope:courtier - scope:courtier = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -15 - } - } - } - } - } - stress_impact = { - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - influence_level <= 2 - } - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - modifier = { - factor = 0 - has_trait = humble - } - } - } - - # I'm good ty - option = { - name = ep3_landless_admin.1030.e - - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - OR = { - has_trait = generous - has_trait = gregarious - } - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = callous - } - } - } - } -} - -# Next in Line -# Lie about a rival candidate -# 1040 - -scripted_trigger ep3_landless_admin_1040_spymaster_trigger = { - is_available_healthy_ai_adult = yes -} - -ep3_landless_admin.1040 = { - type = character_event - title = ep3_landless_admin.1040.t - desc = { - desc = ep3_landless_admin.1040.desc.intro - first_valid = { - triggered_desc = { - trigger = { - scope:rival = { is_child_of = root } - } - desc = ep3_landless_admin.1040.desc.child - } - triggered_desc = { - trigger = { - scope:rival = { is_spouse_of = root } - } - desc = ep3_landless_admin.1040.desc.spouse - } - triggered_desc = { - trigger = { - scope:rival = { is_close_or_extended_family_of = root } - } - desc = ep3_landless_admin.1040.desc.family - } - } - } - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - OR = { - has_trait = loyal - has_trait = just - has_trait = honest - } - } - animation = dismissal - } - animation = schadenfreude - } - right_portrait = { - character = scope:spymaster - animation = scheme - } - lower_right_portrait = scope:rival - cooldown = { years = 5 } - override_background = { reference = garden } - - trigger = { - is_governor = yes - NOT = { government_has_flag = government_has_merit } - is_available = yes - exists = location.county.duchy.holder - location.county.duchy.holder ?= { # There's a governor in your location, doesn't matter whether it's you or not - is_governor = yes - } - primary_title = { - is_noble_family_title = no - } - OR = { - exists = cp:councillor_spymaster - any_courtier = { - ep3_landless_admin_1040_spymaster_trigger = yes - } - } - OR = { - AND = { - exists = root.player_heir - primary_title.current_heir = { - NOT = { this = root.player_heir } - } - } - primary_title = { - any_title_heir = { - count >= 1 - NOR = { - this = root.top_liege - this = root.player_heir - } - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - exists = root.player_heir - primary_title.current_heir = { - this != root.player_heir - } - } - } - - immediate = { - primary_title = { save_scope_as = my_title } - if = { # If the next sucessor is not your player heir we grab them - limit = { - exists = root.player_heir - primary_title.current_heir = { - this != root.player_heir - } - } - primary_title.current_heir = { save_scope_as = rival } - } - else_if = { # If you're a governor we grab your current title - limit = { - is_governor = yes - } - primary_title = { - ordered_title_heir = { - limit = { - NOR = { - this = root.top_liege - this = root.player_heir - } - } - order_by = "appointment_candidate_score(root.primary_title)" - save_scope_as = rival - } - } - } - else = { # If you are landless we grab the governor of your location - location.county.duchy.holder = { - save_scope_as = rival - } - } - if = { - limit = { exists = cp:councillor_spymaster } - cp:councillor_spymaster = { save_scope_as = spymaster } - } - else = { - ordered_courtier = { - limit = { ep3_landless_admin_1040_spymaster_trigger = yes } - order_by = intrigue - save_scope_as = spymaster - } - } - } - - # Deceitful - Harm them for free - option = { - name = ep3_landless_admin.1040.a - trigger = { - has_trait = deceitful - } - custom_tooltip = ep3_landless_admin.1040.tt - hidden_effect = { - scope:my_title = { - change_appointment_investment = { - investor = root - target = scope:rival - value = { - subtract = appointment_score_medium_value - } - } - } - } - stress_impact = { - deceitful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = deceitful - } - } - } - - # Lazy - I'd rather take a nap - option = { - name = ep3_landless_admin.1040.b - trigger = { - has_trait = lazy - } - add_character_modifier = { - modifier = ep3_well_rested_modifier - years = 2 - } - stress_impact = { - lazy = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = lazy - } - modifier = { - factor = 0 - OR = { - has_trait = deceitful - has_trait = ambitious - } - } - } - } - - # Spend influence to harm them - option = { - name = ep3_landless_admin.1040.c - trigger = { - NOT = { has_trait = deceitful } - } - change_influence = medium_influence_loss - custom_tooltip = ep3_landless_admin.1040.tt - hidden_effect = { - scope:my_title = { - change_appointment_investment = { - investor = root - target = scope:rival - value = { - subtract = appointment_score_medium_value - } - } - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - just = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = ambitious - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = honest - } - } - } - } - - # Duel them to harm them for free - option = { - name = ep3_landless_admin.1040.d - trigger = { - NOT = { has_trait = deceitful } - } - duel = { - target = scope:rival - skills = { diplomacy intrigue } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - desc = ep3_landless_admin.1040.d.success - send_interface_toast = { - title = ep3_landless_admin.1040.d.success - left_icon = scope:rival - custom_tooltip = ep3_landless_admin.1040.tt - hidden_effect = { - scope:my_title = { - change_appointment_investment = { - investor = root - target = scope:rival - value = { - subtract = appointment_score_medium_value - } - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - desc = ep3_landless_admin.1040.d.failure - send_interface_toast = { - title = ep3_landless_admin.1040.d.failure - left_icon = scope:rival - change_influence = minor_influence_loss - } - } - } - ai_chance = { - base = 100 - } - } - - # Nah - option = { - name = ep3_landless_admin.1040.e - - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - influence_level <= 1 - } - } - } -} - -# Just Below Us -# There's something in your basement -# 1050 - -scripted_trigger ep3_landless_admin_1050_servant_trigger = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - NOT = { is_close_or_extended_family_of = root } - NOT = { is_spouse_of = root } -} - -ep3_landless_admin.1050 = { - type = character_event - title = ep3_landless_admin.1050.t - desc = { - desc = ep3_landless_admin.1050.desc.intro - first_valid = { - triggered_desc = { - trigger = { - var:domicile_building = flag:prison - } - desc = ep3_landless_admin.1050.desc.prison - } - triggered_desc = { - trigger = { - var:domicile_building = flag:servants - } - desc = ep3_landless_admin.1050.desc.servants - } - triggered_desc = { - trigger = { - var:domicile_building = flag:wine - } - desc = ep3_landless_admin.1050.desc.wine - } - } - desc = ep3_landless_admin.1050.desc.outro - } - theme = administrative - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = paranoid - } - animation = paranoia - } - triggered_animation = { - trigger = { - has_trait_schemy_trigger = yes - } - animation = scheme - } - triggered_animation = { - trigger = { - OR = { - has_trait = brave - has_trait = arrogant - has_trait = reckless - } - } - animation = laugh - } - animation = thinking - } - right_portrait = { - character = scope:servant - animation = lantern - } - cooldown = { years = 25 } - override_background = { reference = ce1_catacombs } - override_effect_2d = { - reference = fog - } - - trigger = { - government_allows = administrative - is_landed_or_landless_administrative = yes - is_available = yes - domicile ?= { - OR = { - has_domicile_building_or_higher = prison_01 - has_domicile_building_or_higher = servants_quarters_01 - has_domicile_building_or_higher = wine_cellar_01 - } - } - } - - weight_multiplier = { - base = 1 - - } - - immediate = { - random_list = { - 1 = { - trigger = { - domicile ?= { - has_domicile_building_or_higher = prison_01 - } - } - set_variable = { - name = domicile_building - value = flag:prison - } - } - 1 = { - trigger = { - domicile ?= { - has_domicile_building_or_higher = servants_quarters_01 - } - } - set_variable = { - name = domicile_building - value = flag:servants - } - } - 1 = { - trigger = { - domicile ?= { - has_domicile_building_or_higher = wine_cellar_01 - } - } - set_variable = { - name = domicile_building - value = flag:wine - } - } - } - if = { # If you have an appropriate courtier we grab them - limit = { - any_courtier_or_guest = { - ep3_landless_admin_1050_servant_trigger = yes - } - } - random_courtier_or_guest = { - limit = { - ep3_landless_admin_1050_servant_trigger = yes - } - save_scope_as = servant - } - } - else_if = { # Otherwise we grab a pool character - limit = { - any_pool_character = { - province = root.domicile.domicile_location - ep3_landless_admin_1050_servant_trigger = yes - } - } - random_pool_character = { - province = root.domicile.domicile_location - limit = { - ep3_landless_admin_1050_servant_trigger = yes - } - save_scope_as = servant - } - } - else = { # And if not we create them - create_character = { - template = servant_character - culture = root.domicile.domicile_location.culture - faith = root.domicile.domicile_location.faith - location = root.domicile.domicile_location - save_scope_as = servant - } - } - } - - # Paranoid - Who built this!? - option = { - name = ep3_landless_admin.1050.a - trigger = { - has_trait = paranoid - } - add_character_modifier = { - modifier = ep3_tunnel_investigation_modifier - years = 15 - } - stress_impact = { - paranoid = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = paranoid - } - } - } - - # Deceitful - A perfect opportunity - option = { - name = ep3_landless_admin.1050.b - trigger = { - has_trait_schemy_trigger = yes - } - custom_tooltip = ep3_secret_tunnels_abduct - set_variable = ep3_secret_tunnels_var - stress_impact = { - deceitful = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - disloyal = medium_stress_impact_loss - callous = medium_stress_impact_loss - vengeful = medium_stress_impact_loss - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = deceitful - has_trait = ambitious - has_trait = disloyal - has_trait = callous - has_trait = vengeful - } - } - modifier = { - factor = 0 - has_trait = honest - } - } - } - - # Prison - Fill it up - option = { - name = ep3_landless_admin.1050.c - trigger = { - var:domicile_building = flag:prison - } - duel = { - value = medium_skill_rating - skill = prowess - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - modifier = { - dread >= 75 - add = 10 - } - desc = ep3_landless_admin.1050.c.success - send_interface_toast = { - title = ep3_landless_admin.1050.c.success - left_icon = root - add_character_modifier = { - modifier = ep3_tunnel_prison_modifier - years = 15 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - desc = ep3_landless_admin.1050.c.failure - send_interface_toast = { - title = ep3_landless_admin.1050.c.failure - left_icon = root - remove_short_term_gold = minor_gold_value - } - } - } - stress_impact = { - arrogant = medium_stress_impact_loss - ambitious = medium_stress_impact_loss - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - modifier = { - factor = 0 - short_term_gold <= medium_gold_value - } - } - } - - # Wine Cellar - Treasure? - option = { - name = ep3_landless_admin.1050.d - trigger = { - var:domicile_building = flag:wine - } - duel = { - value = medium_skill_rating - skill = stewardship - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - modifier = { - influence_level >= 3 - add = 10 - } - desc = ep3_landless_admin.1050.d.success - send_interface_toast = { - title = ep3_landless_admin.1050.d.success - left_icon = root - add_short_term_gold = minor_gold_value - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - desc = ep3_landless_admin.1050.c.failure - send_interface_toast = { - title = ep3_landless_admin.1050.c.failure - left_icon = root - remove_short_term_gold = minor_gold_value - } - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - OR = { - has_trait = generous - has_trait = gregarious - } - } - modifier = { - factor = 0 - short_term_gold <= medium_gold_value - } - } - } - - # Servants Quarters - Use it for our agents - option = { - name = ep3_landless_admin.1050.e - trigger = { - var:domicile_building = flag:servants - } - duel = { - value = medium_skill_rating - skill = intrigue - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - desc = ep3_landless_admin.1050.e.success - send_interface_toast = { - title = ep3_landless_admin.1050.e.success - left_icon = root - add_character_modifier = { - modifier = ep3_tunnel_servants_modifier - years = 15 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - desc = ep3_landless_admin.1050.c.failure - send_interface_toast = { - title = ep3_landless_admin.1050.c.failure - left_icon = root - remove_short_term_gold = minor_gold_value - } - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - paranoid = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - add = 50 - OR = { - has_trait = generous - has_trait = gregarious - } - } - modifier = { - factor = 0 - short_term_gold <= medium_gold_value - } - } - } - - # Opt out - option = { - name = ep3_landless_admin.1050.f - - stress_impact = { - lazy = medium_stress_impact_loss - trusting = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - OR = { - has_trait = lazy - has_trait = trusting - } - } - } - } - - after = { remove_variable = domicile_building } -} diff --git a/events/dlc/ep3/ep3_powerful_families_8.txt b/events/dlc/ep3/ep3_powerful_families_8.txt deleted file mode 100644 index 4e51b56b7..000000000 --- a/events/dlc/ep3/ep3_powerful_families_8.txt +++ /dev/null @@ -1,2038 +0,0 @@ -namespace = ep3_powerful_families - -################################################## -# EP3 Powerful Families -# by James Beaumont -# 8000 In High Places -# 8010 Emperor in Distress -# 8020 In the Bud -# 8030 Families That Scheme Together... -# 8040 Cordially -# 8050 An Atrocious Appointment -# 8060 A Villainous Villa -# 8070 Folly -# 8080 Stammering Silence - - - -# In High Places -# 8000 -ep3_powerful_families.8000 = { - type = character_event - title = ep3_powerful_families.8000.t - desc = ep3_powerful_families.8000.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:influential_family_member - animation = scheme - } - lower_right_portrait = { - character = liege - } - cooldown = { years = 10 } - - trigger = { - government_allows = administrative - house ?= { - is_powerful_family = yes - } - # No Emperors - top_liege != this - liege = { is_ai = yes } - house = { - any_house_member = { - this != root - any_court_position_employer = { this = root.liege } - ai_rationality > ai_honor - } - } - } - - weight_multiplier = { - base = 1 - } - - immediate = { - house = { - random_house_member = { - limit = { - this != root - any_court_position_employer = { this = root.liege } - ai_rationality > ai_honor - } - save_scope_as = influential_family_member - } - } - liege = { save_scope_as = liege } # for loc - } - - # Spread our influence like a weed - option = { - name = ep3_powerful_families.8000.a - scope:influential_family_member = { - duel = { - skill = intrigue - target = root.liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - root = { - send_interface_toast = { - title = ep3_powerful_families.8000.a.win - left_icon = root - right_icon = scope:influential_family_member - change_influence = medium_influence_gain - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - root = { - send_interface_toast = { - title = ep3_powerful_families.8000.a.win - left_icon = root - right_icon = scope:influential_family_member - change_influence = minor_influence_gain - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - root = { - send_interface_toast = { - title = ep3_powerful_families.8000.a.lose - left_icon = root - right_icon = scope:influential_family_member - liege = { - progress_towards_rival_effect = { - REASON = rival_abused_power - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - } - } - } - - stress_impact = { - honest = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = 1.5 - ai_honor = -1.5 - } - } - } - - # Discover the Empire's dirty secrets - option = { - name = ep3_powerful_families.8000.b - scope:influential_family_member = { - duel = { - skill = intrigue - target = root.liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - custom_tooltip = ep3_powerful_families.8000.b.tt - hidden_effect = { - root = { - random_list = { - 75 = { - trigger = { - liege = { - any_secret = { - NOT = { - is_known_by = root - } - } - } - } - send_interface_toast = { - title = ep3_powerful_families.8000.b.win.secret - left_icon = root - right_icon = scope:influential_family_member - liege = { - random_secret = { - limit = { - NOT = { - is_known_by = root - } - } - reveal_to_without_events_effect = { - CHARACTER = root - } - } - } - } - } - 25 = { - send_interface_toast = { - title = ep3_powerful_families.8000.b.win.no_secret - left_icon = root - right_icon = scope:influential_family_member - change_influence = minor_influence_gain - } - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - root = { - send_interface_toast = { - title = ep3_powerful_families.8000.a.lose - left_icon = root - right_icon = scope:influential_family_member - liege = { - progress_towards_rival_effect = { - REASON = rival_abused_power - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - } - } - } - - stress_impact = { - honest = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = 1.5 - ai_honor = -1.5 - } - } - } - - # Curry favor with the emperor - option = { - name = ep3_powerful_families.8000.c - liege = { - progress_towards_friend_effect = { - REASON = friend_loyal_servant - CHARACTER = root - OPINION = default_friend_opinion - } - } - stress_impact = { - ambitious = medium_stress_impact_gain - deceitful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = -1.5 - ai_honor = 1.5 - ai_compassion = 1.5 - } - } - } -} - -# Emperor in Distress -# 8010-8019 -scripted_effect ep3_pf_8010_a_effect = { - scope:generous_family = { - pay_short_term_gold = { - target = liege - gold = medium_gold_value - } - change_influence = medium_influence_gain - } -} -scripted_effect ep3_pf_8010_b_accept_effect = { - scope:war = { - if = { - limit = { - is_attacker = scope:liege - } - add_attacker = scope:generous_family - } - else_if = { - limit = { - is_defender = scope:liege - } - add_defender = scope:generous_family - } - } - scope:generous_family = { - change_influence = major_influence_gain - } -} - -ep3_powerful_families.8010 = { - type = character_event - title = ep3_powerful_families.8010.t - desc = ep3_powerful_families.8010.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = liege - animation = stress - } - cooldown = { years = 10 } - - trigger = { - government_allows = administrative - house ?= { - is_powerful_family = yes - } - # No Emperors - top_liege != this - is_at_war_with_liege = no - liege = { - NOT = { has_character_flag = ep3_pf_8010 } - any_character_war = { - OR = { - AND = { - is_attacker = root.liege - attacker_war_score < defender_war_score - } - AND = { - is_defender = root.liege - defender_war_score < attacker_war_score - } - } - NOT = { - is_participant = root - } - } - } - } - - immediate = { - save_scope_as = generous_family - liege = { - save_scope_as = liege # for loc - random_character_war = { - limit = { - OR = { - AND = { - is_attacker = root.liege - attacker_war_score < defender_war_score - } - AND = { - is_defender = root.liege - defender_war_score < attacker_war_score - } - } - NOT = { - is_participant = root - } - } - save_scope_as = war - } - add_character_flag = { - flag = ep3_pf_8010 - years = 15 - } - } - } - - # Send gold for influence - option = { - name = ep3_powerful_families.8010.a - show_as_tooltip = { - ep3_pf_8010_a_effect = yes - } - hidden_effect = { - liege = { - trigger_event = { - id = ep3_powerful_families.8011 - days = 1 - } - } - } - stress_impact = { - arbitrary = minor_stress_impact_gain - callous = minor_stress_impact_gain - greedy = minor_stress_impact_gain - content = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1.5 - ai_rationality = 1.5 - ai_greed = -1.5 - } - } - } - - # Join the war directly - option = { - name = ep3_powerful_families.8010.b - show_as_tooltip = { - random_list = { - 50 = { - show_chance = no - desc = tour_grounds_if_liege_accepts_tt - ep3_pf_8010_b_accept_effect = yes - } - 50 = { - show_chance = no - desc = tour_grounds_if_liege_rejects_tt - change_influence = minor_influence_gain - } - } - } - hidden_effect = { - liege = { - trigger_event = { - id = ep3_powerful_families.8012 - days = 1 - } - } - } - stress_impact = { - arbitrary = minor_stress_impact_gain - callous = minor_stress_impact_gain - craven = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = 1.5 - ai_honor = 1.5 - ai_boldness = 1.5 - } - } - } - - # Take advantage of the Emperor's weakness - option = { - name = ep3_powerful_families.8010.c - duel = { - skill = intrigue - target = root.liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8010.a.win - left_icon = root - right_icon = scope:liege - change_influence = medium_influence_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8010.a.lose - left_icon = root - right_icon = scope:liege - liege = { - progress_towards_rival_effect = { - REASON = rival_abused_power - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - } - stress_impact = { - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - content = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = -1.5 - ai_honor = -1.5 - } - } - } - - # Not my problem - option = { - name = ep3_powerful_families.8010.d - hidden_effect = { - scope:liege = { - remove_character_flag = ep3_pf_8010 - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1.5 - ai_boldness = -1.5 - } - } - } -} - -ep3_powerful_families.8011 = { - type = letter_event - opening = ep3_powerful_families.8011.t - desc = ep3_powerful_families.8011.desc - sender = scope:generous_family - - # Thanks! - option = { - name = ep3_powerful_families.8011.a - ep3_pf_8010_a_effect = yes - } -} - -ep3_powerful_families.8012 = { - type = character_event - title = ep3_powerful_families.8012.t - desc = ep3_powerful_families.8012.desc - theme = administrative - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:generous_family - animation = personality_honorable - } - - # Accept their offer to help! - option = { - name = ep3_powerful_families.8012.a - scope:generous_family = { - send_interface_toast = { - title = ep3_powerful_families.8012.a.toast - left_icon = scope:generous_family - right_icon = scope:liege - ep3_pf_8010_b_accept_effect = yes - } - } - stress_impact = { - paranoid = minor_stress_impact_gain - greedy = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - brave = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1.5 - ai_rationality = 1.5 - ai_boldness = -1.5 - } - } - } - - # Refuse their help - option = { - name = ep3_powerful_families.8012.b - scope:generous_family = { - send_interface_toast = { - title = ep3_powerful_families.8012.b.toast - left_icon = scope:generous_family - right_icon = scope:liege - change_influence = minor_influence_gain - } - } - stress_impact = { - arbitrary = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - craven = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_rationality = -1.5 - ai_boldness = 1.5 - } - } - } -} - -# In the Bud -# You are from a Powerful Family - react to a new Powerful Family emerging -# 8020 -ep3_powerful_families.8020 = { - type = character_event - title = ep3_powerful_families.8020.t - desc = ep3_powerful_families.8020.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:new_family - animation = personality_honorable - } - - trigger = { - has_ep3_dlc_trigger = yes - government_allows = administrative - house ?= { - is_powerful_family = yes - } - NOT = { - #cooldown - has_character_flag = 8020_powerful_family_cooldown - } - } - - immediate = { - add_character_flag = { - flag = 8020_powerful_family_cooldown - years = 10 - } - } - - # Stifle their influence - option = { - name = ep3_powerful_families.8020.a - duel = { - skills = { intrigue stewardship } - target = scope:new_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8020.a.win - left_icon = root - right_icon = scope:new_family - scope:new_family = { - set_relation_rival = { - target = root - reason = rival_stifled_my_influence - } - } - change_influence = major_influence_gain - scope:new_family = { - change_influence = major_influence_loss - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8020.a.lose - left_icon = root - right_icon = scope:new_family - scope:new_family = { - progress_towards_rival_effect = { - CHARACTER = root - REASON = rival_stifled_my_influence - OPINION = default_rival_opinion - } - } - } - } - } - stress_impact = { - just = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1.5 - ai_rationality = -1.5 - ai_boldness = 1.5 - ai_greed = 1.5 - ai_vengefulness = 1.5 - } - } - } - - # Reach out an olive branch - option = { - name = ep3_powerful_families.8020.b - duel = { - skill = diplomacy - target = scope:new_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8020.b.win - left_icon = root - right_icon = scope:new_family - scope:new_family = { - set_relation_friend = { - target = root - reason = friend_aided_my_family - } - } - change_influence = medium_influence_loss - scope:new_family = { - change_influence = medium_influence_gain - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8020.b.lose - left_icon = root - right_icon = scope:new_family - change_influence = medium_influence_loss - } - } - } - stress_impact = { - arbitrary = minor_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - shy = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1.5 - ai_honor = 1.5 - ai_rationality = 1.5 - ai_sociability = 1.5 - ai_greed = 1.5 - ai_vengefulness = -1.5 - } - } - } - - # I don't care - option = { - name = ep3_powerful_families.8020.c - stress_impact = { - ambitious = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - lazy = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = -1.5 - ai_sociability = -1.5 - ai_greed = -1.5 - } - } - } -} - -# Families That Scheme Together... -# 8030 -ep3_powerful_families.8030 = { - type = character_event - title = ep3_powerful_families.8030.t - desc = ep3_powerful_families.8030.desc - theme = administrative - left_portrait = { - character = root - animation = scheme - } - right_portrait = { - character = scope:friendly_family - animation = personality_honorable - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - house ?= { - is_powerful_family = yes - } - # No Emperors - top_liege != this - is_a_faction_member = yes - any_relation = { - type = friend - is_ai = yes - liege = root.liege - house ?= { - is_powerful_family = yes - } - can_join_faction = root.joined_faction - OR = { - NOT = { exists = joined_faction } - joined_faction != root.joined_faction - } - } - } - - immediate = { - random_relation = { - type = friend - limit = { - is_ai = yes - liege = root.liege - house ?= { - is_powerful_family = yes - } - can_join_faction = root.joined_faction - OR = { - NOT = { exists = joined_faction } - joined_faction != root.joined_faction - } - } - save_scope_as = friendly_family - } - joined_faction = { save_scope_as = faction } - } - - # Coax them into the faction - option = { - name = ep3_powerful_families.8030.a - change_influence = medium_influence_loss - duel = { - skill = diplomacy - target = scope:friendly_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8030.a.win - left_icon = root - right_icon = scope:friendly_family - scope:friendly_family = { - join_faction_forced = { - faction = scope:faction - forced_by = root - years = 10 - } - - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8030.a.lose - left_icon = root - right_icon = scope:friendly_family - } - } - } - stress_impact = { - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - just = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1.5 - ai_rationality = 1.5 - ai_boldness = 1.5 - ai_vengefulness = 1.5 - } - } - } - - # This is not what friends do - option = { - name = ep3_powerful_families.8030.b - change_influence = minor_influence_gain - stress_impact = { - ambitious = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - schemer = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - wrathful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = 1.5 - ai_rationality = -1.5 - ai_boldness = -1.5 - ai_vengefulness = -1.5 - } - } - } -} - -# Cordially -# Your estate is on someone else's lands, invite them round for tea? -# 8040 -ep3_powerful_families.8040 = { - type = character_event - title = ep3_powerful_families.8040.t - desc = ep3_powerful_families.8040.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:other_family - animation = personality_honorable - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - is_available = yes - house ?= { - is_powerful_family = yes - } - domicile ?= { - is_domicile_type = estate - trigger_if = { - limit = { - root = { top_liege != this } - } - domicile_location.county.holder.liege != root - } - domicile_location.county.holder.house.house_head = { - this != root - exists = house - house != root.house - house = { - is_powerful_family = yes - } - is_available_ai_adult = yes - } - } - } - - immediate = { - domicile ?= { - domicile_location.county = { - save_scope_as = location - holder.house.house_head = { - save_scope_as = other_family - } - } - } - } - - # Have them over for a good dinner - option = { - name = ep3_powerful_families.8040.a - change_influence = minor_influence_loss - duel = { - skill = diplomacy - target = scope:other_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8040.a.win - left_icon = root - right_icon = scope:other_family - scope:other_family = { - progress_towards_friend_effect = { - REASON = friend_dinner - CHARACTER = root - OPINION = default_friend_opinion - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8040.a.lose - left_icon = root - right_icon = scope:other_family - } - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - shy = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = 0.1 - } - ai_value_modifier = { - ai_sociability = 1.5 - ai_rationality = 1.5 - ai_boldness = -1.5 - ai_vengefulness = -1.5 - } - } - } - - # Spread your influence in their lands - option = { - name = ep3_powerful_families.8040.b - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - duel = { - skills = { intrigue stewardship } - target = scope:other_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8040.b.win - left_icon = root - right_icon = scope:other_family - change_influence = medium_influence_gain - scope:other_family = { - change_influence = minor_influence_loss - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8040.b.lose - left_icon = root - right_icon = scope:other_family - change_influence = medium_influence_loss - scope:other_family = { - change_influence = minor_influence_gain - } - } - } - } - stress_impact = { - compassionate = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_honor = -1.5 - ai_rationality = -1.5 - ai_boldness = 1.5 - ai_vengefulness = 1.5 - } - } - } - - # Keep a low profile - option = { - name = ep3_powerful_families.8040.c - stress_impact = { - ambitious = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_sociability = -1.5 - ai_boldness = -2 - ai_vengefulness = -1.5 - } - } - } -} - -# A Villainous Villa -# A rival family's estate is on your lands, try and mess with them? -# 8060 -ep3_powerful_families.8060 = { - type = character_event - title = ep3_powerful_families.8060.t - desc = ep3_powerful_families.8060.desc - theme = administrative - left_portrait = { - character = root - animation = rage - } - right_portrait = { - character = scope:other_family - animation = schadenfreude - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - is_available = yes - house ?= { - is_powerful_family = yes - } - any_relation = { - type = rival - top_liege = root.top_liege - exists = house - house != root.house - house = { - is_powerful_family = yes - } - is_available_ai_adult = yes - domicile ?= { - is_domicile_type = estate - domicile_location.county.holder = root - } - } - } - - immediate = { - random_relation = { - type = rival - limit = { - top_liege = root.top_liege - exists = house - house != root.house - house = { - is_powerful_family = yes - } - is_available_ai_adult = yes - domicile ?= { - is_domicile_type = estate - domicile_location.county.holder = root - } - } - domicile.domicile_location.county = { save_scope_as = location } - save_scope_as = other_family - } - } - - # Try to steal their stuff! - option = { - name = ep3_powerful_families.8060.a - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - duel = { - skill = intrigue - target = scope:other_family - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8060.a.win - left_icon = root - right_icon = scope:other_family - scope:other_family = { - pay_short_term_gold = { - target = root - gold = medium_gold_value - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8060.a.lose - left_icon = root - right_icon = scope:other_family - scope:other_family = { - pay_short_term_gold = { - target = root - gold = medium_gold_value - } - add_opinion = { - modifier = theft_opinion - target = root - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8060.a.lose - left_icon = root - right_icon = scope:other_family - scope:other_family = { - add_opinion = { - modifier = theft_opinion - target = root - } - } - } - } - } - stress_impact = { - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = 0.1 - } - ai_value_modifier = { - ai_honor = -1.5 - ai_boldness = 1.5 - ai_vengefulness = 3.5 - ai_greed = 1.5 - } - } - } - - # Bribe their servants - option = { - name = ep3_powerful_families.8060.b - remove_short_term_gold = minor_gold_value - change_influence = minor_influence_gain - stress_impact = { - compassionate = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - content = minor_stress_impact_gain - honest = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - short_term_gold <= minor_gold_value - } - ai_value_modifier = { - ai_rationality = 1.5 - ai_boldness = 1.5 - ai_vengefulness = -1.5 - ai_greed = -1.5 - } - } - } - - # Nah nah nah - option = { - name = ep3_powerful_families.8060.c - stress_impact = { - ambitious = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_greed = -1.5 - ai_boldness = -2 - ai_vengefulness = -1.5 - } - } - } -} - -# Folly -# One of your young house members has been hanging out at a rival family's estate -# 8070 -ep3_powerful_families.8070 = { - type = character_event - title = ep3_powerful_families.8070.t - desc = ep3_powerful_families.8070.desc - theme = administrative - left_portrait = { - character = root - animation = rage - } - right_portrait = { - character = scope:child - animation = fear - } - lower_right_portrait = { - character = scope:other_family - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - is_available = yes - house ?= { - is_powerful_family = yes - } - exists = domicile - house = { - any_house_member = { - top_liege = root.top_liege - is_available_ai = yes - is_adult = no - child_not_infant_trigger = yes # Should generally only be teens - } - } - top_liege = { - any_powerful_family = { - this != root.house - house_head = { - is_available_ai_adult = yes - domicile ?= { - is_domicile_type = estate - domicile_location.county = root.domicile.domicile_location.county - } - OR = { - has_relation_rival = root - root = { - house_has_feud_relation_with_trigger = { TARGET = prev } - } - } - } - } - } - } - - immediate = { - house = { - random_house_member = { - limit = { - top_liege = root.top_liege - is_available_ai = yes - is_adult = no - child_not_infant_trigger = yes - } - save_scope_as = child - } - } - top_liege = { - random_powerful_family = { - limit = { - this != root.house - house_head = { - is_available_ai_adult = yes - domicile ?= { - is_domicile_type = estate - domicile_location.county = root.domicile.domicile_location.county - } - OR = { - has_relation_rival = root - root = { - house_has_feud_relation_with_trigger = { TARGET = prev } - } - } - } - } - house_head = { save_scope_as = other_family } - } - } - } - - # Convince them to give you info on the family - option = { - name = ep3_powerful_families.8070.a - duel = { - skills = { intrigue diplomacy } - target = scope:child - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8070.a.win - left_icon = root - right_icon = scope:child - scope:other_family = { - change_influence = medium_influence_loss - } - change_influence = medium_influence_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8070.a.lose - left_icon = root - right_icon = scope:child - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8070.a.lose - left_icon = root - right_icon = scope:child - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - scope:other_family = { - change_influence = medium_influence_gain - } - change_influence = minor_influence_loss - } - } - } - stress_impact = { - content = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = -0.1 - } - ai_value_modifier = { - ai_honor = -1.5 - ai_boldness = 1.5 - ai_vengefulness = 3.5 - ai_greed = 1.5 - } - } - } - - # Try to leverage them to break the rivalry - option = { - name = ep3_powerful_families.8070.b - scope:child = { - duel = { - skill = diplomacy - target = scope:other_family - 15 = { # Crit success, rivalry is gone - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - root = { - send_interface_toast = { - title = ep3_powerful_families.8070.b.crit_win - left_icon = root - right_icon = scope:child - upgrade_to_friend_effect = { - CHARACTER = scope:other_family - REASON = friend_making_ammends - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8070.b.win - left_icon = root - right_icon = scope:child - scope:other_family = { - progress_towards_friend_effect = { - REASON = friend_making_ammends - CHARACTER = root - OPINION = default_rival_opinion - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8070.b.lose - left_icon = root - right_icon = scope:child - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - scope:other_family = { - change_influence = medium_influence_gain - } - change_influence = minor_influence_loss - } - } - } - } - stress_impact = { - vengeful = medium_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = 0.1 - } - ai_value_modifier = { - ai_compassion = 1.5 - ai_rationality = 1.5 - ai_vengefulness = -1.5 - } - } - } - - # Just let the kid do as the kid do - option = { - name = ep3_powerful_families.8070.c - stress_impact = { - content = minor_stress_impact_loss - ambitious = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = -2 - } - } - } -} - -# Stammering Silence -# Another rival family is giving a speech and chokes up -# 8080 -ep3_powerful_families.8080 = { - type = activity_event - title = ep3_powerful_families.8080.t - desc = ep3_powerful_families.8080.desc - theme = feast_activity - left_portrait = { - character = root - animation = schadenfreude - } - right_portrait = { - character = scope:other_family - animation = pain - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - house ?= { - OR = { - is_powerful_family = yes - is_dominant_family = yes - } - } - scope:activity = { - any_attending_character = { - OR = { - this = root.liege - liege = root.liege - } - house ?= { - this != root.house - is_powerful_family = yes - is_dominant_family = yes - } - is_ai = yes - } - } - } - - immediate = { - house = { - random_house_member = { - limit = { - top_liege = root.top_liege - is_available_ai_adult = yes - is_adult = no - child_not_infant_trigger = yes - } - save_scope_as = child - } - } - scope:activity = { - random_attending_character = { - limit = { - OR = { - this = root.liege - liege = root.liege - } - house ?= { - this != root.house - is_powerful_family = yes - is_dominant_family = yes - } - is_ai = yes - } - save_scope_as = other_family - } - } - } - - # Steal their thunder! - option = { - name = ep3_powerful_families.8080.a - progress_towards_rival_effect = { - REASON = rival_humiliated_at_feast - CHARACTER = scope:other_family - OPINION = default_rival_opinion - } - change_influence = minor_influence_gain - add_prestige = medium_prestige_gain - stress_impact = { - content = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = -0.1 - } - ai_value_modifier = { - ai_honor = -1.5 - ai_boldness = 1.5 - ai_vengefulness = 3.5 - } - } - } - - # Support them - option = { - name = ep3_powerful_families.8080.b - progress_towards_friend_effect = { - REASON = friend_supported_at_feast - CHARACTER = scope:other_family - OPINION = default_friend_opinion - } - stress_impact = { - ambitious = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = 0.1 - } - ai_value_modifier = { - ai_sociability = 1.5 - ai_honor = 1.5 - ai_vengefulness = -3.5 - } - } - } -} - -# Civil Savagery -# You're forced to sit next to someone from a rival family as they schmooze the liege -# 8090 -scripted_trigger ep3_pf_rival_fam_trigger = { - house ?= { - is_powerful_family = yes - } - top_liege != this - top_liege = root.top_liege - house != root.house - OR = { - house.house_head = { - has_relation_rival = root.house.house_head - } - has_relation_rival = root - } - is_ai = yes -} - -ep3_powerful_families.8090 = { - type = activity_event - title = ep3_powerful_families.8090.t - desc = ep3_powerful_families.8090.desc - theme = feast_activity - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:other_family - animation = rage - } - lower_right_portrait = { - character = scope:liege - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - house ?= { - is_powerful_family = yes - } - top_liege != this - scope:activity = { - any_attending_character = { - this = root.liege - } - any_attending_character = { - ep3_pf_rival_fam_trigger = yes - } - } - } - - immediate = { - scope:activity = { - random_attending_character = { - limit = { - ep3_pf_rival_fam_trigger = yes - } - save_scope_as = other_family - } - } - top_liege = { save_scope_as = liege } - } - - # Steal their thunder! - option = { - name = ep3_powerful_families.8090.a - progress_towards_rival_effect = { - REASON = rival_humiliated_at_feast - CHARACTER = scope:other_family - OPINION = default_rival_opinion - } - duel = { - skills = { stewardship diplomacy } - target = scope:liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8090.a.win - left_icon = root - right_icon = scope:liege - scope:other_family = { - change_influence = medium_influence_loss - } - change_influence = medium_influence_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8090.a.lose - left_icon = root - right_icon = scope:liege - scope:other_family = { - progress_towards_rival_effect = { - REASON = rival_plotting_against_me - CHARACTER = root - OPINION = default_rival_opinion - } - } - scope:other_family = { - change_influence = medium_influence_gain - } - change_influence = minor_influence_loss - } - } - } - stress_impact = { - content = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = -0.1 - } - ai_value_modifier = { - ai_honor = -1.5 - ai_boldness = 1.5 - ai_sociability = 1.5 - ai_vengefulness = 3.5 - } - } - } - - # Shut up and sit tight - option = { - name = ep3_powerful_families.8090.b - scope:other_family = { - change_influence = medium_influence_gain - } - stress_impact = { - ambitious = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:other_family - multiplier = 0.1 - } - ai_value_modifier = { - ai_sociability = 1.5 - ai_honor = 1.5 - ai_vengefulness = -3.5 - } - } - } -} - -# Civil Service -# Try to convince your liege to hire your relative -# 8100 -scripted_trigger ep3_relative_valid_for_court_position_trigger = { - is_adult = yes - is_ruler = no - has_any_court_position = no - is_councillor = no - top_liege = root.top_liege - OR = { - liege = { is_ai = yes } - liege = root - liege = root.liege - } - can_be_employed_as = court_poet_court_position -} - -ep3_powerful_families.8100 = { - type = activity_event - title = ep3_powerful_families.8100.t - desc = ep3_powerful_families.8100.desc - theme = feast_activity - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:liege - animation = toast_goblet - } - lower_left_portrait = { - character = scope:cp_fam - } - cooldown = { years = 15 } - - trigger = { - government_allows = administrative - house ?= { - is_powerful_family = yes - } - top_liege != this - house = { - any_house_member = { - ep3_relative_valid_for_court_position_trigger = yes - } - } - liege = { is_ai = yes } - scope:activity = { - any_attending_character = { - this = root.liege - } - } - } - - immediate = { - hidden_effect = { - house = { - random_house_member = { - limit = { - ep3_relative_valid_for_court_position_trigger = yes - } - add_trait = lifestyle_poet - save_scope_as = cp_fam - } - } - liege = { - save_scope_as = liege - add_courtier = scope:cp_fam - } - } - } - - # My family member should be your poet! - option = { - name = ep3_powerful_families.8100.a - duel = { - skill = diplomacy - target = scope:liege - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8100.a.win - left_icon = root - right_icon = scope:liege - scope:liege = { - court_position_grant_effect = { - EMPLOYER = scope:liege - POS = court_poet - CANDIDATE = scope:cp_fam - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = ep3_powerful_families.8100.a.lose - left_icon = root - right_icon = scope:liege - change_influence = minor_influence_loss - } - } - } - stress_impact = { - content = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_boldness = 1.5 - ai_sociability = 1.5 - } - } - } - - # Make pleasant conversation - option = { - name = ep3_powerful_families.8100.b - reverse_add_opinion = { - modifier = feast_had_good_talk - target = scope:liege - } - - change_influence = minor_influence_gain - stress_impact = { - ambitious = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - } - ai_chance = { - base = 10 - ai_value_modifier = { - ai_sociability = -1.5 - ai_honor = -1.5 - } - } - } -} diff --git a/events/dlc/ep3/ep3_roman_restoration_events.txt b/events/dlc/ep3/ep3_roman_restoration_events.txt index ed469f580..1dbd6c1c9 100644 --- a/events/dlc/ep3/ep3_roman_restoration_events.txt +++ b/events/dlc/ep3/ep3_roman_restoration_events.txt @@ -195,16 +195,22 @@ ep3_roman_restoration.0001 = { ep3_roman_restoration.0101 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/splash_icons/splash_byzantine.dds" title = roman_restoration.0002.t desc = { desc = ep3_roman_restoration.0101.intro first_valid = { triggered_desc = { - trigger = { scope:scoped_emperor.primary_title.state_faith ?= faith:hellenic_pagan } + trigger = { scope:scoped_emperor.primary_title.state_rite.faith ?= faith:hellenic_pagan } desc = ep3_roman_restoration.0101.hellenic } triggered_desc = { - trigger = { scope:scoped_emperor.primary_title.state_faith ?= faith:orthodox } + trigger = { + OR = { + scope:scoped_emperor.primary_title.state_rite ?= rite:byzantine_rite + scope:scoped_emperor.primary_title.state_rite.faith ?= faith:orthodox + } + } desc = ep3_roman_restoration.0101.orthodox } desc = ep3_roman_restoration.0101.fallback @@ -217,7 +223,7 @@ ep3_roman_restoration.0101 = { immediate = { #Same-faith non-empire tier rulers are over-awed. if = { - limit = { faith = scope:scoped_emperor.primary_title.state_faith } + limit = { faith = scope:scoped_emperor.primary_title.state_rite.faith } play_music_cue = "mx_cue_epic_sacral_moment" } #Otherwise, this is a tacit statement of imperial threat. @@ -360,7 +366,7 @@ ep3_roman_restoration.0300 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss lazy = minor_stress_impact_loss diligent = medium_stress_impact_gain @@ -514,6 +520,12 @@ ep3_roman_restoration.0520 = { THIS = culture:mongol.culture_head realm_size >= 100 } + #Greatest of khans hasn't come along + has_global_variable = greatest_of_khans_title + #Someone's not currently trying to be greatest of khans + has_global_variable = mpo_gok_war_ongoing + #Temujin dying prevents Mongol invasion for at least 50 years + has_global_variable = temujin_failed } } diff --git a/events/dlc/ep3/ep3_story_cycle_admin_eunuch_events.txt b/events/dlc/ep3/ep3_story_cycle_admin_eunuch_events.txt index 1a322ca14..0bdb3484a 100644 --- a/events/dlc/ep3/ep3_story_cycle_admin_eunuch_events.txt +++ b/events/dlc/ep3/ep3_story_cycle_admin_eunuch_events.txt @@ -26,7 +26,8 @@ scripted_trigger ep3_story_cycle_admin_eunuch_valid_realm_trigger = { is_ai = no highest_held_title_tier >= tier_empire top_liege = this - government_allows = administrative + government_has_mechanic = administrative + government_allows = noble_families culture = { has_cultural_parameter = can_appoint_chief_eunuch } NOR = { has_diarchy_type = co_emperorship @@ -130,9 +131,10 @@ scripted_effect ep3_story_cycle_admin_eunuch_create_eunuch_effect = { create_character = { culture = scope:origin.culture faith = root.faith + rite = root.rite employer = root gender = male - age = { + age = { integer_range = { min = 25 max = 45 @@ -213,6 +215,7 @@ scripted_effect ep3_story_cycle_admin_eunuch_create_family_children_effect = { create_character = { culture = $PARENT$.culture faith = $PARENT$.faith + rite = $PARENT$.rite employer = root age = { integer_range = { @@ -296,9 +299,10 @@ scripted_effect ep3_story_cycle_admin_eunuch_create_family_effect = { create_character = { culture = scope:eunuch.culture faith = scope:eunuch.faith + rite = scope:eunuch.rite employer = root gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - age = { + age = { integer_range = { min = scope:parent_min_age max = scope:parent_max_age @@ -525,7 +529,7 @@ ep3_story_cycle_admin_eunuch.1000 = { list = eunuchs order_by = sum_of_all_skills_value save_scope_as = eunuch - } + } } if = { limit = { NOT = { exists = scope:eunuch } } @@ -559,7 +563,7 @@ ep3_story_cycle_admin_eunuch.1001 = { desc = { first_valid = { triggered_desc = { - trigger = { has_title = title:e_byzantium } + trigger = { is_roman_emperor_trigger = yes } desc = ep3_story_cycle_admin_eunuch.1001.intro_byz } desc = ep3_story_cycle_admin_eunuch.1001.intro @@ -595,7 +599,6 @@ ep3_story_cycle_admin_eunuch.1001 = { } ordered_house_member = { limit = { - exists = this this != scope:eunuch } order_by = age @@ -615,9 +618,9 @@ ep3_story_cycle_admin_eunuch.1001 = { create_noble_family_effect = { GOVERNMENT_GIVER = scope:family_head } if = { limit = { - NOT = { government_has_flag = government_is_administrative } + NOT = { government_has_mechanic = administrative } } - hidden_effect = { change_government = administrative_government } + hidden_effect = { change_government = root.government_type } } } every_in_list = { @@ -760,7 +763,7 @@ ep3_story_cycle_admin_eunuch.2010 = { } } ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -787,7 +790,7 @@ ep3_story_cycle_admin_eunuch.2010 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain lazy = medium_stress_impact_gain fickle = medium_stress_impact_gain @@ -895,7 +898,7 @@ ep3_story_cycle_admin_eunuch.2015 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain @@ -923,7 +926,7 @@ ep3_story_cycle_admin_eunuch.2015 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain trusting = medium_stress_impact_gain lazy = medium_stress_impact_gain @@ -1199,7 +1202,7 @@ ep3_story_cycle_admin_eunuch.2021 = { scope:governor = { add_character_flag = { flag = admin_eunuch_family_boon_flag years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -1222,7 +1225,7 @@ ep3_story_cycle_admin_eunuch.2021 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -1556,7 +1559,7 @@ ep3_story_cycle_admin_eunuch.2024 = { scope:governor = { add_character_flag = { flag = admin_eunuch_family_boon_flag years = 5 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -1592,7 +1595,7 @@ ep3_story_cycle_admin_eunuch.2024 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -1632,16 +1635,16 @@ scripted_trigger ep3_story_cycle_admin_eunuch_valid_patriarch_trigger = { scope:protege ?= this } trigger_if = { - limit = { root.faith = { has_doctrine = doctrine_clerical_gender_male_only } } + limit = { root.rite = { rite_has_doctrine = doctrine_clerical_gender_male_only } } is_male = yes } trigger_else_if = { - limit = { root.faith = { has_doctrine = doctrine_clerical_gender_female_only } } + limit = { root.rite = { rite_has_doctrine = doctrine_clerical_gender_female_only } } is_female = yes } trigger_else = { always = yes } trigger_if = { - limit = { root.faith = { has_doctrine = doctrine_clerical_marriage_disallowed } } + limit = { root.rite = { rite_has_doctrine = doctrine_clerical_marriage_disallowed } } is_married = no is_betrothed = no } @@ -1805,7 +1808,7 @@ ep3_story_cycle_admin_eunuch.2031 = { opinion = -25 } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -1832,7 +1835,7 @@ ep3_story_cycle_admin_eunuch.2031 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain trusting = minor_stress_impact_gain } @@ -1858,7 +1861,7 @@ ep3_story_cycle_admin_eunuch.2031 = { # Eunuch scripted_effect ep3_story_cycle_admin_eunuch_save_council_position_effect = { - random_list = { # Pick best position, even if occupied + random_list = { # Pick best position, even if occupied 2 = { trigger = { petition_liege_councillor_blocked_trigger = { @@ -2054,7 +2057,7 @@ ep3_story_cycle_admin_eunuch.2040 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -2081,7 +2084,7 @@ ep3_story_cycle_admin_eunuch.2040 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -2259,7 +2262,7 @@ ep3_story_cycle_admin_eunuch.2041 = { } } ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -2286,7 +2289,7 @@ ep3_story_cycle_admin_eunuch.2041 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -2569,7 +2572,7 @@ ep3_story_cycle_admin_eunuch.2044 = { } } ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -2609,7 +2612,7 @@ ep3_story_cycle_admin_eunuch.2044 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -2940,7 +2943,7 @@ ep3_story_cycle_admin_eunuch.2050 = { name = ep3_story_cycle_admin_eunuch.2050.a ep3_story_cycle_admin_eunuch_award_boon_effect = yes ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -2960,7 +2963,7 @@ ep3_story_cycle_admin_eunuch.2050 = { option = { name = ep3_story_cycle_admin_eunuch.2050.b ep3_story_cycle_admin_eunuch_downgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -3067,7 +3070,7 @@ ep3_story_cycle_admin_eunuch.2051 = { secret_target ?= { is_of_major_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_secret_trigger = { EUNUCH = scope:eunuch } } - alternative_limit = { + alternative_limit = { secret_target ?= { is_of_minor_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_secret_trigger = { EUNUCH = scope:eunuch } } @@ -3109,7 +3112,7 @@ ep3_story_cycle_admin_eunuch.2051 = { secret_target ?= { is_of_major_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_secret_trigger = { EUNUCH = scope:eunuch } } - alternative_limit = { + alternative_limit = { secret_target ?= { is_of_minor_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_secret_trigger = { EUNUCH = scope:eunuch } } @@ -3159,7 +3162,7 @@ ep3_story_cycle_admin_eunuch.2051 = { modifier = angry_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain compassionate = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -3181,7 +3184,7 @@ ep3_story_cycle_admin_eunuch.2051 = { modifier = grateful_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_gain ambitious = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -3294,7 +3297,7 @@ ep3_story_cycle_admin_eunuch.2052 = { scheme_defender = { is_of_major_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_scheme_trigger = { EUNUCH = scope:eunuch } } - alternative_limit = { + alternative_limit = { scheme_defender = { is_of_minor_interest_to_root_trigger = yes } ep3_story_cycle_admin_eunuch_scheme_trigger = { EUNUCH = scope:eunuch } } @@ -3330,7 +3333,7 @@ ep3_story_cycle_admin_eunuch.2052 = { } ep3_story_cycle_admin_eunuch_upgrade_effect = yes ep3_story_cycle_admin_eunuch_upset_courtier_effect = { COURTIER = scope:scheme_owner } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain compassionate = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -3352,7 +3355,7 @@ ep3_story_cycle_admin_eunuch.2052 = { modifier = grateful_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_gain ambitious = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -3429,7 +3432,7 @@ ep3_story_cycle_admin_eunuch.2060 = { } } ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -3452,7 +3455,7 @@ ep3_story_cycle_admin_eunuch.2060 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -3546,7 +3549,7 @@ ep3_story_cycle_admin_eunuch.2061 = { } } ep3_story_cycle_admin_eunuch_upgrade_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -3569,7 +3572,7 @@ ep3_story_cycle_admin_eunuch.2061 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -3590,7 +3593,7 @@ ep3_story_cycle_admin_eunuch.2061 = { if = { limit = { scope:eunuch.house.house_head = { - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes } } set_employer = scope:eunuch.house.house_head @@ -3714,7 +3717,7 @@ ep3_story_cycle_admin_eunuch.2070 = { modifier = angry_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain diligent = minor_stress_impact_gain } @@ -3741,7 +3744,7 @@ ep3_story_cycle_admin_eunuch.2070 = { opinion = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -3777,13 +3780,13 @@ scripted_trigger ep3_story_cycle_admin_eunuch_family_protege_trigger = { OR = { AND = { is_male = yes - root.faith = { has_doctrine = doctrine_gender_male_dominated } + root.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } AND = { is_female = yes - root.faith = { has_doctrine = doctrine_gender_female_dominated } + root.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } - root.faith = { has_doctrine = doctrine_gender_equal } + root.rite = { rite_has_doctrine = doctrine_gender_equal } } } @@ -3962,6 +3965,7 @@ ep3_story_cycle_admin_eunuch.3001 = { create_character = { culture = scope:origin.culture faith = root.faith + rite = root.rite location = root.location gender = male age = { @@ -4092,6 +4096,7 @@ ep3_story_cycle_admin_eunuch.3010 = { create_character = { culture = scope:origin.culture faith = root.faith + rite = root.rite location = root.location gender = male age = { @@ -4395,7 +4400,7 @@ ep3_story_cycle_admin_eunuch.4000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -4422,7 +4427,7 @@ ep3_story_cycle_admin_eunuch.4000 = { } } reason = ep3_story_cycle_admin_eunuch.4000.b.reason - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain wrathful = minor_stress_impact_gain } @@ -4446,7 +4451,7 @@ ep3_story_cycle_admin_eunuch.4000 = { TARGET = scope:cuckolder IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain calm = minor_stress_impact_gain } @@ -4476,12 +4481,12 @@ scripted_trigger ep3_story_cycle_admin_eunuch_cheating_spouse_trigger = { trigger_if = { limit = { is_male = yes } NOT = { - root.faith = { has_doctrine_parameter = adultery_male_accepted } + root.rite = { rite_has_parameter = adultery_male_accepted } } } trigger_else = { NOT = { - root.faith = { has_doctrine_parameter = adultery_female_accepted } + root.rite = { rite_has_parameter = adultery_female_accepted } } } opinion = { @@ -4491,10 +4496,10 @@ scripted_trigger ep3_story_cycle_admin_eunuch_cheating_spouse_trigger = { } scripted_trigger ep3_story_cycle_admin_eunuch_seducer_trigger = { - is_attracted_to_gender_of = $SPOUSE$ + can_set_relation_lover_trigger = { CHARACTER = $SPOUSE$ } is_eunuch_trigger = no + might_cheat_on_every_partner_trigger = yes NOR = { - has_trait = celibate is_close_family_of = $SPOUSE$ has_relation_rival = $SPOUSE$ } @@ -4716,7 +4721,7 @@ ep3_story_cycle_admin_eunuch.4010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -4748,7 +4753,7 @@ ep3_story_cycle_admin_eunuch.4010 = { TARGET = scope:eunuch IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain calm = minor_stress_impact_gain } @@ -4768,7 +4773,7 @@ ep3_story_cycle_admin_eunuch.4010 = { option = { name = ep3_story_cycle_admin_eunuch.4010.d add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain trusting = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -4886,7 +4891,7 @@ ep3_story_cycle_admin_eunuch.5000 = { modifier = angry_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -4911,7 +4916,7 @@ ep3_story_cycle_admin_eunuch.5000 = { modifier = pleased_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -5058,7 +5063,7 @@ ep3_story_cycle_admin_eunuch.5010 = { modifier = angry_opinion opinion = -15 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -5083,7 +5088,7 @@ ep3_story_cycle_admin_eunuch.5010 = { modifier = pleased_opinion opinion = 15 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_gain fickle = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -5220,8 +5225,7 @@ scripted_trigger ep3_story_cycle_admin_eunuch_coup_trigger = { NOR = { has_relation_friend = root is_spouse_of = root - has_trait = eunuch_1 - has_trait = beardless_eunuch + is_eunuch_trigger = yes has_trait = blind } save_temporary_scope_as = coupist_temp @@ -5650,7 +5654,7 @@ ep3_story_cycle_admin_eunuch.6000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_gain forgiving = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -5668,7 +5672,7 @@ ep3_story_cycle_admin_eunuch.6000 = { name = ep3_story_cycle_admin_eunuch.6000.c add_legitimacy = major_legitimacy_loss every_targeting_faction = { add_faction_discontent = 25 } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = minor_stress_impact_gain vengeful = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5685,7 +5689,7 @@ ep3_story_cycle_admin_eunuch.6000 = { option = { name = ep3_story_cycle_admin_eunuch.6000.d ep3_story_cycle_admin_eunuch_coup_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain vengeful = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -5722,7 +5726,7 @@ ep3_story_cycle_admin_eunuch.8000 = { desc = { first_valid = { triggered_desc = { - trigger = { has_title = title:e_byzantium } + trigger = { is_roman_emperor_trigger = yes } desc = ep3_story_cycle_admin_eunuch.8000.intro_byz } desc = ep3_story_cycle_admin_eunuch.8000.intro @@ -5879,7 +5883,7 @@ ep3_story_cycle_admin_eunuch.8000 = { if = { limit = { employer != root } set_employer = root - } + } if = { limit = { is_imprisoned_by = root } release_from_prison = yes @@ -6052,7 +6056,7 @@ ep3_story_cycle_admin_eunuch.8010 = { trigger = { scope:student ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:student } remove_variable = student } @@ -6074,7 +6078,7 @@ ep3_story_cycle_admin_eunuch.8010 = { trigger = { scope:rival ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:rival } remove_variable = rival } @@ -6142,7 +6146,7 @@ ep3_story_cycle_admin_eunuch.8020 = { name = ep3_story_cycle_admin_eunuch.8020.a trigger = { scope:background_dungeon_scope = root } scope:eunuch = { release_from_prison = yes } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_gain callous = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -6170,7 +6174,7 @@ ep3_story_cycle_admin_eunuch.8020 = { target = scope:imprisoner } scope:prisoner = { release_from_prison = yes } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -6191,7 +6195,7 @@ ep3_story_cycle_admin_eunuch.8020 = { trigger = { scope:student ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:student } remove_variable = student } @@ -6210,7 +6214,7 @@ ep3_story_cycle_admin_eunuch.8020 = { scope:eunuch = { ep3_story_cycle_admin_eunuch_clear_modifier_effect = { TYPE = eunuch } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } ai_chance = { @@ -6226,7 +6230,7 @@ ep3_story_cycle_admin_eunuch.8020 = { trigger = { scope:rival ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:rival } remove_variable = rival } @@ -6245,7 +6249,7 @@ ep3_story_cycle_admin_eunuch.8020 = { scope:eunuch = { ep3_story_cycle_admin_eunuch_clear_modifier_effect = { TYPE = eunuch } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } ai_chance = { @@ -6326,7 +6330,7 @@ ep3_story_cycle_admin_eunuch.8030 = { gold = minor_gold_value } add_courtier = scope:eunuch - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain callous = minor_stress_impact_gain } @@ -6351,11 +6355,11 @@ ep3_story_cycle_admin_eunuch.8030 = { trigger = { scope:student ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:student } remove_variable = student } - scope:student = { + scope:student = { if = { limit = { is_imprisoned_by = root } release_from_prison = yes @@ -6383,11 +6387,11 @@ ep3_story_cycle_admin_eunuch.8030 = { trigger = { scope:rival ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:rival } remove_variable = rival } - scope:rival = { + scope:rival = { if = { limit = { is_imprisoned_by = root } release_from_prison = yes @@ -6476,11 +6480,11 @@ ep3_story_cycle_admin_eunuch.8040 = { trigger = { scope:student ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:student } remove_variable = student } - scope:student = { + scope:student = { if = { limit = { is_imprisoned_by = root } release_from_prison = yes @@ -6508,11 +6512,11 @@ ep3_story_cycle_admin_eunuch.8040 = { trigger = { scope:rival ?= { ep3_admin_story_cycle_valid_switch_character_trigger = yes } } - scope:story = { + scope:story = { set_variable = { name = eunuch value = scope:rival } remove_variable = rival } - scope:rival = { + scope:rival = { if = { limit = { is_imprisoned_by = root } release_from_prison = yes @@ -6571,6 +6575,10 @@ ep3_story_cycle_admin_eunuch.9980 = { # Story cycle inheritance days = 3 } } + remove_list_variable = { + name = upset_courtiers + target = scope:new_story_owner + } } } # Or end diff --git a/events/dlc/ep3/ep3_story_cycle_grand_ambitions_events.txt b/events/dlc/ep3/ep3_story_cycle_grand_ambitions_events.txt index f122f1601..89635e3e1 100644 --- a/events/dlc/ep3/ep3_story_cycle_grand_ambitions_events.txt +++ b/events/dlc/ep3/ep3_story_cycle_grand_ambitions_events.txt @@ -81,7 +81,7 @@ grand_ambitions.0001 = { lower_right_portrait = root.top_liege cooldown = { years = 20 } - + trigger = { # Keep the number of these down to a reasonable level trigger_if = { @@ -102,10 +102,10 @@ grand_ambitions.0001 = { influence_level >= 3 top_liege != this highest_held_title_tier >= tier_duchy - government_allows = administrative + government_has_mechanic = administrative top_liege ?= { - primary_title.tier = tier_empire - government_allows = administrative + primary_title.tier >= tier_empire + government_has_mechanic = administrative NOR = { legitimacy_level >= 4 influence_level >= 4 @@ -158,7 +158,7 @@ grand_ambitions.0001 = { add_prestige = major_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss honest = minor_stress_impact_loss deceitful = minor_stress_impact_gain @@ -224,7 +224,7 @@ grand_ambitions.0001 = { remove_treasury_or_gold = massive_treasury_or_gold_value change_influence = medium_influence_loss - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_loss ambitious = medium_stress_impact_loss deceitful = medium_stress_impact_loss @@ -248,11 +248,11 @@ grand_ambitions.0001 = { } } } - + option = { # I'm happy just how I am (lame) name = grand_ambitions.0001.c - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain craven = minor_stress_impact_loss } @@ -274,7 +274,7 @@ grand_ambitions.0002 = { trigger = { scope:defender.capital_county = title:c_byzantion } reference = ep3_constantinople_riot } - + left_portrait = { character = root animation = schadenfreude @@ -399,7 +399,7 @@ grand_ambitions.0002 = { } } } - + option = { # De-nose and Banish the scoundrel! name = grand_ambitions.0202.c flavor = grand_ambitions.0202.c.flavor @@ -609,8 +609,8 @@ grand_ambitions.0004 = { ### 0130 Whispers in the Wind ### 0131 Follow-up letter event ### 0140 A Fellow Governor -### 0170 A Powerful Alliance -### 0180 A Proper Coronation +### 0170 A Powerful Alliance +### 0180 A Proper Coronation ### ### Success Events ### 0200 The Fateful Night @@ -754,8 +754,8 @@ scripted_effect send_bethrothal_notifications_and_apply_opinions_effect = { limit = { NOR = { culture = { has_cultural_tradition = tradition_polygamous } - faith = { has_doctrine = doctrine_polygamy } - faith = { has_doctrine = doctrine_concubines } + rite = { rite_has_doctrine = doctrine_polygamy } + rite = { rite_has_doctrine = doctrine_concubines } } } @@ -765,8 +765,8 @@ scripted_effect send_bethrothal_notifications_and_apply_opinions_effect = { limit = { NOR = { culture = { has_cultural_tradition = tradition_polygamous } - faith = { has_doctrine = doctrine_polygamy } - faith = { has_doctrine = doctrine_concubines } + rite = { rite_has_doctrine = doctrine_polygamy } + rite = { rite_has_doctrine = doctrine_concubines } } } add_opinion = { @@ -949,7 +949,7 @@ grand_ambitions.0100 = { animation = chancellor } lower_center_portrait = scope:foreign_ruler - + trigger = { NOT = { has_character_flag = had_event_ga_0100 } any_neighboring_and_across_water_top_liege_realm_owner = { @@ -976,7 +976,7 @@ grand_ambitions.0100 = { ordered_neighboring_and_across_water_top_liege_realm_owner = { limit = { is_ai = yes - foreign_ruler_has_any_interest_in_coup_trigger = yes + foreign_ruler_has_any_interest_in_coup_trigger = yes save_temporary_scope_as = temp_foreign_caller trigger_if = { limit = { scope:story = { has_variable_list = foreign_callers } } @@ -1111,8 +1111,8 @@ grand_ambitions.0100 = { } add_character_flag = had_event_ga_0100 - - stress_impact = { + + stress_and_fulfillment_impact = { base = minor_stress_impact_gain trusting = minor_stress_impact_loss } @@ -1137,7 +1137,7 @@ grand_ambitions.0100 = { name = grand_ambitions.0100.b duel = { skill = diplomacy - target = scope:foreign_ruler + target = scope:foreign_ruler 50 = { compare_modifier = { value = scope:duel_value @@ -1185,7 +1185,7 @@ grand_ambitions.0100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain patient = minor_stress_impact_gain } @@ -1205,11 +1205,11 @@ grand_ambitions.0100 = { } } } - + option = { # Deny their offer name = grand_ambitions.0100.c - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss paranoid = minor_stress_impact_loss } @@ -1288,7 +1288,7 @@ grand_ambitions.0110 = { base = 40 } } - + option = { # No thanks name = grand_ambitions.0110.c change_influence = minor_influence_gain @@ -1439,7 +1439,7 @@ grand_ambitions.0120 = { } } } - + option = { # Construct Pasteur name = grand_ambitions.0120.b trigger = { scope:estate_building ?= flag:grazing_land } @@ -1461,7 +1461,7 @@ grand_ambitions.0120 = { } } } - + option = { # Construct Watchtower name = grand_ambitions.0120.c trigger = { scope:estate_building ?= flag:watchtower } @@ -1833,7 +1833,7 @@ grand_ambitions.0131 = { add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain } @@ -1863,7 +1863,7 @@ grand_ambitions.0140 = { } } theme = administrative - + left_portrait = { character = root animation = inspect_weapon @@ -1873,7 +1873,7 @@ grand_ambitions.0140 = { animation = spymaster } - cooldown = { years = 3 } + cooldown = { years = 3 } trigger = { scope:target_char = { # Is there another vassal we can get a hook on @@ -2015,14 +2015,14 @@ grand_ambitions.0140 = { ### ### SCHEME ROUTE ### -### 0150 An Additional Agent -### 0151 A Master of Whispers -### 0155 Calling in Favors -### 0160 Threads of Subterfuge -### 0170 A Powerful Alliance +### 0150 An Additional Agent +### 0151 A Master of Whispers +### 0155 Calling in Favors +### 0160 Threads of Subterfuge +### 0170 A Powerful Alliance ### 0180 A Proper Coronation ### 0190 Keep Your Friends Close... -### 0191 A Fateful Offer +### 0191 A Fateful Offer ### ### Success Events ### 0200 The Fateful Night @@ -2037,7 +2037,7 @@ grand_ambitions.0140 = { ### ####################################### -# Chances to gain scheme agents +# Chances to gain scheme agents grand_ambitions.0150 = { type = character_event title = grand_ambitions.0150.t @@ -2076,9 +2076,9 @@ grand_ambitions.0150 = { add_agent_slot = agent_decoy } } - + option = { # Add a socialite (success chance agent) - name = grand_ambitions.0150.c + name = grand_ambitions.0150.c scope:depose_scheme_scope = { add_agent_slot = agent_socialite } @@ -2121,7 +2121,7 @@ grand_ambitions.0151 = { animation = spymaster } lower_center_portrait = scope:eunuch - + trigger = { any_scheme = { type = depose @@ -2165,7 +2165,7 @@ grand_ambitions.0151 = { option = { # Yes add the eunuch to the scheme name = grand_ambitions.0151.a change_influence = major_influence_loss - + show_as_tooltip = { scope:depose_scheme_scope = { add_agent_slot = agent_eunuch @@ -2186,14 +2186,14 @@ grand_ambitions.0151 = { ai_chance = { base = 100 - modifier = { + modifier = { influence <= major_influence_value factor = 0 } } } - option = { # I'd rather have him for myself + option = { # I'd rather have him for myself name = grand_ambitions.0151.b trigger = { can_steal_eunuch_trigger = yes @@ -2226,13 +2226,13 @@ grand_ambitions.0151 = { ai_chance = { base = 80 - modifier = { + modifier = { influence <= massive_influence_value factor = 0 } } } - + option = { # No thanks name = grand_ambitions.0151.c hidden_effect = { @@ -2265,7 +2265,7 @@ grand_ambitions.0155 = { lower_left_portrait = scope:agent_choice_2 lower_center_portrait = scope:agent_choice_1 lower_right_portrait = scope:agent_choice_3 - + trigger = { # Scheme must have unfilled agent slots any_scheme = { @@ -2283,7 +2283,7 @@ grand_ambitions.0155 = { any_courtier_or_guest = { NOT = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } } is_valid_as_agent_in_slot = scope:temp_agent_slot @@ -2303,13 +2303,13 @@ grand_ambitions.0155 = { } } - # Find 3 characters with which to fill the agent slot + # Find 3 characters with which to fill the agent slot scope:target_char = { random_courtier_or_guest = { limit = { NOT = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } } is_valid_as_agent_in_slot = scope:agent_slot @@ -2321,7 +2321,7 @@ grand_ambitions.0155 = { any_courtier_or_guest = { NOR = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } this = scope:agent_choice_1 } @@ -2332,7 +2332,7 @@ grand_ambitions.0155 = { limit = { NOR = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } this = scope:agent_choice_1 } @@ -2346,7 +2346,7 @@ grand_ambitions.0155 = { any_courtier_or_guest = { NOR = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } this = scope:agent_choice_1 this ?= scope:agent_choice_2 @@ -2358,7 +2358,7 @@ grand_ambitions.0155 = { limit = { NOR = { scope:depose_scheme_scope = { - scheme_is_character_agent = prev + scheme_is_character_agent = prev } this = scope:agent_choice_1 this ?= scope:agent_choice_2 @@ -2391,7 +2391,7 @@ grand_ambitions.0155 = { } } } - + option = { # Agent Choice 3 name = grand_ambitions.0155.c trigger = { exists = scope:agent_choice_3 } @@ -2440,7 +2440,7 @@ grand_ambitions.0160 = { change_influence = minor_influence_loss random_scheme = { type = depose - add_scheme_modifier = { + add_scheme_modifier = { type = scheme_grand_ambitions_bribed_functionaries_modifier } } @@ -2451,18 +2451,18 @@ grand_ambitions.0160 = { remove_short_term_gold = major_gold_value random_scheme = { type = depose - add_scheme_modifier = { + add_scheme_modifier = { type = scheme_grand_ambitions_bribed_merchants_modifier } } } - + option = { # Bribe the scribes name = grand_ambitions.0160.c remove_short_term_gold = medium_gold_value random_scheme = { type = depose - add_scheme_modifier = { + add_scheme_modifier = { type = scheme_grand_ambitions_bribed_scribes_modifier } } @@ -2517,7 +2517,7 @@ grand_ambitions.0170 = { find_scheme_interlocutor_effect = yes scope:target_char = { random_vassal = { - limit = { + limit = { primary_title.tier >= tier_duchy this = house.house_head this != root @@ -2648,8 +2648,8 @@ grand_ambitions.0170 = { METHOD_FLAG = hook } - stress_impact = { - paranoid = minor_stress_impact_gain + stress_and_fulfillment_impact = { + paranoid = minor_stress_impact_gain trusting = minor_stress_impact_loss } @@ -2657,14 +2657,14 @@ grand_ambitions.0170 = { base = 30 } } - + option = { # Betrothal name = grand_ambitions.0170.c trigger = { trigger_if = { limit = { NOR = { - faith = { has_doctrine = doctrine_polygamy } + rite = { rite_has_doctrine = doctrine_polygamy } allowed_more_spouses = yes } } @@ -2719,15 +2719,15 @@ grand_ambitions.0170 = { METHOD_FLAG = marriage } - stress_impact = { - chaste = medium_stress_impact_gain + stress_and_fulfillment_impact = { + chaste = medium_stress_impact_gain } ai_chance = { base = 60 } } - + option = { # My ambitions will not be shackled by debts name = grand_ambitions.0170.d change_influence = minor_influence_gain @@ -2784,7 +2784,7 @@ grand_ambitions.0180 = { } } - option = { + option = { name = grand_ambitions.0180.a trigger = { piety_level >= max_piety_level } flavor = grand_ambitions.0180.a.flavor @@ -2824,14 +2824,14 @@ grand_ambitions.0180 = { change_influence = major_influence_loss duel = { skills = { learning intrigue } - value = very_high_skill_rating + value = very_high_skill_rating 50 = { compare_modifier = { value = scope:duel_value multiplier = 5 min = -49 } - modifier = { + modifier = { num_virtuous_traits >= 1 add = 10 } @@ -2906,7 +2906,7 @@ grand_ambitions.0180 = { } } } - + option = { # Try to bribe the patriarch name = grand_ambitions.0180.c @@ -2932,7 +2932,7 @@ grand_ambitions.0180 = { } } - # Traits + # Traits modifier = { has_trait = greedy add = 50 @@ -2968,7 +2968,7 @@ grand_ambitions.0180 = { multiplier = -1.0 } } - 50 = { # Failure + 50 = { # Failure desc = grand_ambitions.0180.b.failure root = { send_interface_toast = { @@ -2994,7 +2994,7 @@ grand_ambitions.0180 = { } } - # Traits + # Traits modifier = { has_trait = just add = 50 @@ -3106,7 +3106,7 @@ grand_ambitions.0190 = { age >= 16 } } - + immediate = { save_scope_as = emperor if = { # Grab spymaster first @@ -3121,7 +3121,7 @@ grand_ambitions.0190 = { exists = court_position:chief_eunuch_court_position court_position:chief_eunuch_court_position != scope:secret_owner } - court_position:chief_eunuch_court_position = { save_scope_as = interlocutor } + court_position:chief_eunuch_court_position = { save_scope_as = interlocutor } } else_if = { # then chancellor limit = { @@ -3288,7 +3288,7 @@ grand_ambitions.0190 = { } } } - + option = { # Opt-Out name = grand_ambitions.0190.c @@ -3314,7 +3314,7 @@ grand_ambitions.0191 = { animation = obsequious_bow } lower_center_portrait = scope:emperor - + trigger = { age >= 16 scope:emperor = { @@ -3548,7 +3548,7 @@ grand_ambitions.0200 = { modifier = deposed_me_opinion } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss } } @@ -3614,7 +3614,7 @@ grand_ambitions.0201 = { immediate = { save_scope_as = root_scope } - option = { + option = { name = grand_ambitions.0201.a add_legitimacy = 1000 add_piety = medium_piety_gain @@ -3651,7 +3651,7 @@ grand_ambitions.0202 = { trigger = { scope:county_location = title:c_byzantion } reference = ep3_constantinople_riot } - + left_portrait = { character = root animation = schadenfreude @@ -3784,7 +3784,7 @@ grand_ambitions.0202 = { } } } - + option = { # De-nose and Banish the scoundrel! name = grand_ambitions.0202.c flavor = grand_ambitions.0202.c.flavor @@ -3856,9 +3856,9 @@ grand_ambitions.0202 = { if = { limit = { scope:story ?= { - NOR = { - has_variable = hof_support - has_variable = promised_foreign_ruler_claim + has_none_of_variables = { + name = hof_support + name = promised_foreign_ruler_claim } } } @@ -3897,7 +3897,7 @@ grand_ambitions.0250 = { end_story = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain ambitious = medium_stress_impact_gain arrogant = minor_stress_impact_gain @@ -3990,7 +3990,7 @@ grand_ambitions.0300 = { } resolve_title_and_vassal_change = scope:change - add_legitimacy = major_legitimacy_loss + add_legitimacy = major_legitimacy_loss } option = { # Find a diplomatic out @@ -4003,7 +4003,7 @@ grand_ambitions.0300 = { } duel = { skill = diplomacy - target = scope:foreign_ruler + target = scope:foreign_ruler 50 = { compare_modifier = { value = scope:duel_value @@ -4057,7 +4057,7 @@ grand_ambitions.0300 = { } } } - + option = { # Deny their claim name = grand_ambitions.0300.c add_legitimacy = minor_legitimacy_gain @@ -4133,7 +4133,7 @@ grand_ambitions.0500 = { any_owned_story = { type = grand_ambitions_story_cycle save_temporary_scope_as = temp_story - exists = var:target_char + exists = var:target_char var:target_char = { NOT = { any_held_title = { this = scope:temp_story.var:target_title } } } @@ -4153,7 +4153,7 @@ grand_ambitions.0500 = { } } - option = { + option = { name = grand_ambitions.0500.a trigger = { # Do you still meet the criteria for this story cycle? house = { @@ -4162,10 +4162,10 @@ grand_ambitions.0500 = { } top_liege != this highest_held_title_tier <= tier_kingdom - government_allows = administrative + government_has_mechanic = administrative top_liege = { - primary_title.tier = tier_empire - government_allows = administrative + primary_title.tier >= tier_empire + government_has_mechanic = administrative } } if = { diff --git a/events/dlc/ep3/ep3_travel_events_3.txt b/events/dlc/ep3/ep3_travel_events_3.txt index 3e49432d1..5d1bf561f 100644 --- a/events/dlc/ep3/ep3_travel_events_3.txt +++ b/events/dlc/ep3/ep3_travel_events_3.txt @@ -21,7 +21,7 @@ scripted_trigger ep3_travel_events_3000_enraptured_trigger = { } # You enter a province which your faith is syncretic with -ep3_travel_events.3000 = { +ep3_travel_events.3000 = { type = character_event title = ep3_travel_events.3000.t desc = { @@ -62,14 +62,14 @@ ep3_travel_events.3000 = { } desc = ep3_travel_events.3000.outro } - + } theme = travel override_background = { reference = wilderness_wetlands } left_portrait = { - character = root + character = root triggered_animation = { trigger = { ep3_travel_events_3000_enraptured_trigger = yes @@ -104,7 +104,7 @@ ep3_travel_events.3000 = { barony = title:b_nablus } } - + NOT = { has_trait = cynical } @@ -120,7 +120,7 @@ ep3_travel_events.3000 = { save_scope_as = owner #Create fancy regalia set_artifact_rarity_masterwork = yes - create_artifact = { + create_artifact = { name = artifact_water_of_the_jordan description = placeholder # Will be updated in the post-creation effects creator = root @@ -144,7 +144,7 @@ ep3_travel_events.3000 = { # I'm here looking for holiness, cleanliness be damned! Taking some water with me option = { trigger = { - OR = { + OR = { has_trait = zealous trigger_if = { limit = { @@ -186,8 +186,8 @@ ep3_travel_events.3000 = { modifier = holy_water_mortal_stomach_modifier years = 5 } - - stress_impact = { + + stress_and_fulfillment_impact = { content = minor_stress_impact_gain zealous = miniscule_stress_impact_loss paranoid = minor_stress_impact_gain @@ -222,14 +222,14 @@ ep3_travel_events.3000 = { text = ep3_travel_events.3000.b } flavor = ep3_travel_events.3000.b.flavor - + add_piety = medium_piety_gain add_stress = miniscule_stress_impact_loss add_character_modifier = { modifier = holy_water_mortal_stomach_modifier years = 5 - } - stress_impact = { + } + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain paranoid = minor_stress_impact_gain craven = miniscule_stress_impact_gain @@ -266,7 +266,7 @@ ep3_travel_events.3000 = { text = ep3_travel_events.3000.c } flavor = ep3_travel_events.3000.c_flavor - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain brave = miniscule_stress_impact_gain stubborn = minor_stress_impact_gain @@ -328,7 +328,7 @@ scripted_trigger ep3_travel_events_3001_is_foe_trigger = { } # You enter the Cilician Gates -ep3_travel_events.3001 = { +ep3_travel_events.3001 = { type = character_event title = ep3_travel_events.3001.t desc = { @@ -378,7 +378,7 @@ ep3_travel_events.3001 = { reference = ep2_travel_settlement_mountains } left_portrait = { - character = root + character = root animation = jockey_walk camera = camera_event_horse_left } @@ -471,7 +471,7 @@ ep3_travel_events.3001 = { modifier = impressed_opinion } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss zealous = minor_stress_impact_loss } @@ -489,8 +489,8 @@ ep3_travel_events.3001 = { modifier = haunted_by_hostile_troops_modifier years = 1 } - - stress_impact = { + + stress_and_fulfillment_impact = { paranoid = miniscule_stress_impact_gain craven = miniscule_stress_impact_gain } @@ -502,12 +502,16 @@ ep3_travel_events.3001 = { scripted_trigger ep3_travel_events_3002_byzantine_root_trigger = { culture = { - has_cultural_pillar = heritage_greek + has_cultural_pillar = heritage_byzantine + OR = { + any_parent_culture_or_above = { this = culture:greek } + this = culture:greek + } } } # You visit the capital of a ruler who belongs to a neighboring culture -ep3_travel_events.3002 = { +ep3_travel_events.3002 = { type = character_event title = ep3_travel_events.3002.t desc = { @@ -517,7 +521,7 @@ ep3_travel_events.3002 = { triggered_desc = { trigger = { scope:local_lord = { - government_allows = administrative + government_has_mechanic = administrative } } desc = ep3_travel_events.3002.admin @@ -610,7 +614,7 @@ ep3_travel_events.3002 = { reference = holy_site_generic } left_portrait = { - character = root + character = root animation = jockey_idle camera = camera_event_horse_left } @@ -623,7 +627,7 @@ ep3_travel_events.3002 = { is_available_travelling = yes is_playable_character = yes is_location_valid_for_travel_event_on_land = yes - government_allows = administrative + government_has_mechanic = administrative OR = { NOT = { exists = top_liege } top_liege.culture = { @@ -730,7 +734,7 @@ ep3_travel_events.3002 = { any_neighboring_province = { is_county_capital = yes county = root.location.county - + } } } @@ -764,7 +768,7 @@ ep3_travel_events.3002 = { text = ep3_travel_events.3002.a } flavor = ep3_travel_events.3002.a.flavor - + #I am an impressive imperial Greek!!!!! duel = { skill = diplomacy @@ -777,37 +781,19 @@ ep3_travel_events.3002 = { min = -49 } modifier = { - OR = { - AND = { - highest_held_title_tier >= tier_empire - scope:local_lord = { highest_held_title_tier < tier_empire } - } - AND = { - highest_held_title_tier >= tier_kingdom - scope:local_lord = { highest_held_title_tier < tier_kingdom } - } - } + highest_held_title_tier > scope:local_lord.highest_held_title_tier add = 25 } modifier = { - OR = { - AND = { - highest_held_title_tier >= tier_empire - scope:local_lord = { highest_held_title_tier = tier_empire } - } - AND = { - highest_held_title_tier >= tier_kingdom - scope:local_lord = { highest_held_title_tier = tier_kingdom } - } - } + highest_held_title_tier >= scope:local_lord.highest_held_title_tier add = 10 } - + send_interface_toast = { title = ep3_travel_events.3002.a_success left_icon = root right_icon = scope:local_lord - + add_prestige = minor_prestige_gain if = { limit = { @@ -902,7 +888,7 @@ ep3_travel_events.3002 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain shy = miniscule_stress_impact_gain craven = miniscule_stress_impact_gain @@ -946,7 +932,7 @@ ep3_travel_events.3002 = { } } } - + # I should visit their local places of worship option = { name = ep3_travel_events.3002.b @@ -959,18 +945,18 @@ ep3_travel_events.3002 = { scope:local_lord_capital.faith = { this != root.faith } - faith = { - NOT = { has_doctrine = doctrine_pluralism_pluralistic } + rite = { + NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } faith = { change_fervor = { - value = -5 + value = notable_fervor_loss desc = fervor_loss_emperor_pluralistic_act } } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = miniscule_stress_impact_loss cynical = miniscule_stress_impact_gain gregarious = minor_stress_impact_gain @@ -1038,7 +1024,7 @@ ep3_travel_events.3002 = { } } } - + if = { limit = { this = root.culture.culture_head @@ -1051,8 +1037,8 @@ ep3_travel_events.3002 = { } } } - - stress_impact = { + + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain callous = miniscule_stress_impact_gain sadistic = miniscule_stress_impact_gain @@ -1090,14 +1076,24 @@ ep3_travel_events.3003 = { scripted_trigger ep3_travel_events_3010_anatolian_native_trigger = { OR = { - has_cultural_pillar = heritage_greek - has_cultural_pillar = heritage_turkish + has_cultural_pillar = heritage_byzantine + AND = { + has_cultural_pillar = heritage_caucasian + any_parent_culture_or_above = { this = culture:armenian } + this = culture:armenian + } + } + OR = { + any_parent_culture_or_above = { this = culture:greek } + this = culture:greek + any_parent_culture_or_above = { this = culture:armenian } + this = culture:armenian } } #you arrive in a low control anatolian province and the locals hide, mistaking you for tax-collectors/raiders -ep3_travel_events.3010 = { +ep3_travel_events.3010 = { type = character_event title = ep3_travel_events.3010.t desc = { @@ -1131,7 +1127,7 @@ ep3_travel_events.3010 = { reference = terrain_travel } left_portrait = { - character = root + character = root animation = eyeroll } right_portrait = { @@ -1205,6 +1201,7 @@ ep3_travel_events.3010 = { location = root.location culture = root.location.county.culture faith = root.location.county.faith + rite = root.location.county.rite dynasty = none save_scope_as = anatolian_guide } @@ -1213,13 +1210,13 @@ ep3_travel_events.3010 = { option = { name = ep3_travel_events.3010.a flavor = ep3_travel_events.3010.a.flavor - + random_list = { 10 = { send_interface_toast = { title = ep3_travel_events.3010.a_success left_icon = root - add_gold = minor_gold_value + add_gold = minor_gold_value } } 10 = { @@ -1233,7 +1230,7 @@ ep3_travel_events.3010 = { change_development_progress = minimal_development_progress_loss change_county_control = miniscule_county_control_loss } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_gain just = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -1262,7 +1259,7 @@ ep3_travel_events.3010 = { name = ep3_travel_events.3010.b flavor = ep3_travel_events.3010.b.flavor - + duel = { skill = diplomacy value = decent_skill_rating @@ -1284,11 +1281,11 @@ ep3_travel_events.3010 = { } add = 25 } - + send_interface_toast = { title = ep3_travel_events.3010.b_success left_icon = root - + add_diplomacy_lifestyle_xp = miniscule_lifestyle_xp current_travel_plan = { add_companion = scope:anatolian_guide @@ -1301,7 +1298,7 @@ ep3_travel_events.3010 = { limit = { NOT = { scope:anatolian_guide = { is_courtier_of = root } } } - add_courtier = scope:anatolian_guide + add_courtier = scope:anatolian_guide } } } @@ -1319,7 +1316,7 @@ ep3_travel_events.3010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { shy = medium_stress_impact_gain arrogant = minor_stress_impact_gain content = miniscule_stress_impact_gain @@ -1364,14 +1361,14 @@ ep3_travel_events.3010 = { text = ep3_travel_events.3010.c } flavor = ep3_travel_events.3010.c.flavor - + if = { limit = { location = { barony = title:b_kaisereia } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss impatient = minor_stress_impact_gain stubborn = miniscule_stress_impact_gain @@ -1380,7 +1377,7 @@ ep3_travel_events.3010 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss impatient = minor_stress_impact_gain stubborn = miniscule_stress_impact_gain @@ -1388,7 +1385,7 @@ ep3_travel_events.3010 = { wrathful = minor_stress_impact_gain } } - + ai_chance = { base = 100 modifier = { diff --git a/events/dlc/ep3/ep3_travel_events_8.txt b/events/dlc/ep3/ep3_travel_events_8.txt index 08d794167..1d094ea9b 100644 --- a/events/dlc/ep3/ep3_travel_events_8.txt +++ b/events/dlc/ep3/ep3_travel_events_8.txt @@ -192,7 +192,7 @@ ep3_travel_events.8000 = { REASON = friend_let_me_go } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain family_first = minor_stress_impact_gain @@ -235,7 +235,7 @@ ep3_travel_events.8000 = { REASON = friend_let_me_go } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain honest = minor_stress_impact_gain gallant = minor_stress_impact_gain @@ -273,7 +273,7 @@ ep3_travel_events.8000 = { opinion = -10 } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain honest = minor_stress_impact_gain gallant = minor_stress_impact_gain @@ -344,7 +344,7 @@ ep3_travel_events.8001 = { option = { name = ep3_travel_events.8001.a ep3_travel_8000_a = yes - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain family_first = minor_stress_impact_gain @@ -391,7 +391,7 @@ ep3_travel_events.8001 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain honest = minor_stress_impact_gain gallant = minor_stress_impact_gain @@ -494,7 +494,7 @@ ep3_travel_events.8010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { eccentric = medium_stress_impact_gain lazy = minor_stress_impact_gain ambitious = minor_stress_impact_loss @@ -511,7 +511,7 @@ ep3_travel_events.8010 = { # I'm not risking that! option = { name = ep3_travel_events.8010.b - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_loss ambitious = minor_stress_impact_gain } diff --git a/events/dlc/ep3/ep3_wedding_events.txt b/events/dlc/ep3/ep3_wedding_events.txt deleted file mode 100644 index 338604894..000000000 --- a/events/dlc/ep3/ep3_wedding_events.txt +++ /dev/null @@ -1,2616 +0,0 @@ -namespace = ep3_wedding - -################################################## -# #Banquet Phase -# 0001 - 003 Almost the Bride - -################################################## -# Almost the Bride -# by Jason Cantalini -# 0001 -################################################## - -scripted_trigger ep3_wedding_0001_flirter_trigger = { - save_temporary_scope_as = flirter_temp - #Shouldn't get the event multiple times with the same character - trigger_if = { - limit = { - root = { - has_variable = had_ep3_wedding_0001_var - } - } - root = { - var:had_ep3_wedding_0001_var = { - this = scope:flirter_temp - } - } - } - trigger_if = { - limit = { - has_variable = had_ep3_wedding_0001_var - } - var:had_ep3_wedding_0001_var = { - this = root - } - } - is_physically_able_ai_adult = yes - #Needs to be a member of the other family - OR = { - AND = { - root = scope:activity.special_guest:spouse_1 - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_1 - } - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = scope:activity.special_guest:spouse_2 - is_close_family_of = scope:activity.special_guest:spouse_1 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_2 - } - is_close_family_of = scope:activity.special_guest:spouse_1 - } - } - #Either willing to do adultery or not in relationship - might_cheat_on_every_partner_trigger = yes - is_attracted_to_gender_of = root - NOR = { - has_trait = chaste - has_trait = celibate - this = scope:activity.special_guest:spouse_1 - this = scope:activity.special_guest:spouse_2 - } -} - -scripted_trigger ep3_wedding_0001_pervert_trigger = { - OR = { - has_trait = lustful - has_trait = seducer - has_trait = rakish - is_deviant_trigger = yes - has_focus = intrigue_temptation_focus - has_trait = drunkard - has_activity_intent = woo_attendee_intent - } -} - -scripted_trigger ep3_wedding_0001_relative_ages_trigger = { - OR = { - #Both people aren't old - AND = { - age <= 55 - root = { - age <= 55 - } - } - #Both people are old - AND = { - age > 55 - root = { - age > 55 - } - } - #Root is old - AND = { - root = { - age > 55 - } - OR = { - age > 40 - is_deviant_trigger = yes - } - } - #Target is old - AND = { - root = { - OR = { - age > 40 - is_deviant_trigger = yes - } - } - age > 55 - } - } -} - -#A family member of someone getting married is flirting with you -ep3_wedding.0001 = { - type = activity_event - title = ep3_wedding.0001.t - desc = { - desc = ep3_wedding.0001.desc - first_valid = { - triggered_desc = { - trigger = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - desc = ep3_wedding.0001.desc_own_wedding - } - desc = ep3_wedding.0001.desc_guest - } - } - theme = wedding_banquet_activity - left_portrait = { - character = root - triggered_animation = { - trigger = { - drinks_alcohol_trigger = yes - } - animation = wedding_drunk - } - triggered_animation = { - trigger = { - drinks_alcohol_trigger = no - } - animation = admiration - } - } - right_portrait = { - character = scope:flirting_in_law - animation = dancing - } - lower_right_portrait = { - character = scope:other_family_spouse - } - lower_left_portrait = { - character = scope:same_family_spouse - } - - trigger = { - is_adult = yes - is_healthy = yes - #Prevent event happening back to back - NOT = { - has_character_flag = had_ep3_wedding_0001_flag - } - #Either has to be a player or is open to this shizz - might_cheat_on_every_partner_trigger = yes - OR = { - NOR = { - has_trait = chaste - has_trait = celibate - } - is_ai = no - } - OR = { - #Random flirting - scope:activity = { - any_attending_character = { - NOT = { - has_character_flag = had_ep3_wedding_0001 - } - ep3_wedding_0001_flirter_trigger = yes - #At least one person has to be horny - OR = { - ep3_wedding_0001_pervert_trigger = yes - attraction > medium_positive_attraction - root = { attraction > medium_positive_attraction } - root = { ep3_wedding_0001_pervert_trigger = yes } - } - ###incest check - OR = { - NOT = { is_close_family_of = root } - AND = { - ep3_wedding_0001_pervert_trigger = yes - root = { ep3_wedding_0001_pervert_trigger = yes } - } - } - root = { is_attracted_to_gender_of = prev } - NOT = { - attraction < 0 - } - ep3_wedding_0001_relative_ages_trigger = yes - } - } - #Being targeted by wooing - scope:activity = { - any_attending_character = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target = root - is_ai = yes - OR = { - AND = { - root = scope:activity.special_guest:spouse_1 - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_1 - } - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = scope:activity.special_guest:spouse_2 - is_close_family_of = scope:activity.special_guest:spouse_1 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_2 - } - is_close_family_of = scope:activity.special_guest:spouse_1 - } - } - } - } - #Targeting with wooing - AND = { - has_activity_intent = woo_attendee_intent - exists = scope:host.intent_target - scope:host.intent_target = { - ep3_wedding_0001_flirter_trigger = yes - ###incest check - OR = { - NOT = { is_close_family_of = root } - ep3_wedding_0001_pervert_trigger = yes - } - NOR = { - #Root is old - AND = { - root = { - age > 55 - } - OR = { - age < 40 - NOT = { is_deviant_trigger = yes } - } - - } - #Target is old - AND = { - root = { - OR = { - age < 40 - NOT = { is_deviant_trigger = yes } - } - } - age > 55 - } - } - } - } - } - } - - weight_multiplier = { - base = 1 - - # Weight up for pervs - modifier = { - add = 9 - ep3_wedding_0001_pervert_trigger = yes - NOR = { - has_trait = chaste - has_trait = celibate - } - } - modifier = { - add = 4 - OR = { - is_married = no - AND = { - is_male = yes - faith = { has_doctrine = doctrine_adultery_men_accepted } - } - AND = { - is_female = yes - faith = { has_doctrine = doctrine_adultery_women_accepted } - } - } - } - modifier = { - add = 2 - attraction > 0 - } - modifier = { - add = 2 - attraction >= 10 - } - modifier = { - add = 2 - attraction >= 25 - } - modifier = { - add = 2 - any_relation = { type = lover } - } - modifier = { - factor = 0.5 - OR = { - attraction < 0 - has_trait = chaste - has_trait = celibate - has_trait = devoted - AND = { - is_married = yes - ai_honor > medium_positive_ai_value - } - AND = { - is_married = yes - any_spouse = { - has_relation_soulmate = root - } - } - } - } - } - - immediate = { - if = { - limit = { - has_activity_intent = woo_attendee_intent - exists = scope:host.intent_target - scope:host.intent_target = { - ep3_wedding_0001_flirter_trigger = yes - ###incest check - OR = { - NOT = { is_close_family_of = root } - ep3_wedding_0001_pervert_trigger = yes - } - NOR = { - #Root is old - AND = { - root = { - age > 55 - } - OR = { - age < 40 - NOT = { is_deviant_trigger = yes } - } - - } - #Target is old - AND = { - root = { - OR = { - age < 40 - NOT = { is_deviant_trigger = yes } - } - } - age > 55 - } - } - } - } - scope:host.intent_target = { - save_scope_as = flirting_in_law - } - } - else_if = { - limit = { - scope:activity = { - any_attending_character = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target = root - is_ai = yes - OR = { - AND = { - root = scope:activity.special_guest:spouse_1 - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_1 - } - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = scope:activity.special_guest:spouse_2 - is_close_family_of = scope:activity.special_guest:spouse_1 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_2 - } - is_close_family_of = scope:activity.special_guest:spouse_1 - } - } - } - } - } - scope:activity = { - random_attending_character = { - limit = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target = root - is_ai = yes - OR = { - AND = { - root = scope:activity.special_guest:spouse_1 - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_1 - } - is_close_family_of = scope:activity.special_guest:spouse_2 - } - AND = { - root = scope:activity.special_guest:spouse_2 - is_close_family_of = scope:activity.special_guest:spouse_1 - } - AND = { - root = { - is_close_family_of = scope:activity.special_guest:spouse_2 - } - is_close_family_of = scope:activity.special_guest:spouse_1 - } - } - } - save_scope_as = flirting_in_law - } - } - } - else = { - scope:activity = { - random_attending_character = { - limit = { - ep3_wedding_0001_flirter_trigger = yes - NOT = { - has_character_flag = had_ep3_wedding_0001 - } - #At least one person has to be horny - OR = { - ep3_wedding_0001_pervert_trigger = yes - attraction > medium_positive_attraction - root = { attraction > medium_positive_attraction } - root = { ep3_wedding_0001_pervert_trigger = yes } - } - ###incest check - OR = { - NOT = { is_close_family_of = root } - AND = { - ep3_wedding_0001_pervert_trigger = yes - root = { ep3_wedding_0001_pervert_trigger = yes } - } - } - root = { is_attracted_to_gender_of = prev } - NOT = { - attraction < 0 - } - ep3_wedding_0001_relative_ages_trigger = yes - } - save_scope_as = flirting_in_law - } - } - } - scope:flirting_in_law = { - add_character_flag = { - flag = had_ep3_wedding_0001 - months = 3 - } - } - #Save the marrying person you ain't related to - if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_1 - AND = { - is_close_family_of = scope:activity.special_guest:spouse_1 - root != scope:activity.special_guest:spouse_2 - } - - } - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = other_family_spouse - } - } - if = { - limit = { - OR = { - root = scope:activity.special_guest:spouse_2 - AND = { - is_close_family_of = scope:activity.special_guest:spouse_2 - root != scope:activity.special_guest:spouse_1 - } - } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = other_family_spouse - } - } - #If you're not getting married, save the marrying person you're related to - if = { - limit = { - is_close_family_of = scope:activity.special_guest:spouse_1 - NOR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - scope:activity.special_guest:spouse_1 = { - save_scope_as = same_family_spouse - } - } - if = { - limit = { - is_close_family_of = scope:activity.special_guest:spouse_2 - NOR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - scope:activity.special_guest:spouse_2 = { - save_scope_as = same_family_spouse - } - } - set_variable = { - name = had_ep3_wedding_0001_var - value = scope:flirting_in_law - months = 6 - } - add_character_flag = { - flag = had_ep3_wedding_0001_flag - days = 20 - } - } - - # I should really warn my beloved spouse/family member - option = { - name = { - trigger = { - NOR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - text = ep3_wedding.0001.a_non_spouse - } - name = { - trigger = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - text = ep3_wedding.0001.a_spouse - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { - NOR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - desc = ep3_wedding.0001.a.flavor_non_spouse - } - desc = ep3_wedding.0001.a.flavor_spouse - } - } - trigger = { - OR = { - has_relation_friend = scope:other_family_spouse - has_relation_best_friend = scope:other_family_spouse - has_relation_lover = scope:other_family_spouse - has_relation_soulmate = scope:other_family_spouse - has_trait = loyal - has_trait = just - has_trait = honest - } - } - if = { - limit = { - NOT = { has_trait = loyal } - } - random = { - chance = 50 - modifier = { - OR = { - has_trait = honest - has_trait = just - has_trait = chaste - has_trait = compassionate - } - add = 40 - } - modifier = { - OR = { - has_trait = trusting - has_trait = humble - has_trait = content - } - NOR = { - has_trait = honest - has_trait = just - has_trait = chaste - has_trait = compassionate - } - add = 25 - } - modifier = { - OR = { - has_trait = arbitrary - has_trait = deceitful - has_trait = callous - has_trait = fickle - has_trait = lustful - has_trait = arrogant - } - add = -25 - } - add_trait = loyal - } - } - else = { - add_piety = medium_piety_gain - } - if = { - limit = { - NOR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - reverse_add_opinion = { - modifier = loyalty_opinion - target = scope:same_family_spouse - opinion = 20 - } - } - else = { - reverse_add_opinion = { - modifier = love_opinion - target = scope:other_family_spouse - opinion = 20 - } - } - - stress_impact = { - loyal = miniscule_stress_impact_loss - just = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_loss - lustful = major_stress_impact_gain - arbitrary = medium_stress_impact_gain - fickle = medium_stress_impact_gain - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_compassion = 1 - ai_honor = 1 - } - modifier = { - add = 50 - has_relation_soulmate = scope:other_family_spouse - } - modifier = { - add = 50 - any_relation = { type = soulmate } - } - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = arbitrary - has_trait = fickle - has_trait = deceitful - } - } - } - } - - # HORNINESS ACTIVATED - option = { - name = ep3_wedding.0001.b - flavor = ep3_wedding.0001.b.flavor - - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - custom_tooltip = own_wedding_difficulty_tooltip - } - duel = { - skill = intrigue - value = { - value = mediocre_skill_rating - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - add = 7 - } - } - 50 = { #Success. - desc = ep3_wedding.0001.b.success.desc.tt - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 1 - #Fire sexy follow up - trigger_event = ep3_wedding.0002 - show_as_tooltip = { - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - add_intrigue_skill = 1 - add_intrigue_lifestyle_xp = medium_lifestyle_xp - - } - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - } - } - 10 = { #Succeed, but get caught - desc = ep3_wedding.0001.b.caught.desc.tt - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -9 - } - trigger = { - scope:other_family_spouse = { is_ai = yes } - } - min = 2 - modifier = { - add = 10 - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - modifier = { - add = 15 - intrigue <= medium_skill_rating - } - modifier = { - add = 15 - intrigue < average_skill_rating - } - modifier = { - add = 30 - intrigue < low_skill_rating - } - custom_tooltip = ep3_wedding.001.b.got_caught - show_as_tooltip = { - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - } - - #Fire tragically sexy followup - trigger_event = ep3_wedding.0003 - } - 40 = { #Fail. - desc = ep3_wedding.0001.b.fail.desc.tt - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - min = 1 - modifier = { - add = -25 - scope:flirting_in_law = { - opinion = { - target = root - value >= 80 - } - } - } - modifier = { - add = -25 - scope:flirting_in_law = { - opinion = { - target = root - value >= 40 - } - } - } - modifier = { - add = 25 - scope:flirting_in_law = { - opinion = { - target = root - value <= 0 - } - } - } - modifier = { - add = 25 - scope:flirting_in_law = { - opinion = { - target = root - value <= -40 - } - } - } - modifier = { - add = 25 - scope:flirting_in_law = { - opinion = { - target = root - value <= -80 - } - } - } - modifier = { - add = 10 - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - scope:other_family_spouse = { - is_ai = no - } - } - modifier = { - add = 25 - scope:other_family_spouse = { - is_ai = no - } - } - modifier = { - add = 15 - intrigue <= medium_skill_rating - scope:other_family_spouse = { - is_ai = no - } - } - modifier = { - add = 15 - intrigue < average_skill_rating - scope:other_family_spouse = { - is_ai = no - } - } - modifier = { - add = 30 - intrigue < low_skill_rating - scope:other_family_spouse = { - is_ai = no - } - } - - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_wedding.0001.b.fail.desc.tt - left_icon = scope:flirting_in_law - - add_stress = minor_stress_gain - reverse_add_opinion = { - modifier = disrespect_opinion - target = scope:flirting_in_law - opinion = -10 - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - reverse_add_opinion = { - modifier = disrespect_opinion - target = scope:other_family_spouse - opinion = -30 - } - } - } - } - } - - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - stress_impact = { - fickle = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - impatient = minor_stress_impact_loss - chaste = massive_stress_impact_gain - just = massive_stress_impact_gain - patient = major_stress_impact_gain - honest = massive_stress_impact_gain - compassionate = major_stress_impact_gain - shy = minor_stress_impact_gain - } - } - else = { - stress_impact = { - fickle = minor_stress_impact_loss - arrogant = miniscule_stress_impact_loss - impatient = minor_stress_impact_loss - chaste = major_stress_impact_gain - just = medium_stress_impact_gain - honest = medium_stress_impact_gain - shy = minor_stress_impact_gain - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_honor = -1 - } - modifier = { - add = 100 - ep3_wedding_0001_pervert_trigger = yes - } - modifier = { - add = -100 - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - modifier = { - add = -50 - OR = { - has_trait = shy - intrigue <= medium_skill_rating - } - } - modifier = { - factor = 0 - OR = { - has_trait = chaste - has_trait = just - has_trait = honest - intrigue <= low_skill_rating - AND = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - OR = { - has_trait = patient - has_trait = compassionate - } - } - } - } - } - } - - # Just a harmless little dance - option = { - name = ep3_wedding.0001.c - flavor = ep3_wedding.0001.c.flavor - - reverse_add_opinion = { - modifier = friendliness_opinion - target = scope:flirting_in_law - opinion = 30 - } - - stress_impact = { - base = medium_stress_impact_loss - shy = minor_stress_impact_gain - lazy = minor_stress_impact_gain - chaste = minor_stress_impact_gain - } - - ai_chance = { - base = 200 - ai_value_modifier = { - ai_sociability = 1 - ai_honor = 0.5 - } - modifier = { - add = -50 - OR = { - has_trait = shy - has_trait = lazy - has_trait = chaste - } - } - } - } -} - -#You and the member of the marital family have some sex -ep3_wedding.0002 = { - type = activity_event - title = ep3_wedding.0002.t - desc = { - desc = ep3_wedding.0002.intro - first_valid = { - triggered_desc = { - trigger = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - desc = ep3_wedding.0002.own_wedding - } - desc = ep3_wedding.0002.others_wedding - } - first_valid = { - triggered_desc = { - trigger = { - scope:other_family_spouse = { - is_lowborn = yes - } - } - desc = ep3_wedding.0002.lowborn - } - desc = ep3_wedding.0002.highborn - } - } - theme = wedding_banquet_activity - override_background = { - reference = corridor_night - } - center_portrait = { - character = root - animation = schadenfreude - } - right_portrait = { - character = scope:flirting_in_law - animation = dancing - camera = camera_event_very_right - } - lower_right_portrait = { - character = scope:other_family_spouse - } - lower_left_portrait = { - character = scope:same_family_spouse - } - immediate = { - add_character_flag = { - flag = is_naked - days = 30 - } - scope:flirting_in_law = { - add_character_flag = { - flag = is_naked - days = 30 - } - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target ?= scope:flirting_in_law - } - complete_activity_intent = yes - } - if = { - limit = { - scope:flirting_in_law = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target ?= root - } - } - scope:flirting_in_law = { complete_activity_intent = yes } - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - add_intrigue_skill = 1 - add_intrigue_lifestyle_xp = medium_lifestyle_xp - - } - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - } - #Holy shit, you're the one I'm really meant to be with - option = { - name = ep3_wedding.0002.a - flavor = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - desc = ep3_wedding.0002.a.flavor - } - desc = ep3_wedding.0002.a.flavor_non_spouse - } - - } - trigger = { - can_set_relation_soulmate_trigger = { CHARACTER = scope:flirting_in_law } - } - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { #Success - desc = ep3_wedding.0002.a.success.desc.tt - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - add = -10 - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - modifier = { - add = 10 - scope:flirting_in_law = { - OR = { - has_trait = trusting - has_trait = eccentric - has_trait = stubborn - } - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value >= 80 - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value >= 50 - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value > 20 - } - } - send_interface_toast = { - type = event_toast_effect_good - title = ep3_wedding.0002.a.success.desc.tt - left_icon = scope:flirting_in_law - - set_relation_soulmate = { - target = scope:flirting_in_law - reason = soulmate_absconded_during_wedding - } - } - } - 50 = { #They're not into it - desc = ep3_wedding.0002.a.fail.desc.tt - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - add = 20 - scope:flirting_in_law = { - OR = { - has_trait = lustful - has_trait = callous - has_trait = fickle - has_trait = sadistic - has_trait = deceitful - has_trait = arbitrary - has_trait = content - } - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value <= -60 - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value <= -30 - } - } - modifier = { - add = 25 - reverse_opinion = { - target = scope:flirting_in_law - value <= 0 - } - } - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_wedding.0002.a.fail.desc.tt - left_icon = scope:flirting_in_law - - reverse_add_opinion = { - modifier = flattered_opinion - target = scope:flirting_in_law - opinion = 20 - } - - } - } - } - stress_impact = { - lustful = minor_stress_impact_gain - fickle = medium_stress_impact_gain - callous = medium_stress_impact_gain - deceitful = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - ai_boldness = 1 - } - modifier = { - add = -50 - OR = { - has_trait = deceitful - has_trait = arbitrary - } - } - modifier = { - add = 50 - opinion = { - target = scope:flirting_in_law - value >= 50 - } - } - modifier = { - add = -50 - opinion = { - target = scope:flirting_in_law - value < 0 - } - } - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = fickle - has_trait = callous - } - } - } - } - #Let's be lovers - option = { - name = ep3_wedding.0002.b - trigger = { - can_set_relation_lover_trigger = { CHARACTER = scope:flirting_in_law } - } - set_relation_lover = { - target = scope:flirting_in_law - reason = lover_absconded_during_wedding - } - stress_impact = { - lustful = miniscule_stress_impact_loss - fickle = minor_stress_impact_gain - chaste = major_stress_impact_gain - honest = medium_stress_impact_gain - just = medium_stress_impact_gain - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_greed = 1 - ai_energy = 1 - } - modifier = { - add = -50 - has_trait = fickle - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = honest - has_trait = chaste - } - } - modifier = { - add = 50 - opinion = { - target = scope:flirting_in_law - value >= 50 - } - } - modifier = { - add = -50 - opinion = { - target = scope:flirting_in_law - value < 0 - } - } - } - } - #Well that was nice sex... gotta go back now - option = { - name = ep3_wedding.0002.c - if = { - limit = { - scope:flirting_in_law = { - NOR = { - has_trait = lustful - has_trait = callous - has_trait = fickle - has_trait = sadistic - has_trait = deceitful - has_trait = arbitrary - has_trait = content - } - } - } - reverse_add_opinion = { - modifier = angry_opinion - target = scope:flirting_in_law - opinion = -30 - } - } - if = { - limit = { - has_activity_intent = reduce_stress_intent - } - if = { - limit = { - has_trait = lifestyle_reveler - } - add_trait_xp = { - trait = trait:lifestyle_reveler - value = 20 - } - } - else = { - add_trait = lifestyle_reveler - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_boldness = -1 - } - modifier = { - add = -50 - OR = { - has_trait = lustful - has_trait = loyal - has_trait = stubborn - } - } - modifier = { - add = -50 - opinion = { - target = scope:flirting_in_law - value >= 50 - } - } - modifier = { - add = 50 - opinion = { - target = scope:flirting_in_law - value < 0 - } - } - } - } - after = { - remove_character_flag = is_naked - scope:flirting_in_law = { - remove_character_flag = is_naked - } - } -} - -#You are caught having sex with the relative -ep3_wedding.0003 = { - type = activity_event - title = ep3_wedding.0003.t - desc = { - desc = ep3_wedding.0003.desc_intro - first_valid = { - triggered_desc = { - trigger = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - desc = ep3_wedding.0003.desc_own_wedding - } - desc = ep3_wedding.0003.desc_guest - } - } - theme = wedding_banquet_activity - override_background = { - reference = corridor_night - } - left_portrait = { - character = root - animation = stayback - camera = camera_event_very_left - } - center_portrait = { - character = scope:flirting_in_law - triggered_animation = { - trigger = { - OR = { - AND = { - faith_dominant_gender_male_or_equal = yes - is_female = yes - } - AND = { - faith_dominant_gender_male_or_equal = no - is_male = yes - } - } - } - animation = crying - } - triggered_animation = { - trigger = { - OR = { - AND = { - faith_dominant_gender_male_or_equal = yes - is_male = yes - } - AND = { - faith_dominant_gender_male_or_equal = no - is_female = yes - } - } - } - animation = shame - } - } - right_portrait = { - character = scope:other_family_spouse - animation = shock - camera = camera_event_very_right - } - lower_right_portrait = scope:same_family_spouse - immediate = { - add_character_flag = { - flag = is_naked - days = 30 - } - scope:flirting_in_law = { - add_character_flag = { - flag = is_naked - days = 30 - } - } - if = { - limit = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target ?= scope:flirting_in_law - } - complete_activity_intent = yes - } - if = { - limit = { - scope:flirting_in_law = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target ?= root - } - } - scope:flirting_in_law = { complete_activity_intent = yes } - } - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - } - create_character_memory = { - type = wedding_infidelity_spouse - participants = { - in_law = scope:flirting_in_law - other_spouse = scope:other_family_spouse - } - } - scope:flirting_in_law = { - create_character_memory = { - type = wedding_infidelity_kin - participants = { - sex_spouse = root - kin_spouse = scope:other_family_spouse - } - } - } - scope:other_family_spouse = { - create_character_memory = { - type = wedding_infidelity_victim - participants = { - other_spouse = root - in_law = scope:flirting_in_law - } - } - } - } - } - #Join us, it definitely isn't weird - option = { - name = ep3_wedding.0003.a - flavor = ep3_wedding.0003.a.flavor - trigger = { - #other family spouse is either attracted to root or their own family member - scope:other_family_spouse = { - NOR = { - has_trait = chaste - has_trait = celibate - } - } - OR = { - AND = { - #attracted to root - OR = { - has_trait = seducer - attraction > 0 - scope:other_family_spouse = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target = root - } - has_relation_lover = scope:other_family_spouse - scope:other_family_spouse = { - opinion = { - target = root - value >= 80 - } - } - } - scope:other_family_spouse = { - is_attracted_to_gender_of = root - ep3_wedding_0001_relative_ages_trigger = yes - } - } - AND = { - #attracted to own family member - scope:flirting_in_law = { - OR = { - has_trait = seducer - attraction > 0 - scope:other_family_spouse = { - has_activity_intent = woo_attendee_intent - scope:host.intent_target = scope:flirting_in_law - } - has_relation_lover = scope:other_family_spouse - scope:other_family_spouse = { - opinion = { - target = scope:flirting_in_law - value >= 80 - } - } - } - scope:other_family_spouse = { - is_attracted_to_gender_of = scope:flirting_in_law - OR = { - #Both people aren't old - AND = { - age <= 55 - scope:flirting_in_law = { - age <= 55 - } - } - #Both people are old - AND = { - age > 55 - scope:flirting_in_law = { - age > 55 - } - } - #Root is old - AND = { - scope:flirting_in_law = { - age > 55 - } - OR = { - age > 40 - is_deviant_trigger = yes - } - } - #Target is old - AND = { - scope:flirting_in_law = { - OR = { - age > 40 - is_deviant_trigger = yes - } - } - age > 55 - } - } - } - } - } - } - #Down to rashly do incest - scope:other_family_spouse = { - OR = { - is_incestuous_trigger = yes - is_deviant_trigger = yes - NOT = { - trait_is_shunned_or_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = scope:other_family_spouse.faith GENDER_CHARACTER = scope:other_family_spouse } - } - has_trait = lustful - has_trait = drunkard - #Will overlook scruples if root is really hot or persuasive - root = { - OR = { - has_trait = seducer - has_relation_lover = scope:other_family_spouse - has_trait = beauty_good_3 - attraction >= 30 - reverse_opinion = { - target = scope:other_family_spouse - value >= 100 - } - } - } - } - } - - #in law is down to rashly do incest - scope:flirting_in_law = { - OR = { - is_incestuous_trigger = yes - is_deviant_trigger = yes - NOT = { - trait_is_shunned_or_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = scope:flirting_in_law.faith GENDER_CHARACTER = scope:flirting_in_law } - } - has_trait = lustful - has_trait = drunkard - #Will overlook scruples if root is really hot or persuasive - root = { - OR = { - has_trait = seducer - has_relation_lover = scope:flirting_in_law - has_trait = beauty_good_3 - attraction >= 30 - reverse_opinion = { - target = scope:flirting_in_law - value >= 100 - } - } - } - } - } - } - add_internal_flag = special - if = { - limit = { - scope:other_family_spouse = { - is_attracted_to_gender_of = root - } - is_attracted_to_gender_of = scope:other_family_spouse - } - had_sex_with_effect = { - CHARACTER = scope:other_family_spouse - PREGNANCY_CHANCE = pregnancy_chance - } - } - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - - if = { - limit = { - scope:flirting_in_law = { - is_attracted_to_gender_of = scope:other_family_spouse - } - scope:other_family_spouse = { - is_attracted_to_gender_of = scope:flirting_in_law - } - } - scope:other_family_spouse = { - had_sex_with_effect = { - CHARACTER = scope:flirting_in_law - PREGNANCY_CHANCE = pregnancy_chance - } - } - } - if = { - limit = { - can_set_relation_lover_trigger = { CHARACTER = scope:flirting_in_law } - scope:flirting_in_law = { - is_attracted_to_gender_of = root - } - is_attracted_to_gender_of = scope:flirting_in_law - } - set_relation_lover = { - target = scope:flirting_in_law - reason = lover_absconded_during_wedding - } - } - if = { - limit = { - can_set_relation_lover_trigger = { CHARACTER = scope:other_family_spouse } - scope:other_family_spouse = { - is_attracted_to_gender_of = root - } - is_attracted_to_gender_of = scope:other_family_spouse - } - set_relation_lover = { - target = scope:other_family_spouse - reason = lover_incestuous_wedding_threesome - } - } - - if = { - limit = { - NOT = { - has_trait = lifestyle_reveler - } - } - add_trait = lifestyle_reveler - } - else = { - add_trait_xp = { - trait = lifestyle_reveler - value = 50 - } - } - if = { - limit = { - NOT = { - has_trait = seducer - } - } - add_trait = seducer - } - else = { - add_diplomacy_skill = 1 - } - stress_impact = { - chaste = major_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 300 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 0.5 - } - modifier = { - add = -250 - NOR = { - is_deviant_trigger = yes - is_incestuous_trigger = yes - has_trait = lustful - has_trait = drunkard - } - } - modifier = { - factor = 0 - OR = { - has_trait = chaste - #attracted to root - NOT = { is_attracted_to_gender_of = scope:other_family_spouse } - NOR = { - #Both people aren't old - AND = { - age <= 55 - scope:other_family_spouse = { - age <= 55 - } - } - #Both people are old - AND = { - age > 55 - scope:other_family_spouse = { - age > 55 - } - } - #Root is old - AND = { - scope:other_family_spouse = { - age > 55 - } - OR = { - age > 40 - is_deviant_trigger = yes - } - } - #Target is old - AND = { - scope:other_family_spouse = { - OR = { - age > 40 - is_deviant_trigger = yes - } - } - age > 55 - } - } - } - } - } - } - - #We will never speak of this again... or else - option = { - name = ep3_wedding.0003.b - trigger = { - OR = { - dread >= 80 - has_trait = torturer - scope:other_family_spouse = { - has_dread_level_towards = { - target = root - level >= 1 - } - } - } - } - scope:other_family_spouse = { - add_stress = major_stress_impact_gain - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - NOR = { - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_men_accepted - } - is_male = yes - } - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_women_accepted - } - is_female = yes - } - } - } - scope:other_family_spouse = { - add_opinion = { - modifier = cheater_opinion - target = root - opinion = -100 - } - } - } - else = { - scope:other_family_spouse = { - add_opinion = { - modifier = threatened_opinion - target = root - opinion = -25 - } - } - } - if = { - limit = { - has_relation_soulmate = scope:other_family_spouse - } - remove_relation_soulmate = scope:other_family_spouse - } - stress_impact = { - compassionate = major_stress_impact_gain - forgiving = medium_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_compassion = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = trusting - } - } - } - } - - #AN EVIL SPIRIT CAME OVER ME OR SOMETHING - option = { - name = ep3_wedding.0003.c - flavor = ep3_wedding.0003.c.flavor - trigger = { - OR = { - has_trait = possessed - has_trait = lunatic - has_trait = witch - has_trait = lifestyle_mystic - has_trait = deceitful - has_trait = schemer - has_trait = arbitrary - has_trait = zealous - has_trait = eccentric - } - } - duel = { - skills = { diplomacy intrigue } - target = scope:other_family_spouse - 50 = { #They agree not to speak of this horrible affliction - desc = ep3_wedding.0003.c.success.desc - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - add = 20 - has_trait = possessed - } - modifier = { - add = 20 - has_trait = lunatic - } - modifier = { - add = 20 - has_trait = witch - } - modifier = { - add = 20 - has_trait = lifestyle_mystic - } - modifier = { - add = 10 - reverse_opinion = { - target = scope:other_family_spouse - value >= 80 - } - } - modifier = { - add = 10 - reverse_opinion = { - target = scope:other_family_spouse - value >= 50 - } - } - modifier = { - add = 10 - reverse_opinion = { - target = scope:other_family_spouse - value > 25 - } - } - modifier = { - add = 50 - scope:other_family_spouse = { - OR = { - has_trait = zealous - has_trait = trusting - has_trait = eccentric - } - } - } - modifier = { - add = 25 - scope:other_family_spouse = { - OR = { - has_trait = forgiving - has_trait = lifestyle_mystic - has_trait = witch - has_trait = possessed - has_trait = lunatic - } - } - } - send_interface_toast = { - type = event_toast_effect_good - title = ep3_wedding.0003.c.success.desc - left_icon = scope:other_family_spouse - - if = { - limit = { - has_trait = lifestyle_mystic - } - add_trait_xp = { - trait = trait:lifestyle_mystic - value = 25 - } - } - add_character_modifier = { - modifier = possessed_by_lust_demon_modifier - years = 10 - desc = lust_demon_success_chance - } - custom_tooltip = lust_demon_success_chance_tt - hidden_effect = { - if = { - limit = { - scope:flirting_in_law = { - is_female = yes - age <= 45 - is_pregnant = no - } - is_male = yes - } - scope:flirting_in_law = { - make_pregnant = { - father = root - number_of_children = 1 - } - } - } - else_if = { - limit = { - is_female = yes - age <= 45 - is_pregnant = no - scope:flirting_in_law = { - is_male = yes - } - } - make_pregnant = { - father = scope:flirting_in_law - number_of_children = 3 - } - } - } - } - } - 50 = { #They don't buy this bullshit - desc = ep3_wedding.0003.c.fail.desc - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - add = 20 - scope:other_family_spouse = { - OR = { - has_trait = lustful - has_trait = paranoid - has_trait = sadistic - has_trait = deceitful - has_trait = schemer - } - } - } - modifier = { - add = 20 - reverse_opinion = { - target = scope:other_family_spouse - value <= -60 - } - } - modifier = { - add = 20 - reverse_opinion = { - target = scope:other_family_spouse - value <= -30 - } - } - modifier = { - add = 10 - reverse_opinion = { - target = scope:other_family_spouse - value <= 0 - } - } - modifier = { - add = 50 - scope:other_family_spouse = { - OR = { - has_trait = cynical - has_trait = vengeful - } - } - } - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_wedding.0003.c.fail.desc - left_icon = scope:other_family_spouse - - if = { - limit = { - scope:other_family_spouse = { - can_add_hook = { - target = root - type = manipulation_hook - } - } - } - scope:other_family_spouse = { - add_hook = { - type = manipulation_hook - target = root - } - } - } - if = { - limit = { - scope:other_family_spouse = { - can_add_hook = { - target = scope:flirting_in_law - type = manipulation_hook - } - } - } - scope:other_family_spouse = { - add_hook = { - type = manipulation_hook - target = scope:flirting_in_law - } - } - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - NOR = { - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_men_accepted - } - is_male = yes - } - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_women_accepted - } - is_female = yes - } - } - } - scope:other_family_spouse = { - add_opinion = { - modifier = cheater_opinion - target = root - opinion = -100 - } - } - } - else = { - scope:other_family_spouse = { - add_opinion = { - modifier = angry_opinion - target = root - opinion = -25 - } - } - } - add_piety = major_piety_loss - } - - } - } - if = { - limit = { - has_relation_soulmate = scope:other_family_spouse - } - remove_relation_soulmate = scope:other_family_spouse - } - stress_impact = { - zealous = minor_stress_impact_gain - just = medium_stress_impact_gain - honest = major_stress_impact_gain - - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_honor = -1 - ai_zeal = -0.5 - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = honest - diplomacy < low_skill_rating - intrigue < low_skill_rating - AND = { - diplomacy < mediocre_skill_rating - intrigue < mediocre_skill_rating - } - } - } - modifier = { - add = -100 - OR = { - diplomacy < mediocre_skill_rating - intrigue < mediocre_skill_rating - AND = { - diplomacy < medium_skill_rating - intrigue < medium_skill_rating - } - } - } - modifier = { - add = 100 - OR = { - has_trait = lunatic - has_trait = possessed - has_trait = lifestyle_mystic - } - } - } - } - #I don't even care, this just makes me look cool - option = { - name = ep3_wedding.0003.d - flavor = ep3_wedding.0003.d.flavor - if = { - limit = { - NOT = { - has_trait = lifestyle_reveler - } - } - add_trait = lifestyle_reveler - } - else = { - add_trait_xp = { - trait = lifestyle_reveler - value = 25 - } - } - add_character_modifier = { - modifier = unflappable_boudoir_confidence_modifier - years = 10 - } - if = { - limit = { - is_male = yes - scope:flirting_in_law = { - is_male = yes - } - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:sodomite - GENDER_CHARACTER = root - FAITH = root.faith - } - NOT = { has_trait = sodomite } - } - add_trait = sodomite - } - if = { - limit = { - relation_with_character_is_incestuous_in_my_or_lieges_faith_trigger = { CHARACTER = scope:flirting_in_law } - NOT = { has_trait = incestuous } - } - add_trait = incestuous - } - if = { - limit = { - is_married = yes - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:adulterer - GENDER_CHARACTER = root - FAITH = root.faith - } - NOT = { has_trait = adulterer } - } - add_trait = adulterer - } - if = { - limit = { - is_married = no - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:fornicator - GENDER_CHARACTER = root - FAITH = root.faith - } - NOT = { has_trait = fornicator } - } - add_trait = fornicator - } - if = { - limit = { - scope:flirting_in_law = { - is_married = yes - } - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:adulterer - GENDER_CHARACTER = scope:flirting_in_law - FAITH = scope:flirting_in_law.faith - } - scope:flirting_in_law = { - NOT = { has_trait = adulterer } - } - } - scope:flirting_in_law = { add_trait = adulterer } - } - if = { - limit = { - scope:flirting_in_law = { - is_married = no - } - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:fornicator - GENDER_CHARACTER = scope:flirting_in_law - FAITH = scope:flirting_in_law.faith - } - scope:flirting_in_law = { - NOT = { has_trait = fornicator } - } - } - scope:flirting_in_law = { add_trait = fornicator } - } - if = { - limit = { - is_male = yes - scope:flirting_in_law = { - is_male = yes - } - trait_is_shunned_or_criminal_in_faith_trigger = { - TRAIT = trait:sodomite - GENDER_CHARACTER = scope:flirting_in_law - FAITH = scope:flirting_in_law.faith - } - scope:flirting_in_law = { - NOT = { has_trait = sodomite } - } - } - scope:flirting_in_law = { add_trait = sodomite } - } - if = { - limit = { - scope:flirting_in_law = { - relation_with_character_is_incestuous_in_my_or_lieges_faith_trigger = { CHARACTER = root } - NOT = { has_trait = incestuous } - } - } - scope:flirting_in_law = { add_trait = incestuous } - } - if = { - limit = { - OR = { - this = scope:activity.special_guest:spouse_2 - this = scope:activity.special_guest:spouse_1 - } - NOR = { - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_men_accepted - } - is_male = yes - } - AND = { - scope:other_family_spouse.faith = { - has_doctrine = doctrine_adultery_women_accepted - } - is_female = yes - } - } - } - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:other_family_spouse } - } - scope:other_family_spouse = { - set_relation_rival = { - target = root - reason = rival_wedding_infidelity - } - } - } - else_if = { - limit = { - can_set_relation_nemesis_trigger = { CHARACTER = scope:other_family_spouse } - } - scope:other_family_spouse = { - set_relation_nemesis = { - target = root - reason = rival_wedding_infidelity - } - } - } - } - else = { - scope:other_family_spouse = { - add_opinion = { - modifier = angry_opinion - target = root - opinion = -25 - } - } - } - if = { - limit = { - scope:flirting_in_law = { - OR = { - is_married = yes - is_concubine = yes - } - } - } - scope:flirting_in_law = { - every_consort = { - limit = { - this != root - NOR = { - AND = { - faith = { - has_doctrine = doctrine_adultery_men_accepted - } - scope:flirting_in_law = { - is_male = yes - } - } - AND = { - faith = { - has_doctrine = doctrine_adultery_women_accepted - } - scope:flirting_in_law = { - is_female = yes - } - } - } - } - add_opinion = { - modifier = cheater_opinion - target = scope:flirting_in_law - opinion = -100 - } - } - } - } - if = { - limit = { - has_relation_soulmate = scope:other_family_spouse - } - remove_relation_soulmate = scope:other_family_spouse - } - stress_impact = { - paranoid = minor_stress_impact_gain - just = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_boldness = 1 - } - modifier = { - add = -75 - OR = { - AND = { - faith = { - has_doctrine = doctrine_adultery_men_shunned - } - is_male = yes - } - AND = { - faith = { - has_doctrine = doctrine_adultery_women_shunned - } - is_female = yes - } - } - } - modifier = { - factor = 0 - OR = { - has_trait = just - AND = { - faith = { - has_doctrine = doctrine_adultery_men_crime - } - is_male = yes - } - AND = { - faith = { - has_doctrine = doctrine_adultery_women_crime - } - is_female = yes - } - } - } - } - } - #I'm sorry!!! Please don't tell anyone!!! - option = { - name = ep3_wedding.0003.e - flavor = ep3_wedding.0003.e.flavor - if = { - limit = { - scope:other_family_spouse = { - can_add_hook = { - target = root - type = manipulation_hook - } - } - } - scope:other_family_spouse = { - add_hook = { - type = manipulation_hook - target = root - } - } - } - if = { - limit = { - scope:other_family_spouse = { - can_add_hook = { - target = scope:flirting_in_law - type = manipulation_hook - } - } - } - scope:other_family_spouse = { - add_hook = { - type = manipulation_hook - target = scope:flirting_in_law - } - } - } - scope:other_family_spouse = { - add_opinion = { - modifier = angry_opinion - target = root - opinion = -75 - } - } - if = { - limit = { - has_relation_soulmate = scope:other_family_spouse - } - remove_relation_soulmate = scope:other_family_spouse - } - stress_impact = { - arrogant = medium_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_boldness = -0.5 - ai_honor = 0.5 - } - modifier = { - factor = 0 - has_trait = arrogant - } - } - } - after = { - remove_character_flag = is_naked - scope:flirting_in_law = { - remove_character_flag = is_naked - } - } -} diff --git a/events/dlc/ep3/ep3_yearly_1.txt b/events/dlc/ep3/ep3_yearly_1.txt deleted file mode 100644 index 01a60ac14..000000000 --- a/events/dlc/ep3/ep3_yearly_1.txt +++ /dev/null @@ -1,267 +0,0 @@ -namespace = ep3_yearly - -scripted_effect transfer_warhorse_story_effect = { - $OWNER$ = { - random_owned_story = { - type = story_cycle_martial_lifestyle_warhorse - make_story_owner = $TARGET$ - } - } - $TARGET$ = { - add_character_modifier = { modifier = horse_story_modifier } - add_character_flag = had_warhorse_story - set_variable = { - name = warhorse_modifier_level - value = $OWNER$.var:warhorse_modifier_level - } - } - $OWNER$ = { - hidden_effect = { - remove_character_modifier = horse_story_modifier - remove_variable = warhorse_modifier_level - } - } -} - -# Jealous of another governor with the Warhorse event chain -ep3_yearly.1010 = { - type = character_event - title = ep3_yearly.1010.t - desc = { - desc = ep3_yearly.1010.intro - triggered_desc = { - trigger = { culture = { has_cultural_pillar = heritage_greek }} - desc = ep3_yearly.1010.greek_flavor - } - desc = ep3_yearly.1010.outro - } - theme = administrative - override_background = { reference = courtyard } - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:horse_owner - animation = jockey_walk - camera = camera_event_horse_right - } - lower_left_portrait = cp:councillor_spymaster - - trigger = { - is_ai = no - is_governor = yes - NOT = { owns_story_of_type = story_cycle_martial_lifestyle_warhorse } - liege = { - any_vassal = { - this != root - is_available_ai_adult = yes - is_governor = yes - any_owned_story = { - type = story_cycle_martial_lifestyle_warhorse - exists = var:horse_gender - exists = var:story_cycle_horse_name - } - } - } - } - - immediate = { - liege = { - random_vassal = { - limit = { - this != root - is_available_ai_adult = yes - owns_story_of_type = story_cycle_martial_lifestyle_warhorse - } - save_scope_as = horse_owner - } - } - cp:councillor_spymaster ?= { save_scope_as = spymaster } - } - - option = { # Offer to buy the horse - name = ep3_yearly.1010.a - show_as_unavailable = { - gold >= 75 - } - random_list = { - 50 = { - show_chance = no - desc = ep3_yearly.1010.a.tt.success - send_interface_toast = { - type = event_toast_effect_good - title = ep3_yearly.1010.a.tt.success - left_icon = root - right_icon = scope:horse_owner - remove_short_term_gold = major_gold_value - custom_tooltip = ep3_yearly.1010.tt - transfer_warhorse_story_effect = { - OWNER = scope:horse_owner - TARGET = root - } - } - } - 50 = { - show_chance = no - desc = ep3_yearly.1010.a.tt.failure - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_yearly.1010.a.tt.failure - left_icon = root - right_icon = scope:horse_owner - change_influence = medium_influence_loss - add_prestige = medium_prestige_loss - } - } - } - } - - option = { # Convince the governor that you deserve the horse because of your influence - name = ep3_yearly.1010.b - change_influence = massive_influence_loss - if = { - limit = { influence_level >= 3 } - transfer_warhorse_story_effect = { - OWNER = scope:horse_owner - TARGET = root - } - } - else = { - duel = { - skill = diplomacy - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep3_yearly.1010.b.tt.success - send_interface_toast = { - type = event_toast_effect_good - title = ep3_yearly.1010.b.tt.success - left_icon = root - right_icon = scope:horse_owner - custom_tooltip = ep3_yearly.1010.tt - transfer_warhorse_story_effect = { - OWNER = scope:horse_owner - TARGET = root - } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep3_yearly.1010.b.tt.failure - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_yearly.1010.b.tt.failure - left_icon = root - right_icon = scope:horse_owner - } - } - } - } - } - - option = { # Ask your spymaster to steal the horse for you - trigger = { exists = cp:councillor_spymaster } - name = ep3_yearly.1010.c - flavor = ep3_yearly.1010.c.flavor - cp:councillor_spymaster = { - duel = { - skill = intrigue - value = scope:horse_owner.intrigue - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = ep3_yearly.1010.c.tt.success - root = { - send_interface_toast = { - type = event_toast_effect_good - title = ep3_yearly.1010.c.tt.success - left_icon = root - right_icon = scope:horse_owner - custom_tooltip = ep3_yearly.1010.tt - transfer_warhorse_story_effect = { - OWNER = scope:horse_owner - TARGET = root - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - } - } - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = ep3_yearly.1010.c.tt.failure - root = { - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_yearly.1010.c.tt.failure - left_icon = root - right_icon = scope:horse_owner - progress_towards_rival_effect = { - REASON = rival_lands_stolen - CHARACTER = scope:horse_owner - OPINION = default_rival_opinion - } - } - } - } - } - } - } - - option = { # If I can't have it, neither can you - name = ep3_yearly.1010.d - flavor = ep3_yearly.1010.d.tt - random_list = { - 50 = { - desc = ep3_yearly.1010.d.success - send_interface_toast = { - type = event_toast_effect_good - title = ep3_yearly.1010.d.success - custom_tooltip = ep3_yearly.1010.d.dead_horse - scope:horse_owner = { - random_owned_story = { - type = story_cycle_martial_lifestyle_warhorse - end_story = yes - } - } - } - } - 50 = { - desc = ep3_yearly.1010.d.failure - send_interface_toast = { - type = event_toast_effect_bad - title = ep3_yearly.1010.d.failure - custom_tooltip = ep3_yearly.1010.d.dead_horse - scope:horse_owner = { - random_owned_story = { - type = story_cycle_martial_lifestyle_warhorse - end_story = yes - } - } - progress_towards_rival_effect = { - REASON = rival_lands_stolen - CHARACTER = scope:horse_owner - OPINION = default_rival_opinion - } - } - } - } - } -} diff --git a/events/dlc/ep3/ep3_yearly_3.txt b/events/dlc/ep3/ep3_yearly_3.txt deleted file mode 100644 index 91bbd38c7..000000000 --- a/events/dlc/ep3/ep3_yearly_3.txt +++ /dev/null @@ -1,9 +0,0 @@ -namespace = ep3_yearly - -ep3_yearly.3000 = { - hidden = yes - - immediate = { - ep3_ai_castration_effect = yes - } -} diff --git a/events/dlc/fp1/fp1_jomsvikings_events.txt b/events/dlc/fp1/fp1_jomsvikings_events.txt index bc0505d97..215e4d99a 100644 --- a/events/dlc/fp1/fp1_jomsvikings_events.txt +++ b/events/dlc/fp1/fp1_jomsvikings_events.txt @@ -473,7 +473,7 @@ fp1_jomsvikings.0001 = { scope:leader = { add_courtier = scope:retainer_b } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss zealous = medium_stress_impact_loss paranoid = medium_stress_impact_gain @@ -517,7 +517,7 @@ fp1_jomsvikings.0001 = { scope:leader = { add_courtier = scope:retainer_a } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss zealous = medium_stress_impact_loss paranoid = medium_stress_impact_gain @@ -578,7 +578,7 @@ fp1_jomsvikings.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss cynical = major_stress_impact_loss trusting = minor_stress_impact_gain @@ -950,7 +950,7 @@ fp1_jomsvikings.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss arrogant = medium_stress_impact_loss vengeful = major_stress_impact_loss @@ -1038,7 +1038,7 @@ fp1_jomsvikings.0011 = { # Lose control, but not that much. scope:target_county = { change_county_control = medium_county_control_loss } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss forgiving = minor_stress_impact_loss greedy = major_stress_impact_gain @@ -1090,7 +1090,7 @@ fp1_jomsvikings.0011 = { value = medium_treasury_or_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss forgiving = minor_stress_impact_loss greedy = major_stress_impact_gain @@ -1130,7 +1130,7 @@ fp1_jomsvikings.0011 = { # Reduce control. scope:target_county = { change_county_control = extreme_county_control_loss } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_loss callous = medium_stress_impact_loss sadistic = medium_stress_impact_loss @@ -1240,7 +1240,7 @@ fp1_jomsvikings.0021 = { name = fp1_jomsvikings_event_troops } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss zealous = medium_stress_impact_loss content = medium_stress_impact_gain @@ -1291,7 +1291,7 @@ fp1_jomsvikings.0021 = { name = fp1_jomsvikings_event_troops } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss zealous = medium_stress_impact_loss content = medium_stress_impact_gain @@ -1345,7 +1345,7 @@ fp1_jomsvikings.0021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss cynical = major_stress_impact_loss trusting = minor_stress_impact_gain @@ -1467,38 +1467,38 @@ fp1_jomsvikings.0041 = { ## Kinslayer. AND = { has_trait = kinslayer_1 - faith = { has_doctrine_parameter = kinslaying_any_dynasty_member_crime } + rite = { rite_has_parameter = kinslaying_any_dynasty_member_crime } } AND = { has_trait = kinslayer_2 - faith = { has_doctrine_parameter = kinslaying_extended_family_crime } + rite = { rite_has_parameter = kinslaying_extended_family_crime } } AND = { has_trait = kinslayer_3 - faith = { has_doctrine_parameter = kinslaying_close_kin_crime } + rite = { rite_has_parameter = kinslaying_close_kin_crime } } ## Deviant. AND = { has_trait = deviant - faith = { has_doctrine_parameter = deviancy_illegal } + rite = { rite_has_parameter = deviancy_illegal } } ## Cannibal. AND = { has_trait = cannibal NOT = { - faith = { has_doctrine_parameter = cannibalism_legal } + rite = { rite_has_parameter = cannibalism_legal } } } ## Sodomite. AND = { has_trait = sodomite - faith = { has_doctrine_parameter = homosexuality_illegal } + rite = { rite_has_parameter = homosexuality_illegal } } ## Incestuous. AND = { has_trait = incestuous NOT = { - faith = { has_doctrine_parameter = consanguinity_unrestricted_incest } + rite = { rite_has_parameter = allows_unrestricted_marriage } } } ## Adulterer/Fornicator @@ -1507,8 +1507,8 @@ fp1_jomsvikings.0041 = { has_trait = adulterer has_trait = fornicator } - trait_is_criminal_in_faith_trigger = { - FAITH = faith + trait_is_criminal_in_rite_trigger = { + RITE = rite TRAIT = trait:adulterer GENDER_CHARACTER = this } @@ -1518,7 +1518,7 @@ fp1_jomsvikings.0041 = { ## Witch. AND = { has_trait = witch - faith = { has_doctrine_parameter = witchcraft_illegal } + rite = { rite_has_parameter = witchcraft_illegal } } } } @@ -1631,7 +1631,7 @@ fp1_jomsvikings.0041 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss brave = major_stress_impact_loss craven = major_stress_impact_gain @@ -1746,7 +1746,7 @@ fp1_jomsvikings.0041 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss arbitrary = major_stress_impact_loss forgiving = medium_stress_impact_gain @@ -1825,7 +1825,7 @@ fp1_jomsvikings.0041 = { add_prestige_level = -1 add_prestige = massive_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss arrogant = minor_stress_impact_gain brave = major_stress_impact_gain @@ -1962,7 +1962,7 @@ fp1_jomsvikings.0044 = { # Get a decent tyranny reduction for your troubles. add_tyranny = massive_tyranny_loss - stress_impact = { + stress_and_fulfillment_impact = { deceitful = major_stress_impact_loss arbitrary = major_stress_impact_loss honest = major_stress_impact_gain @@ -2005,7 +2005,7 @@ fp1_jomsvikings.0044 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_loss zealous = major_stress_impact_gain } diff --git a/events/dlc/fp1/fp1_major_decision_events.txt b/events/dlc/fp1/fp1_major_decision_events.txt index 301a74d69..2bfc7d703 100644 --- a/events/dlc/fp1/fp1_major_decision_events.txt +++ b/events/dlc/fp1/fp1_major_decision_events.txt @@ -580,7 +580,7 @@ fp1_major_decisions.0031 = { # Get your bonus troops. forge_the_jomsvikings_maa_reward_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { # Usually bad form to give stress impact on single event options, but if you're cynical and taking this option, you *know* you're doing it for purely cynical reasons. zealous = massive_stress_impact_loss cynical = medium_stress_impact_gain @@ -713,7 +713,7 @@ fp1_major_decisions.0033 = { show_as_tooltip = { scope:founder.faith = { change_fervor = { - value = 10 + value = significant_fervor_gain desc = fervor_gain_holy_order_founded } } @@ -898,7 +898,7 @@ fp1_major_decisions.1001 = { custom_tooltip = fp1_major_decisions.1001.a.tt trigger_event = fp1_major_decisions.1002 - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_loss paranoid = major_stress_impact_loss honest = major_stress_impact_loss @@ -931,7 +931,7 @@ fp1_major_decisions.1001 = { # Gain some very minor stress loss for opting out. ## Stress loss handled in stress_impact. - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss vengeful = minor_stress_impact_gain impatient = minor_stress_impact_gain @@ -1041,7 +1041,7 @@ fp1_major_decisions.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_loss humble = major_stress_impact_loss } @@ -1079,7 +1079,7 @@ fp1_major_decisions.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_loss zealous = massive_stress_impact_loss } @@ -1114,7 +1114,7 @@ fp1_major_decisions.1002 = { has_character_modifier = high_queen_of_the_seas_fp1_modifier } } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_gain paranoid = major_stress_impact_loss honest = major_stress_impact_gain @@ -1122,7 +1122,7 @@ fp1_major_decisions.1002 = { } ## Ordinary stress otherwise. else = { - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_loss honest = major_stress_impact_gain } @@ -1173,7 +1173,7 @@ fp1_major_decisions.1002 = { # The court is confused and afraid. fp1_major_decisions_1002_courtiers_terrified_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_loss forgiving = minor_stress_impact_gain } @@ -1207,7 +1207,7 @@ fp1_major_decisions.1002 = { # The court is confused and afraid. fp1_major_decisions_1002_courtiers_terrified_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_loss craven = medium_stress_impact_gain zealous = medium_stress_impact_gain diff --git a/events/dlc/fp1/fp1_other_decision_events.txt b/events/dlc/fp1/fp1_other_decision_events.txt index 8efcd8b90..e5a09d035 100644 --- a/events/dlc/fp1/fp1_other_decision_events.txt +++ b/events/dlc/fp1/fp1_other_decision_events.txt @@ -227,7 +227,7 @@ fp1_other_decisions.0003 = { } right_portrait = { character = scope:unlucky_guest - animation = fear + animation = dead } override_background = { reference = temple } @@ -253,6 +253,8 @@ fp1_other_decisions.0003 = { # Get the party (audibly) started. play_music_cue = "mx_cue_banquet" + scope:blotter.faith.religious_head ?= { save_scope_as = blotter_hof } + # Is it somebody specific's death day? if = { limit = { @@ -357,8 +359,7 @@ fp1_other_decisions.0003 = { } every_in_list = { variable = gf_guests_rejecting_invite_list - # TIT-25457 - remove_from_list = happified_title_subjects_list + remove_from_list = happified_character_subjects_list } } # Set up var:gf_faith for custom loc to work; not used in strictly every permutation, but doesn't really need an if gate on it. @@ -380,49 +381,49 @@ fp1_other_decisions.0003 = { add_piety = var:gf_piety_value remove_variable = gf_piety_value } - } - ## Big RIP, scope:unlucky_guest. - if = { - limit = { exists = scope:unlucky_guest } - # Sort opinions and kinslaying. - add_kinslayer_trait_or_nothing_effect = { VICTIM = scope:unlucky_guest} - execute_opinion_effect = { - VICTIM = scope:unlucky_guest - EXECUTIONER = scope:blotter - } - # Are you HumSac'ing the HoF of a faith that doesn't practice HumSac? - ## We hide this, since it's too late for you to do anything about now and it's more fun/terrifying to find out about it *after* the sacrifice. - hidden_effect = { - humsacd_a_hof_effect = { - SACRIFICER = scope:blotter - SACRIFICED_HOF = scope:unlucky_guest - } - } - ## And are you actually humsac'ing your *OWN* HoF? + ## Big RIP, scope:unlucky_guest. if = { - limit = { scope:blotter.faith.religious_head = scope:unlucky_guest } - # Inform players that they're an abysmal, abysmal faith adherent. - every_player = { - limit = { - this != scope:blotter - faith = scope:unlucky_guest.faith + limit = { exists = scope:unlucky_guest } + # Sort opinions and kinslaying. + add_kinslayer_trait_or_nothing_effect = { VICTIM = scope:unlucky_guest } + execute_opinion_effect = { + VICTIM = scope:unlucky_guest + EXECUTIONER = scope:blotter + } + # Are you HumSac'ing the HoF of a faith that doesn't practice HumSac? + ## We hide this, since it's too late for you to do anything about now and it's more fun/terrifying to find out about it *after* the sacrifice. + hidden_effect = { + humsacd_a_hof_effect = { + SACRIFICER = scope:blotter + SACRIFICED_HOF = scope:unlucky_guest } - trigger_event = fp1_other_decisions.0023 } - # Update scope:blotter's HumSac'd HoFs kill tally manually, since we're not going through the usual effect. - add_to_variable_list = { - name = humsacd_hofs - target = scope:unlucky_guest.faith - } - # And tell scope:blotter they dun goofed. - trigger_event = { - id = fp1_other_decisions.0024 - # We give it a day's delay, since they _might_ have taken a conversion option in the event itself, in which case the follow-up event is invalid. - days = 1 + ## And are you actually humsac'ing your *OWN* HoF? + if = { + limit = { scope:blotter.faith.religious_head ?= scope:unlucky_guest } + # Inform players that they're an abysmal, abysmal faith adherent. + every_player = { + limit = { + this != scope:blotter + faith = scope:unlucky_guest.faith + } + trigger_event = fp1_other_decisions.0023 + } + # Update scope:blotter's HumSac'd HoFs kill tally manually, since we're not going through the usual effect. + add_to_variable_list = { + name = humsacd_hofs + target = scope:unlucky_guest.faith + } + # And tell scope:blotter they dun goofed. + trigger_event = { + id = fp1_other_decisions.0024 + # We give it a day's delay, since they _might_ have taken a conversion option in the event itself, in which case the follow-up event is invalid. + days = 1 + } } } # How exactly do they die? - scope:unlucky_guest = { + scope:unlucky_guest ?= { # Cannibalist Germanic pagans will hang them, then eat them. trigger_event = fp1_other_decisions.1000 if = { @@ -596,7 +597,7 @@ fp1_other_decisions.0003 = { } hidden_effect = { every_in_list = { - list = happified_title_subjects_list + list = happified_character_subjects_list limit = { # Filter out lowborns. exists = dynasty @@ -617,10 +618,8 @@ fp1_other_decisions.0003 = { name = fp1_other_decisions.0003.a # Only available if you follow the scope:gf_faith & have priests to impress at all. trigger = { - faith = { - this = scope:gf_faith - has_doctrine = doctrine_theocracy_temporal - } + faith = scope:gf_faith + rite = { rite_has_doctrine = doctrine_theocracy_temporal } } scope:activity = { @@ -633,7 +632,7 @@ fp1_other_decisions.0003 = { # Your commitment to ritual earns you opinion with the priestly classes. if = { limit = { - any_learning_councillor = { exists = this } + any_learning_councillor = {} } every_learning_councillor = { add_opinion = { @@ -665,7 +664,7 @@ fp1_other_decisions.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_loss cynical = major_stress_impact_gain } @@ -718,7 +717,7 @@ fp1_other_decisions.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_loss humble = medium_stress_impact_gain } @@ -764,7 +763,7 @@ fp1_other_decisions.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_loss arrogant = major_stress_impact_gain } @@ -807,7 +806,7 @@ fp1_other_decisions.0003 = { } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_loss humble = major_stress_impact_gain } @@ -855,7 +854,7 @@ fp1_other_decisions.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = major_stress_impact_loss arrogant = major_stress_impact_gain } @@ -955,26 +954,7 @@ fp1_other_decisions.0003 = { # Converting outside of your religious family, you're a heathen. else_if = { limit = { - OR = { - AND = { - scope:old_faith.religion = { is_in_family = rf_eastern } - NOT = { - scope:gf_faith.religion = { is_in_family = rf_eastern } - } - } - AND = { - scope:old_faith.religion = { is_in_family = rf_pagan } - NOT = { - scope:gf_faith.religion = { is_in_family = rf_pagan } - } - } - AND = { - scope:old_faith.religion = { is_in_family = rf_abrahamic } - NOT = { - scope:gf_faith.religion = { is_in_family = rf_abrahamic } - } - } - } + scope:old_faith = { faith_is_in_same_rf = { FAITH = scope:gf_faith } } } give_nickname = nick_the_heathen } @@ -985,7 +965,7 @@ fp1_other_decisions.0003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss cynical = major_stress_impact_loss paranoid = medium_stress_impact_gain @@ -1096,7 +1076,7 @@ fp1_other_decisions.0011 = { # Get some opinion with scope:blotter for turning up. show_as_tooltip = { gruesome_festivals_blotter_opinion_gain_of_guests_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss gregarious = medium_stress_impact_loss vengeful = minor_stress_impact_gain @@ -1136,7 +1116,7 @@ fp1_other_decisions.0011 = { custom_tooltip = fp1_other_decisions.0011.b.tt gruesome_festivals_turn_down_invitation_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss shy = medium_stress_impact_loss forgiving = minor_stress_impact_gain @@ -1177,7 +1157,7 @@ fp1_other_decisions.0011 = { # Get some opinion with scope:blotter for turning up. show_as_tooltip = { gruesome_festivals_blotter_opinion_gain_of_guests_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss gregarious = medium_stress_impact_loss sadistic = medium_stress_impact_loss @@ -1229,7 +1209,7 @@ fp1_other_decisions.0011 = { # Get some opinion with scope:blotter for turning up. show_as_tooltip = { gruesome_festivals_blotter_opinion_gain_of_guests_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss gregarious = medium_stress_impact_loss compassionate = medium_stress_impact_loss @@ -1282,7 +1262,7 @@ fp1_other_decisions.0011 = { custom_tooltip = fp1_other_decisions.0011.e.tt gruesome_festivals_turn_down_invitation_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss shy = medium_stress_impact_loss forgiving = minor_stress_impact_gain @@ -1401,29 +1381,32 @@ fp1_other_decisions.0012 = { NOT = { exists = scope:decliner_1 } } save_scope_as = decliner_1 + add_to_list = decliners_list } else_if = { limit = { - NOT = { + NOR = { this = scope:decliner_1 exists = scope:decliner_2 } } save_scope_as = decliner_2 + add_to_list = decliners_list } else_if = { limit = { - NOT = { + NOR = { this = scope:decliner_1 this = scope:decliner_2 exists = scope:decliner_3 } } save_scope_as = decliner_3 + add_to_list = decliners_list } else_if = { limit = { - NOT = { + NOR = { this = scope:decliner_1 this = scope:decliner_2 this = scope:decliner_3 @@ -1431,10 +1414,11 @@ fp1_other_decisions.0012 = { } } save_scope_as = decliner_4 + add_to_list = decliners_list } else_if = { limit = { - NOT = { + NOR = { this = scope:decliner_1 this = scope:decliner_2 this = scope:decliner_3 @@ -1443,26 +1427,9 @@ fp1_other_decisions.0012 = { } } save_scope_as = decliner_5 + add_to_list = decliners_list } } - # Add them to a list for easy general management if there's more than one. - scope:decliner_1 = { add_to_list = decliners_list } - if = { - limit = { exists = scope:decliner_2 } - add_to_list = decliners_list - } - if = { - limit = { exists = scope:decliner_3 } - add_to_list = decliners_list - } - if = { - limit = { exists = scope:decliner_4 } - add_to_list = decliners_list - } - if = { - limit = { exists = scope:decliner_5 } - add_to_list = decliners_list - } # Clean up the variable list. gruesome_sacrifices_clean_up_declining_guests_effect = yes } @@ -1494,7 +1461,7 @@ fp1_other_decisions.0012 = { OPINION = -30 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss vengeful = minor_stress_impact_gain } @@ -1552,7 +1519,7 @@ fp1_other_decisions.0012 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_loss vengeful = major_stress_impact_gain } @@ -1591,7 +1558,7 @@ fp1_other_decisions.0012 = { # But it was still a slight. add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_loss vengeful = medium_stress_impact_gain } @@ -1661,7 +1628,7 @@ fp1_other_decisions.0021 = { } right_portrait = { character = scope:sacrificed_hof - animation = fear + animation = dead } override_background = { reference = throne_room } @@ -1732,7 +1699,7 @@ fp1_other_decisions.0022 = { } right_portrait = { character = scope:sacrificed_hof - animation = fear + animation = dead } override_background = { reference = throne_room } @@ -1811,7 +1778,7 @@ scripted_effect gruesome_festivals_own_faith_martyred_own_hof_effect = { add_character_modifier = { modifier = ultimate_blasphemer_modifier } if = { limit = { - faith = { has_doctrine_parameter = excommunication_active } + rite = { rite_has_parameter = excommunication_active } } # Add excommunication directly, since no one specific requested this. add_excommunication_actual_effect = yes @@ -1827,7 +1794,7 @@ fp1_other_decisions.0023 = { first_valid = { triggered_desc = { trigger = { - scope:unlucky_guest.faith = { has_doctrine_parameter = excommunication_active } + scope:unlucky_guest.rite = { rite_has_parameter = excommunication_active } } desc = fp1_other_decisions.0023.desc.has_excommunication } @@ -1842,7 +1809,7 @@ fp1_other_decisions.0023 = { } right_portrait = { character = scope:unlucky_guest - animation = fear + animation = dead } override_background = { reference = throne_room } @@ -1894,7 +1861,7 @@ fp1_other_decisions.0024 = { first_valid = { triggered_desc = { trigger = { - scope:unlucky_guest.faith = { has_doctrine_parameter = excommunication_active } + scope:unlucky_guest.rite = { rite_has_parameter = excommunication_active } } desc = fp1_other_decisions.0024.desc.has_excommunication } @@ -1909,7 +1876,7 @@ fp1_other_decisions.0024 = { } right_portrait = { character = scope:unlucky_guest - animation = fear + animation = dead } override_background = { reference = throne_room } @@ -1921,6 +1888,7 @@ fp1_other_decisions.0024 = { immediate = { gruesome_festivals_martyred_a_hof_effect = { SACRIFICED_HOF = scope:unlucky_guest } gruesome_festivals_own_faith_martyred_own_hof_effect = yes + change_spiritual_fulfillment = massive_spiritual_fulfillment_loss } # _What have I done?!_ @@ -2128,7 +2096,7 @@ fp1_other_decisions.0101 = { custom_tooltip = fp1_other_decisions.0101.a.tt trigger_event = fp1_other_decisions.0111 - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_loss arrogant = medium_stress_impact_gain } @@ -2164,7 +2132,7 @@ fp1_other_decisions.0101 = { custom_tooltip = fp1_other_decisions.0101.b.tt trigger_event = fp1_other_decisions.0111 - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss vengeful = medium_stress_impact_loss humble = minor_stress_impact_gain @@ -2210,7 +2178,7 @@ fp1_other_decisions.0101 = { custom_tooltip = fp1_other_decisions.0101.c.tt trigger_event = fp1_other_decisions.0111 - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_loss humble = major_stress_impact_gain } @@ -2283,6 +2251,7 @@ scripted_effect fp1_apply_stele_effects = { gender_female_chance = 50 dynasty = none faith = $LOCATION$.faith + rite = $LOCATION$.rite culture = $LOCATION$.culture location = $LOCATION$.title_province save_scope_as = carver diff --git a/events/dlc/fp1/fp1_scandinavian_adventurer_events.txt b/events/dlc/fp1/fp1_scandinavian_adventurer_events.txt index c8c413915..986c04728 100644 --- a/events/dlc/fp1/fp1_scandinavian_adventurer_events.txt +++ b/events/dlc/fp1/fp1_scandinavian_adventurer_events.txt @@ -108,19 +108,19 @@ scripted_effect scandinavian_adventurer_start_war_effect = { first_valid = { triggered_desc = { trigger = { - faith = { has_doctrine = doctrine_gender_male_dominated } + rite = { rite_has_doctrine = doctrine_gender_male_dominated } } desc = VIKING_ARMY_MEN_NAME } triggered_desc = { trigger = { - faith = { has_doctrine = doctrine_gender_female_dominated } + rite = { rite_has_doctrine = doctrine_gender_female_dominated } } desc = VIKING_ARMY_WOMEN_NAME } triggered_desc = { trigger = { - faith = { has_doctrine = doctrine_gender_equal } + rite = { rite_has_doctrine = doctrine_gender_equal } } desc = VIKING_ARMY_NEUTRAL_NAME } diff --git a/events/dlc/fp1/fp1_shieldmaiden_events.txt b/events/dlc/fp1/fp1_shieldmaiden_events.txt deleted file mode 100644 index 95a1a9879..000000000 --- a/events/dlc/fp1/fp1_shieldmaiden_events.txt +++ /dev/null @@ -1,1426 +0,0 @@ -namespace = fp1_shieldmaiden - -scripted_trigger wrong_gender_for_fighting_in_faith_trigger = { - #Has access to the appropriate cultural parameter. - culture = { has_cultural_parameter = has_access_to_shieldmaidens } - trigger_if = { # Has the Royal Court and thus can modify pillars - limit = { - has_dlc_feature = diverge_culture # Can modify pillars - } - OR = { - AND = { - culture = { has_cultural_parameter = martial_custom_male_only_combatant } - is_female = yes - } - AND = { - culture = { has_cultural_parameter = martial_custom_female_only_combatant } - is_male = yes - } - } - } - trigger_else = { # Does not have the Royal Court and thus combatant is governed by faith - OR = { - AND = { - faith = { has_doctrine_parameter = combatant_must_be_male_if_no_roco } - is_female = yes - } - AND = { - faith = { has_doctrine_parameter = combatant_must_be_female_if_no_roco } - is_male = yes - } - } - } -} - -################################################## -# Shieldmaiden Challenges You -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -scripted_trigger likely_to_be_offended_list_trigger = { - trigger_if = { # Has the Royal Court and thus can modify pillars - limit = { has_dlc_feature = diverge_culture } - culture = { - NOT = { has_cultural_parameter = martial_custom_equal_combatant } - } - } - trigger_else = { - #Separate religions already think your ways are terrible already, co-religionists think you're making them look bad. - religion = root.religion - #No bias, no problem. - faith = { - NOT = { has_doctrine_parameter = combatant_can_be_either_gender_if_no_roco } - } - } - culture = { - # Warrior by merit, if strong enought you can be a warrior regardless of gender - NOT = { has_cultural_parameter = high_prowess_ignores_knight_restrictions } - } - #Existing shieldmaidens cut slack. - NOT = { has_trait = shieldmaiden } - age >= childhood_education_start_age -} - -scripted_trigger valid_to_become_shieldperson_trigger = { - wrong_gender_for_fighting_in_faith_trigger = yes - is_available_ai_adult = yes - prowess >= decent_skill_rating - NOT = { has_trait = shieldmaiden } - NOT = { has_trait = craven } -} - -scripted_trigger child_dreams_of_shieldpersonhood_trigger = { - valid_to_become_shieldperson_trigger = yes - is_courtier_of = root - location = root.location - has_character_flag = fp1_dreams_of_shieldpersondom -} - -# A wrong-gender courtier wishes to fight for you -fp1_shieldmaiden.0001 = { - type = character_event - title = fp1_shieldmaiden.0001.t - desc = fp1_shieldmaiden.0001.desc - theme = martial - left_portrait = { - character = scope:shieldmaiden - animation = personality_bold - } - right_portrait = { - character = scope:challenged_knight - animation = dismissal - } - override_background = { reference = throne_room } - - trigger = { - #DLC check. - has_fp1_dlc_trigger = yes - #Standard checks. - is_available_at_peace_adult = yes - is_landed = yes - NOT = { has_character_flag = had_event_fp1_shieldmaiden_0001 } - #Has access to the appropriate cultural parameter. - culture = { has_cultural_parameter = has_access_to_shieldmaidens } - #Your society must consider one gender or the other lesser. - trigger_if = { # Has the Royal Court and thus can modify pillars - limit = { has_dlc_feature = diverge_culture } - culture = { NOT = { has_cultural_parameter = martial_custom_equal_combatant } } - } - trigger_else = { - faith = { NOT = { has_doctrine_parameter = combatant_can_be_either_gender_if_no_roco } } - } - #You've got to have at least one suitable courtier or guest. - any_courtier_or_guest = { valid_to_become_shieldperson_trigger = yes } - #Aaaand you need a decent knight to be challenged. - any_knight = { - is_available_ai_adult = yes - is_ruler = no - wrong_gender_for_fighting_in_faith_trigger = no - NOT = { has_trait = shieldmaiden } - } - } - - weight_multiplier = { - base = 1 - - #More likely if you're a ruling wrong-gender person yourself. - modifier = { - add = 1 - wrong_gender_for_fighting_in_faith_trigger = yes - } - #Even more so if you're actually a shieldmaiden yourself. - modifier = { - add = 1 - has_trait = shieldmaiden - } - # Weight up drastically if one of your children wishes to become a shieldmaiden. - modifier = { - add = 10 - any_child = { child_dreams_of_shieldpersonhood_trigger = yes } - } - } - - immediate = { - #Put the event on cooldown for a decade. - add_character_flag = { - flag = had_event_fp1_shieldmaiden_0001 - days = 3650 - } - #Sort the best possible shieldmaiden. - ordered_courtier_or_guest = { - # Grab children who were promised first. - limit = { - is_child_of = root - child_dreams_of_shieldpersonhood_trigger = yes - } - # Otherwise, look down available courtiers. - alternative_limit = { - valid_to_become_shieldperson_trigger = yes - #Check that it makes sense for this character to ask to be your shieldmaiden. - OR = { - #Meaning they should either not be one already... - NOT = { has_trait = shieldmaiden } - #... or be a wandering shieldmaiden. - is_pool_guest = yes - } - } - order_by = { - value = prowess - if = { - limit = { has_trait = brave } - add = 10 - } - if = { - limit = { has_trait = craven } - add = -10 - } - if = { - limit = { has_trait = ambitious } - add = 10 - } - if = { - limit = { has_trait = content } - add = -10 - } - if = { - limit = { has_trait = arrogant } - add = 5 - } - if = { - limit = { has_trait = humble } - add = -5 - } - if = { - limit = { has_trait = gregarious } - add = 5 - } - if = { - limit = { has_trait = shy } - add = -5 - } - } - save_scope_as = shieldmaiden - } - #And a suitable knight. - ordered_knight = { - limit = { - is_available_ai_adult = yes - is_ruler = no - wrong_gender_for_fighting_in_faith_trigger = no - NOT = { has_trait = shieldmaiden } - } - order_by = prowess - save_scope_as = challenged_knight - } - #For reference, add all courtiers & vassals who are likely to be offended if you just let any old wrong-gender human defy societal gender norms. - every_courtier = { - limit = { likely_to_be_offended_list_trigger = yes } - add_to_list = prejudiced_courtiers_list - } - every_vassal = { - limit = { likely_to_be_offended_list_trigger = yes } - add_to_list = prejudiced_courtiers_list - } - #Finally, if scope:shieldmaiden has dreamt of this day, clear the dream. Hopefully it went positively! - scope:shieldmaiden = { - if = { - limit = { has_character_flag = fp1_dreams_of_shieldpersondom } - remove_character_flag = fp1_dreams_of_shieldpersondom - } - } - } - - #You allow them to fight your knight. - option = { - name = fp1_shieldmaiden.0001.a - - scope:challenged_knight = { - #Your knight may hurt the prospective shieldmaiden. - scope:shieldmaiden = { - random = { - chance = scope:challenged_knight.prowess - increase_wounds_no_death_effect = { REASON = duel } - } - } - #And, depending on how fearsome they were, your knight may have been hurt right back. - random = { - chance = scope:shieldmaiden.prowess - increase_wounds_no_death_effect = { REASON = duel } - } - - #Sort the duel. - duel = { - skill = prowess - target = scope:shieldmaiden - #Your knight defeats the prospective shieldmaiden. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = fp1_shieldmaiden.0001.a.tt_success - root = { - send_interface_toast = { - title = fp1_shieldmaiden.0001.a.tt_success - left_icon = scope:shieldmaiden - scope:shieldmaiden = { - #scope:shieldmaiden is a tad miffed. - add_opinion = { - target = scope:challenged_knight - modifier = angry_opinion - opinion = -20 - } - } - #For your trouble, you and the knight split the prestige. - add_prestige = minor_prestige_gain - scope:challenged_knight = { add_prestige = minor_prestige_gain } - } - } - } - #Your knight is defeated. - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = fp1_shieldmaiden.0001.a.tt_failure - root = { - send_interface_toast = { - title = fp1_shieldmaiden.0001.a.tt_failure - left_icon = scope:shieldmaiden - scope:shieldmaiden = { - #Officially designated a shieldmaiden! - add_trait = shieldmaiden - #Happy with the outcome of the duel. - add_opinion = { - target = scope:challenged_knight - modifier = pleased_opinion - opinion = 20 - } - #If scope:shieldmaiden is a guest, you get them for free. - if = { - limit = { is_pool_guest = yes } - root = { add_courtier = scope:shieldmaiden } - } - } - } - } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.25 - ai_energy = -0.25 - ai_boldness = -0.25 - } - modifier = { #Cowardly shieldmaidens don't see the necessity of a fight. - add = -40 - has_trait = shieldmaiden - has_trait = craven - } - modifier = { #Brave shieldmaidens, on the other hand, will insist you earn it (either way). - add = 20 - has_trait = shieldmaiden - has_trait = brave - } - } - } - - #You take the challenge yourself. - option = { - name = fp1_shieldmaiden.0001.b - - #You may have hurt the prospective shieldmaiden in the duel. - scope:shieldmaiden = { - random = { - chance = root.prowess - increase_wounds_no_death_effect = { REASON = duel } - } - } - #Plus they may have hurt you right back. - random = { - chance = scope:shieldmaiden.prowess - increase_wounds_no_death_effect = { REASON = duel } - } - - #Sort the duel. - duel = { - skill = prowess - target = scope:shieldmaiden - #You defeat the prospective shieldmaiden. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = fp1_shieldmaiden.0001.b.tt_success - send_interface_toast = { - title = fp1_shieldmaiden.0001.b.tt_success - left_icon = scope:shieldmaiden - scope:shieldmaiden = { - #scope:shieldmaiden is a tad miffed. - add_opinion = { - target = root - modifier = angry_opinion - opinion = -20 - } - } - #Since you fought yourself, you get all the prestige. - add_prestige = medium_prestige_gain - } - } - #You are defeated. - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = fp1_shieldmaiden.0001.b.tt_failure - send_interface_toast = { - title = fp1_shieldmaiden.0001.b.tt_failure - left_icon = scope:shieldmaiden - scope:shieldmaiden = { - #Officially designated a shieldmaiden! - add_trait = shieldmaiden - #Happy with the outcome of the duel. - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 20 - } - #If scope:shieldmaiden is a guest, you get them for free. - if = { - limit = { is_pool_guest = yes } - root = { add_courtier = scope:shieldmaiden } - } - } - } - } - } - - stress_impact = { - brave = medium_stress_impact_loss - craven = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_vengefulness = 0.25 - } - modifier = { #Weight up for stress. - add = 20 - has_trait = brave - } - modifier = { #Weight down for stress. - add = -20 - has_trait = craven - } - modifier = { #Cowardly shieldmaidens don't see the necessity of a fight. - add = -40 - has_trait = shieldmaiden - has_trait = craven - } - modifier = { #Brave shieldmaidens, on the other hand, will insist you earn it (either way). - add = 20 - has_trait = shieldmaiden - has_trait = brave - } - } - } - - #Accept them outright. - option = { - name = fp1_shieldmaiden.0001.c - - scope:shieldmaiden = { - #Grant the shieldmaiden trait. - add_trait = shieldmaiden - #Opinion gain with new shieldmaiden. - add_opinion = { - target = root - modifier = fp1_accepted_my_sword_opinion - } - #If scope:shieldmaiden is a guest, you get them for free. - if = { - limit = { is_pool_guest = yes } - root = { add_courtier = scope:shieldmaiden } - } - } - #Loyalty hook on the new shieldmaiden for your trust. - if = { - limit = { - NOR = { - has_hook_of_type = { - target = scope:shieldmaiden - type = loyalty_hook - } - has_hook_of_type = { - target = scope:shieldmaiden - type = ritual_best_friend_hook - } - } - } - if = { - limit = { - has_hook = scope:shieldmaiden - } - hidden_effect = { remove_hook = { target = scope:shieldmaiden } } - } - add_hook = { - type = loyalty_hook - target = scope:shieldmaiden - } - } - #Opinion loss with all courtiers who do not feel they should be able to fight. - if = { - limit = { - any_in_list = { - list = prejudiced_courtiers_list - count >= 1 - } - } - every_in_list = { - list = prejudiced_courtiers_list - limit = { - #Exempt shieldmaidens; we do this at this point, otherwise the shieldmaiden themself will objet to their own shieldmaidenry. - NOT = { has_trait = shieldmaiden } - } - custom = fp1_accepted_shieldmaiden_without_question - add_opinion = { - target = root - modifier = fp1_defied_religious_traditions_opinion - } - } - } - - stress_impact = { - arbitrary = minor_stress_impact_loss - just = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_honor = 0.25 - ai_zeal = -0.25 - } - modifier = { #Weight down for stress. - add = 10 - has_trait = arbitrary - } - modifier = { #Weight up for stress. - add = -10 - has_trait = just - } - modifier = { #Weight up for stress. - add = -20 - has_trait = arrogant - } - modifier = { #Cowardly shieldmaidens don't see the necessity of a fight. - add = 40 - has_trait = shieldmaiden - has_trait = craven - } - modifier = { #Brave shieldmaidens, on the other hand, will insist you earn it. - add = -40 - has_trait = shieldmaiden - has_trait = brave - } - } - } - - #Reject them outright. - option = { - name = fp1_shieldmaiden.0001.d - - #Hefty opinion loss. - reverse_add_opinion = { - target = scope:shieldmaiden - modifier = fp1_rejected_my_sword_opinion - } - - #Stepped rivalry between you and the potential shieldmaiden. - progress_towards_rival_effect = { - REASON = rival_shieldmaiden_declined - CHARACTER = scope:shieldmaiden - OPINION = 0 - } - - stress_impact = { - arbitrary = minor_stress_impact_loss - arrogant = medium_stress_impact_loss - just = minor_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.25 - ai_compassion = -0.25 - ai_honor = -0.25 - } - modifier = { #Weight up for stress. - add = 10 - has_trait = arbitrary - } - modifier = { #Weight up for stress. - add = 20 - has_trait = arrogant - } - modifier = { #Weight down for stress. - add = -10 - has_trait = just - } - modifier = { #Weight down for stress. - add = -20 - has_trait = humble - } - modifier = { #Shieldmaidens are, themselves, more likely to give someone a shot. - add = -40 - has_trait = shieldmaiden - } - } - } -} - -################################################## -# Shieldmaiden Stymies an Escape Attempt -# by Ewan Cowhig Croft -# 0011 - 0020 -################################################## - -# A shieldmaiden stops your escape attempt in its tracks. -fp1_shieldmaiden.0011 = { - type = character_event - title = fp1_shieldmaiden.0011.t - desc = fp1_shieldmaiden.0011.desc - theme = prison - left_portrait = { - character = scope:prisoner - animation = fear - } - right_portrait = { - character = scope:shieldmaiden - animation = disapproval - } - - trigger = { - #DLC check. - has_fp1_dlc_trigger = yes - #Requires a shieldmaiden to get going. - imprisoner = { - any_courtier = { suitable_shieldmaiden_gaoler_trigger = yes } - } - } - - immediate = { - play_music_cue = "mx_cue_prison" - save_scope_as = prisoner - imprisoner = { - #Grab an appropriate shieldmaiden. - random_courtier = { - limit = { suitable_shieldmaiden_gaoler_trigger = yes } - save_scope_as = shieldmaiden - } - #Inform the imprisoner so that they're aware they're getting value for money. - trigger_event = fp1_shieldmaiden.0012 - } - scope:imprisoner = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = -20 - } - } - } - - #The shieldmaiden lays the smackdown. - option = { - name = fp1_shieldmaiden.0011.a - increase_wounds_no_death_effect = { REASON = beaten } - } -} - -# A shieldmaiden has stopped one of your prisoners escaping. -fp1_shieldmaiden.0012 = { - type = character_event - title = fp1_shieldmaiden.0012.t - desc = fp1_shieldmaiden.0012.desc - theme = prison - left_portrait = { - character = scope:prisoner - animation = fear - } - right_portrait = { - character = scope:shieldmaiden - animation = disapproval - } - - trigger = { - scope:prisoner = { - is_of_major_or_minor_interest_trigger = { CHARACTER = scope:imprisoner } - } - } - - immediate = { - play_music_cue = "mx_cue_prison" - #Show the wounds. - show_as_tooltip = { - scope:prisoner = { - increase_wounds_effect = { REASON = beaten } - } - } - } - - #Good job! - option = { - name = fp1_shieldmaiden.0012.a - scope:shieldmaiden = { - add_opinion = { - target = scope:imprisoner - modifier = compliment_opinion - opinion = 10 - } - } - } - - #Bad job! [in case this was an overreaction] - option = { - name = fp1_shieldmaiden.0012.b - scope:shieldmaiden = { - add_opinion = { - target = scope:imprisoner - modifier = annoyed_opinion - opinion = -10 - } - } - } -} - -################################################## -# Shieldmaiden saves you from Murder Attempt -# by Petter Vilberg & Ewan Cowhig Croft -# 0021 - 0030 -################################################## - -scripted_trigger suitable_shieldmaiden_savior_trigger = { - has_trait = shieldmaiden - bodyguard_will_actually_do_job_trigger = yes -} - -# Scheme owner: shieldmaiden intervenes in murder. -fp1_shieldmaiden.0021 = { - type = character_event - window = scheme_failed_event - title = fp1_shieldmaiden.0021.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:murder_method = flag:hired_thugs } - desc = fp1_shieldmaiden.0021.desc.thugs - } - triggered_desc = { - trigger = { scope:murder_method = flag:riled_up_mob } - desc = fp1_shieldmaiden.0021.desc.mob - } - triggered_desc = { - trigger = { scope:murder_method = flag:lured_into_forest } - desc = fp1_shieldmaiden.0021.desc.lured_into_forest - } - triggered_desc = { - trigger = { scope:murder_method = flag:child_pushed } - desc = fp1_shieldmaiden.0021.desc.child_pushed - } - desc = fp1_shieldmaiden.0021.desc.assassin - } - triggered_desc = { - trigger = { exists = local_var:shieldmaiden_dies } - desc = fp1_shieldmaiden.0021.shieldmaiden_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 = { - #DLC check. - has_fp1_dlc_trigger = yes - scope:target = { - any_court_position_holder = { - type = bodyguard_court_position - suitable_shieldmaiden_savior_trigger = yes - } - } - } - - immediate = { - # Select a murder method. - random_list = { - 100 = { - save_scope_value_as = { - name = murder_method - value = flag:hired_assassin - } - } - 100 = { - save_scope_value_as = { - name = murder_method - value = flag:hired_thugs - } - } - 100 = { - save_scope_value_as = { - name = murder_method - value = flag:riled_up_mob - } - } - 100 = { - save_scope_value_as = { - name = murder_method - value = flag:lured_into_forest - } - } - 100 = { - save_scope_value_as = { - name = murder_method - value = flag:child_pushed - } - # Try to grab a suitable thing to lure them in with too. - rooftop_murder_lure_for_child_effect = yes - } - } - # Sort our shieldmaiden - scope:target = { - ordered_court_position_holder = { - type = bodyguard_court_position - limit = { suitable_shieldmaiden_savior_trigger = yes } - order_by = { value = murder_weight_best_bodyguard_value } - save_scope_as = shieldmaiden - } - } - hidden_effect = { - if = { - limit = { - # Shieldmaidens can't die from some murder methods. - NOR = { - scope:murder_method = flag:lured_into_forest - scope:murder_method = flag:child_pushed - } - } - random = { - chance = { - value = 75 - subtract = scope:shieldmaiden.prowess - } - set_local_variable = { - name = shieldmaiden_dies - value = yes - } - } - } - } - if = { - limit = { exists = local_var:shieldmaiden_dies } - show_as_tooltip = { - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:shieldmaiden - REASON = death_murder - } - } - } - random_dummy_gender_assassin_effect = yes - murder_failure_effect = yes - } - - #It's over. - option = { name = fp1_shieldmaiden.0021.a } - - #It's not over till I say it's over! - option = { - name = fp1_shieldmaiden.0021.b - trigger = { - NOT = { exists = scope:scheme_discovered } - } - restart_murder_scheme_effect = yes - } - - # Fire the rest of the outcome. - after = { - scope:target = { trigger_event = fp1_shieldmaiden.0022 } - } -} - -# Shieldmaiden saves you from murder -fp1_shieldmaiden.0022 = { - type = character_event - window = scheme_conclusion_event_no_header - title = fp1_shieldmaiden.0022.t - desc = { - # This block is only for the setup of child_pushed. - first_valid = { - triggered_desc = { - trigger = { - scope:murder_method = flag:child_pushed - exists = scope:child_pushed_dog - } - desc = murder_outcome.5001.child_pushed_dog - } - triggered_desc = { - trigger = { - scope:murder_method = flag:child_pushed - exists = scope:child_pushed_cat - } - desc = murder_outcome.5001.child_pushed_cat - } - triggered_desc = { - trigger = { - scope:murder_method = flag:child_pushed - exists = scope:child_pushed_toy - } - desc = murder_outcome.5001.child_pushed_toy - } - triggered_desc = { - trigger = { - scope:murder_method = flag:child_pushed - } - desc = murder_outcome.5001.child_pushed - } - } - # Shieldmaided saves you! - first_valid = { - triggered_desc = { - trigger = { scope:murder_method = flag:hired_thugs } - desc = fp1_shieldmaiden.0022.desc.thugs - } - triggered_desc = { - trigger = { scope:murder_method = flag:riled_up_mob } - desc = fp1_shieldmaiden.0022.desc.mob - } - triggered_desc = { - trigger = { scope:murder_method = flag:lured_into_forest } - desc = fp1_shieldmaiden.0022.desc.lured_into_forest - } - triggered_desc = { - trigger = { scope:murder_method = flag:child_pushed } - desc = fp1_shieldmaiden.0022.desc.child_pushed - } - desc = fp1_shieldmaiden.0022.desc.assassin - } - # ...but did they pay the ultimate price? - first_valid = { - triggered_desc = { - trigger = { - exists = local_var:shieldmaiden_dies - scope:murder_method = flag:hired_assassin - } - desc = fp1_shieldmaiden.0022.desc.assassin.shieldmaiden_dies - } - triggered_desc = { - trigger = { - exists = local_var:shieldmaiden_dies - scope:murder_method = flag:hired_thugs - } - desc = fp1_shieldmaiden.0022.desc.thugs.shieldmaiden_dies - } - triggered_desc = { - trigger = { - exists = local_var:shieldmaiden_dies - scope:murder_method = flag:riled_up_mob - } - desc = fp1_shieldmaiden.0022.desc.mob.shieldmaiden_dies - } - triggered_desc = { - trigger = { - NOT = { exists = local_var:shieldmaiden_dies } - scope:murder_method = flag:riled_up_mob - } - desc = fp1_shieldmaiden.0022.desc.mob.shieldmaiden_lives - } - } - # And who was responsible!? - triggered_desc = { - trigger = { exists = scope:scheme_discovered } - desc = fp1_shieldmaiden.0022.owner_discovered - } - } - theme = murder_scheme - override_background = { - trigger = { scope:murder_method = flag:hired_thugs } - reference = wilderness_scope - } - override_background = { - trigger = { - OR = { - scope:murder_method = flag:riled_up_mob - scope:murder_method = flag:child_pushed - } - } - reference = courtyard - } - override_background = { - trigger = { scope:murder_method = flag:lured_into_forest } - reference = wilderness_forest - } - 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 = { - if = { - limit = { scope:murder_method = flag:hired_thugs } - scope:home_province = { save_scope_as = background_wilderness_scope } - } - # Handle the death of the Shieldmaiden if necessary - if = { - limit = { exists = local_var:shieldmaiden_dies } - murder_interception_handle_extra_deaths_effect = { - VICTIM = scope:shieldmaiden - REASON = death_murder - } - } - } - - #Who could do such a thing? - option = { - name = fp1_shieldmaiden.0022.a - trigger = { - NOT = { exists = scope:scheme_discovered } - } - custom_tooltip = murder_save.failure_unknown_owner_tt - } - - #Vengeance! - option = { - name = fp1_shieldmaiden.0022.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 - } - } -} - -################################################## -# Shieldmaiden has Developed Mad Skills -# by Ewan Cowhig Croft -# 0031 - 0040 -################################################## - -scripted_trigger valid_for_shieldmaiden_veterancy = { - # Must actually have the shieldmaiden trait. - has_trait = shieldmaiden - # Must still be in a situation where shieldmaidenhood is exceptional. - wrong_gender_for_fighting_in_faith_trigger = yes -} - -scripted_trigger valid_for_shieldmaiden_level_up = { - # Are they an eligible shieldmaiden? - valid_for_shieldmaiden_veterancy = yes - # Have they met the level up requirements? - has_variable = shieldmaiden_veterancy - this.var:shieldmaiden_veterancy >= shieldmaiden_veterancy_cap - # Already checked for a root shieldmaiden, but we re-check for courtiers. - is_available_at_peace_adult = yes - # Finally, they mustn't have all the shieldmaiden modifiers maxed out already. - NAND = { - has_character_modifier = shieldmaiden_level_martial_3_fp1_modifier - has_character_modifier = shieldmaiden_level_prowess_3_fp1_modifier - has_character_modifier = shieldmaiden_level_intrigue_3_fp1_modifier - } -} - -# Track the number of valid battles as a shieldmaiden a character has been in. -fp1_shieldmaiden.0031 = { - hidden = yes - scope = combat_side - - trigger = { - #DLC check. - has_fp1_dlc_trigger = yes - OR = { - any_side_commander = { valid_for_shieldmaiden_veterancy = yes } - any_side_knight = { valid_for_shieldmaiden_veterancy = yes } - } - } - - immediate = { - # Sort side commander shieldmaidens. - every_side_commander = { - limit = { valid_for_shieldmaiden_veterancy = yes } - # Boost their veterancy if they already have it. - if = { - limit = { exists = var:shieldmaiden_veterancy } - change_variable = { - name = shieldmaiden_veterancy - add = 1 - } - } - # Or else set it up otherwise. - else = { - set_variable = { - name = shieldmaiden_veterancy - value = 1 - } - } - } - # Sort side knight shieldmaidens. - every_side_knight = { - limit = { valid_for_shieldmaiden_veterancy = yes } - if = { - limit = { exists = var:shieldmaiden_veterancy } - change_variable = { - name = shieldmaiden_veterancy - add = 1 - } - } - else = { - set_variable = { - name = shieldmaiden_veterancy - value = 1 - } - } - } - } -} - -# Your shieldmaiden improves their skills. -fp1_shieldmaiden.0032 = { - type = character_event - title = fp1_shieldmaiden.0032.t - desc = { - first_valid = { - # Am *I* the shieldmaiden in question? - triggered_desc = { - trigger = { scope:shieldmaiden = root } - desc = fp1_shieldmaiden.0032.desc.root - } - # Or is it a courtier? - desc = fp1_shieldmaiden.0032.desc.courtier - } - } - theme = martial - left_portrait = { - character = scope:shieldmaiden - animation = rage - } - override_background = { reference = army_camp } - - trigger = { - #DLC check. - has_fp1_dlc_trigger = yes - #Standard checks. - is_available_at_peace_adult = yes - NOT = { has_character_flag = had_event_fp1_shieldmaiden_0032 } - # Must either be or have a shieldmaiden who's at veterancy cap. - OR = { - valid_for_shieldmaiden_level_up = yes - any_courtier = { valid_for_shieldmaiden_level_up = yes } - } - } - - weight_multiplier = { - base = 1 - - # Much more likely if you're a shieldmaiden yourself. - modifier = { - add = 2 - has_trait = shieldmaiden - } - } - - immediate = { - play_music_cue = "mx_cue_positive_effect" - add_character_flag = { - flag = had_event_fp1_shieldmaiden_0032 - days = 1825 - } - # Designate a valid shieldmaiden. - ## First, we always level up root, if possible. - if = { - limit = { valid_for_shieldmaiden_level_up = yes } - save_scope_as = shieldmaiden - } - ## Otherwise, we grab all relevant courtiers. - else = { - every_courtier = { - limit = { valid_for_shieldmaiden_level_up = yes } - add_to_list = veteran_shieldmaidens - } - } - ## Select a suitable one from the list to be scope:shieldmaiden, prioritising the most veteran. - if = { - limit = { - NOT = { exists = scope:shieldmaiden } - } - ordered_in_list = { - list = veteran_shieldmaidens - order_by = var:shieldmaiden_veterancy - save_scope_as = shieldmaiden - } - } - # Next, we reduce scope:shieldmaiden's veterancy, as they'll be levelling it up in the event. - scope:shieldmaiden = { - change_variable = { - name = shieldmaiden_veterancy - subtract = shieldmaiden_veterancy_cap - } - } - } - - # Martial: look how they command the shieldwall! - option = { - # Separate loc for first person POV. - name = { - trigger = { scope:shieldmaiden = root } - text = fp1_shieldmaiden.0032.a.root - } - # Aaaaand third person POV. - name = { - trigger = { - scope:shieldmaiden != root - } - text = fp1_shieldmaiden.0032.a.courtier - } - # Can't have the max-level version of this modifier. - trigger = { - NOT = { - scope:shieldmaiden = { has_character_modifier = shieldmaiden_level_martial_3_fp1_modifier } - } - } - - # Process the level-up modifier for this stat block. - scope:shieldmaiden = { - # If we have no level on this path, give us the first rank. - if = { - limit = { - NOR = { - has_character_modifier = shieldmaiden_level_martial_1_fp1_modifier - has_character_modifier = shieldmaiden_level_martial_2_fp1_modifier - has_character_modifier = shieldmaiden_level_martial_3_fp1_modifier - } - } - add_character_modifier = shieldmaiden_level_martial_1_fp1_modifier - } - # If have the first level, quietly remove it and add the second. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_martial_1_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_martial_1_fp1_modifier } - add_character_modifier = shieldmaiden_level_martial_2_fp1_modifier - } - # If we have the second level, quietly remove it and add the third. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_martial_2_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_martial_2_fp1_modifier } - add_character_modifier = shieldmaiden_level_martial_3_fp1_modifier - } - - } - - # No stress involved. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.25 - ai_rationality = 0.25 - } - } - } - - # Prowess: see how they swing that sword! - option = { - # Separate loc for first person POV. - name = { - trigger = { scope:shieldmaiden = root } - text = fp1_shieldmaiden.0032.b.root - } - # Aaaaand third person POV. - name = { - trigger = { - scope:shieldmaiden != root - } - text = fp1_shieldmaiden.0032.b.courtier - } - # Can't have the max-level version of this modifier. - trigger = { - NOT = { - scope:shieldmaiden = { has_character_modifier = shieldmaiden_level_prowess_3_fp1_modifier } - } - } - - # Process the level-up modifier for this stat block. - scope:shieldmaiden = { - # If we have no level on this path, give us the first rank. - if = { - limit = { - NOR = { - has_character_modifier = shieldmaiden_level_prowess_1_fp1_modifier - has_character_modifier = shieldmaiden_level_prowess_2_fp1_modifier - has_character_modifier = shieldmaiden_level_prowess_3_fp1_modifier - } - } - add_character_modifier = shieldmaiden_level_prowess_1_fp1_modifier - } - # If have the first level, quietly remove it and add the second. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_prowess_1_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_prowess_1_fp1_modifier } - add_character_modifier = shieldmaiden_level_prowess_2_fp1_modifier - } - # If we have the second level, quietly remove it and add the third. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_prowess_2_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_prowess_2_fp1_modifier } - add_character_modifier = shieldmaiden_level_prowess_3_fp1_modifier - } - - } - - # No stress involved. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.25 - ai_honor = 0.25 - } - } - } - - # Intrigue: never a finer backstabber! - option = { - # Separate loc for first person POV. - name = { - trigger = { scope:shieldmaiden = root } - text = fp1_shieldmaiden.0032.c.root - } - # Aaaaand third person POV. - name = { - trigger = { - scope:shieldmaiden != root - } - text = fp1_shieldmaiden.0032.c.courtier - } - # Can't have the max-level version of this modifier. - trigger = { - NOT = { - scope:shieldmaiden = { has_character_modifier = shieldmaiden_level_intrigue_3_fp1_modifier } - } - } - - # Process the level-up modifier for this stat block. - scope:shieldmaiden = { - # If we have no level on this path, give us the first rank. - if = { - limit = { - NOR = { - has_character_modifier = shieldmaiden_level_intrigue_1_fp1_modifier - has_character_modifier = shieldmaiden_level_intrigue_2_fp1_modifier - has_character_modifier = shieldmaiden_level_intrigue_3_fp1_modifier - } - } - add_character_modifier = shieldmaiden_level_intrigue_1_fp1_modifier - } - # If have the first level, quietly remove it and add the second. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_intrigue_1_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_intrigue_1_fp1_modifier } - add_character_modifier = shieldmaiden_level_intrigue_2_fp1_modifier - } - # If we have the second level, quietly remove it and add the third. - else_if = { - limit = { has_character_modifier = shieldmaiden_level_intrigue_2_fp1_modifier } - hidden_effect = { remove_character_modifier = shieldmaiden_level_intrigue_2_fp1_modifier } - add_character_modifier = shieldmaiden_level_intrigue_3_fp1_modifier - } - } - - # Minor stress revolving around paranoia: what if they backstab *YOU*, after all? - if = { - limit = { - scope:shieldmaiden != root - } - stress_impact = { - trusting = minor_stress_impact_loss - paranoid = minor_stress_impact_gain - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_vengefulness = -0.5 - } - modifier = { #Weight up for stress. - add = 10 - scope:shieldmaiden != root - has_trait = trusting - } - modifier = { #Weight down for stress. - add = -10 - scope:shieldmaiden != root - has_trait = paranoid - } - } - } -} diff --git a/events/dlc/fp1/fp1_trade_events.txt b/events/dlc/fp1/fp1_trade_events.txt deleted file mode 100644 index 57665dbee..000000000 --- a/events/dlc/fp1/fp1_trade_events.txt +++ /dev/null @@ -1,2505 +0,0 @@ -namespace = fp1_trade_events - -################################################## -# #Standard Trade Events -# 0001 - 0010 Raid or Trade - a raid potentially becomes a trading mission instead -# 0011 - 0020 A Comfortable Accomodation - a trade ceasefire has expired and can be renewed. -# 0021 - 0040 Visitors from Afar - courtiers swap between two places that trade with each other. -# 0041 - 0060 Belligerents with Benefits - beneficial modifiers are swapped between the capital and a foreign trade location. -# -# #Special Trade Events -# 1101 - 1130 An Alternative Arrangement - offer land to a raid-trade partner -# 1131 - 1170 The Northerner Menace - you buy off an SA's troops, or offer them a position under you. -# 1171 - 1180 A Holy Helping Hand - someone you have a raid-trade agreement with offers the hand of a child and conversion aid. -################################################## - - - - - - - - - - -################################################## -# STANDARD TRADE EVENTS - -################################################## -# Take or Trade? -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -# Hidden setup: could this raid become a trade mission instead? -fp1_trade_events.0001 = { - hidden = yes - scope = army - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Make sure that the army hasn't landed straight into combat or w/e. - is_army_in_combat = no - # Various checks related to scope:raider, including most of the stuff for fp1_trade_events.0002's trigger block. - scope:raider = { - #You must be leading your own forces. - this = root.army_commander - # Standard checks. - is_available_adult_or_is_commanding = yes - NOT = { has_character_flag = had_event_fp1_trade_events_0002 } - # Must be either river-capable raiders, or have invested in a suitable dynasty legacy. - OR = { - culture = { has_innovation = innovation_longboats } - dynasty ?= { has_dynasty_perk = fp1_adventure_legacy_2 } - } - # Must be at peace; not strictly, but this is the easiest way to reduce edge cases. - is_at_war = no - # Shouldn't hypothetically need to check whether or not scope:raider can actually raid the target, since that should be handled code-side before the on_action even fires. - } - # Is the target intimidating to this raid army? - army_size < fp1_trade_events_eligible_settlement_value - } - - immediate = { - random = { - chance = 20 - modifier = { - add = 20 - scope:raider = { - culture = { has_cultural_pillar = heritage_north_germanic } - dynasty = { has_dynasty_perk = fp1_adventure_legacy_2 } - } - } - save_scope_as = raid_army - scope:raider = { trigger_event = fp1_trade_events.0002 } - } - } -} - -scripted_effect fp1_trade_events_offer_trade_deal_raider_perspective_effect = { - # Add the truce. - add_truce_both_ways = { - character = scope:raider - days = fp1_trade_events_truce_length_value - name = TRUCE_TRADE_DEAL - } - # Add some mutual opinion gain. - add_opinion = { - target = scope:raider - modifier = pleased_opinion - opinion = 20 - } - # Raid loot for the army. - scope:raid_army = { add_loot = fp1_trade_events_cash_settlement_value } -} - -scripted_effect fp1_trade_events_offer_trade_deal_defender_perspective_effect = { - # Add the truce. - show_as_tooltip = { - add_truce_both_ways = { - character = scope:raider - days = fp1_trade_events_truce_length_value - name = TRUCE_TRADE_DEAL - } - } - # Add some mutual opinion gain. - reverse_add_opinion = { - target = scope:raider - modifier = pleased_opinion - opinion = 20 - } - # Minor beneficial modifier gain for the county. - scope:county = { - add_county_modifier = { - modifier = trade_instead_of_raid_fp1_modifier - days = fp1_trade_events_truce_length_value - } - } -} - -# You have the chance to trade peacefully instead of raiding. -fp1_trade_events.0002 = { - type = character_event - title = fp1_trade_events.0002.t - desc = fp1_trade_events.0002.desc - theme = raid - left_portrait = { - character = scope:raider - animation = personality_honorable - } - right_portrait = { - character = scope:county.holder - animation = disapproval - } - lower_right_portrait = scope:top_liege - override_background = { reference = burning_building } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - } - - immediate = { - add_character_flag = { - flag = had_event_fp1_trade_events_0002 - days = 365 - } - # Grab top_liege, if they're a separate character. - if = { - limit = { - scope:county.holder != scope:county.holder.top_liege - } - scope:county.holder.top_liege = { save_scope_as = top_liege } - } - } - - # Offer trade: local holder. - option = { - name = fp1_trade_events.0002.a - - # Show offer results. - show_as_tooltip = { - random_list = { - # We only want to show the two possibilities, actual percentages don't matter, since the results are decided in the recipient's event. - 100 = { - show_chance = no - desc = fp1_trade_events.0002.a.accepted - scope:county.holder = { fp1_trade_events_offer_trade_deal_raider_perspective_effect = yes } - } - 100 = { - show_chance = no - desc = fp1_trade_events.0002.a.rejected - custom_tooltip = fp1_trade_events.0002.a.tt - } - } - } - # Send the actual offer. - scope:county.holder = { trigger_event = fp1_trade_events.0003 } - # Charge a little prestige to make it a trade-off. - add_prestige = minor_prestige_loss - - stress_impact = { - calm = medium_stress_impact_loss - compassionate = major_stress_impact_loss - wrathful = medium_stress_impact_gain - callous = major_stress_impact_gain - sadistic = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_greed = -0.5 - } - opinion_modifier = { opinion_target = scope:county.holder.top_liege } - modifier = { # Weight up for stress. - add = 20 - has_trait = calm - } - modifier = { # Weight up for stress. - add = 30 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -20 - has_trait = wrathful - } - modifier = { # Weight down for stress. - add = -20 - has_trait = callous - } - modifier = { # Weight down for stress. - add = -30 - has_trait = sadistic - } - } - } - - # Offer trade: top liege. - option = { - name = fp1_trade_events.0002.b - trigger = { - scope:county.holder != scope:county.holder.top_liege - } - - # Show offer results. - show_as_tooltip = { - random_list = { - # We only want to show the two possibilities, actual percentages don't matter, since the results are decided in the recipient's event. - 100 = { - show_chance = no - desc = fp1_trade_events.0002.a.accepted - scope:county.holder.top_liege = { fp1_trade_events_offer_trade_deal_raider_perspective_effect = yes } - } - 100 = { - show_chance = no - desc = fp1_trade_events.0002.a.rejected - custom_tooltip = fp1_trade_events.0002.a.tt - } - } - } - # Send the actual offer. - scope:county.holder.top_liege = { trigger_event = fp1_trade_events.0003 } - # Charge a little prestige to make it a trade-off. - add_prestige = minor_prestige_loss - - stress_impact = { - calm = medium_stress_impact_loss - compassionate = major_stress_impact_loss - wrathful = medium_stress_impact_gain - callous = major_stress_impact_gain - sadistic = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_greed = -0.5 - } - opinion_modifier = { opinion_target = scope:county.holder.top_liege } - modifier = { # Weight up for stress. - add = 20 - has_trait = calm - } - modifier = { # Weight up for stress. - add = 30 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -20 - has_trait = wrathful - } - modifier = { # Weight down for stress. - add = -20 - has_trait = callous - } - modifier = { # Weight down for stress. - add = -30 - has_trait = sadistic - } - } - } - - # Pillage it anyway. - option = { - name = fp1_trade_events.0002.c - - # Nahhhhh, screw it. - custom_tooltip = fp1_trade_events.0002.c.tt - - stress_impact = { - wrathful = medium_stress_impact_loss - callous = major_stress_impact_loss - sadistic = major_stress_impact_loss - calm = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_compassion = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = wrathful - } - modifier = { # Weight up for stress. - add = 20 - has_trait = callous - } - modifier = { # Weight up for stress. - add = 30 - has_trait = sadistic - } - modifier = { # Weight down for stress. - add = -20 - has_trait = calm - } - modifier = { # Weight down for stress. - add = -30 - has_trait = compassionate - } - } - } - - # Pillage & don't poke me about this again. - option = { - name = fp1_trade_events.0002.d - # AI don't need an opt-out. - trigger = { is_ai = no } - - # Furthermore, screw it for a very long time. - custom_tooltip = fp1_trade_events.0002.d.tt - add_character_flag = { flag = had_event_fp1_trade_events_0002 } - - stress_impact = { - wrathful = medium_stress_impact_loss - callous = major_stress_impact_loss - sadistic = major_stress_impact_loss - calm = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_compassion = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = wrathful - } - modifier = { # Weight up for stress. - add = 20 - has_trait = callous - } - modifier = { # Weight up for stress. - add = 30 - has_trait = sadistic - } - modifier = { # Weight down for stress. - add = -20 - has_trait = calm - } - modifier = { # Weight down for stress. - add = -30 - has_trait = compassionate - } - } - } -} - -scripted_effect fp1_set_prime_trade_partner_effect = { - # Store the variable for general tracking. - set_variable = { - name = fp1_prime_trade_deal - value = scope:recipient - days = fp1_trade_events_truce_length_value - } - # Fire off the renewal event from the date of expiry. - trigger_event = { - id = fp1_trade_events.0011 - days = fp1_trade_events_truce_renewal_date_value - } - # Trigger the on_action. - if = { - limit = { - NOT = { has_character_flag = fp1_trade_events_cycle_start } - } - add_character_flag = fp1_trade_events_cycle_start - trigger_event = { on_action = fp1_trade_events_cycle } - } -} - -# A raider in your lands would prefer commerce to pillage. -fp1_trade_events.0003 = { - type = character_event - title = fp1_trade_events.0003.t - desc = fp1_trade_events.0003.desc - theme = raid - left_portrait = { - character = scope:raider - animation = personality_bold - } - right_portrait = { - character = scope:recipient - animation = disapproval - } - override_background = { reference = burning_building } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - } - - immediate = { - # Grab a scope:recipient for the portraits, since this may have gone to two different characters. - save_scope_as = recipient - } - - # Unexpected, but highly welcome. - option = { - name = fp1_trade_events.0003.a - - # Apply effects & inform scope:raider. - hidden_effect = { - scope:raider = { - send_interface_toast = { - title = fp1_trade_events.0003.a.tt_success - left_icon = scope:recipient - scope:recipient = { fp1_trade_events_offer_trade_deal_raider_perspective_effect = yes } - } - # Quietly work out if this would become their pre-eminent trade deal. - ## Due to no existing prime trade deal. - if = { - limit = { - NOT = { has_variable = fp1_prime_trade_deal } - } - fp1_set_prime_trade_partner_effect = yes - } - ## Due to a dead/landless prime trade deal or cancelled truces. - else_if = { - limit = { - has_variable = fp1_prime_trade_deal - var:fp1_prime_trade_deal = { - OR = { - is_alive = no - is_landed = no - NOR = { - has_truce = scope:raider - scope:raider = { has_truce = var:fp1_prime_trade_deal } - } - } - } - } - fp1_set_prime_trade_partner_effect = yes - } - ## Due to scope:recipient being of a higher tier than their current one. - else_if = { - limit = { - has_variable = fp1_prime_trade_deal - scope:recipient.primary_title.tier > var:fp1_prime_trade_deal.primary_title.tier - } - fp1_set_prime_trade_partner_effect = yes - } - } - } - fp1_trade_events_offer_trade_deal_defender_perspective_effect = yes - - stress_impact = { - compassionate = medium_stress_impact_loss - forgiving = major_stress_impact_loss - callous = medium_stress_impact_gain - sadistic = major_stress_impact_gain - vengeful = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_vengefulness = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = compassionate - } - modifier = { # Weight up for stress. - add = 30 - has_trait = forgiving - } - modifier = { # Weight down for stress. - add = -20 - has_trait = callous - } - modifier = { # Weight down for stress. - add = -30 - has_trait = sadistic - } - modifier = { # Weight down for stress. - add = -40 - has_trait = vengeful - } - } - } - - # *Trade*? With these murderers?! - option = { - name = fp1_trade_events.0003.b - - # Gain some prestige for turning down these marauders. - add_prestige = minor_prestige_gain - # Inform scope:raider that negotiations have failed. - hidden_effect = { - scope:raider = { - send_interface_toast = { - title = fp1_trade_events.0003.b.tt_failure - left_icon = scope:recipient - custom_tooltip = fp1_trade_events.0003.b.tt_failure - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = major_stress_impact_gain - callous = medium_stress_impact_loss - sadistic = major_stress_impact_loss - vengeful = major_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_vengefulness = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = callous - } - modifier = { # Weight up for stress. - add = 30 - has_trait = sadistic - } - modifier = { # Weight up for stress. - add = 40 - has_trait = vengeful - } - modifier = { # Weight down for stress. - add = -20 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -30 - has_trait = forgiving - } - } - } -} - -################################################## -# Comfortable Accomodation -# by Ewan Cowhig Croft -# 0011 - 0020 -################################################## - -scripted_trigger fp1_prime_trade_partner_still_valid_trigger = { - exists = $RAIDER$.var:fp1_prime_trade_deal - $RAIDER$.var:fp1_prime_trade_deal = { - this = $RECIPIENT$ - is_alive = yes - is_landed = yes - # Make sure the truce hasn't been cancelled. - has_truce = $RAIDER$ - $RAIDER$ = { has_truce = var:fp1_prime_trade_deal } - # And that the characters haven't wound up in the same realm somehow. - NOT = { top_liege = $RAIDER$.top_liege } - } -} - -scripted_effect fp1_trade_events_trade_renewed_raider_perspective_effect = { - # Add the truce. - add_truce_both_ways = { - character = scope:recipient - days = fp1_trade_events_truce_length_value - name = TRUCE_TRADE_DEAL - } - # Nudge towards friendship. - progress_towards_friend_effect = { - CHARACTER = scope:recipient - OPINION = 30 - REASON = friend_fp1_renewed_trade_deal - } - # Gain some prestige. - add_prestige = major_prestige_gain - # Sort deal veterancy. - set_variable = { - name = fp1_renewed_trade_deal - value = scope:recipient - days = fp1_trade_events_truce_length_value - } -} - -scripted_effect fp1_trade_events_trade_renewed_defender_perspective_effect = { - # Truce added in scope:raider's perspective. - show_as_tooltip = { - add_truce_both_ways = { - character = scope:raider - days = fp1_trade_events_truce_length_value - name = TRUCE_TRADE_DEAL - } - } - # Nudge towards friendship. - show_as_tooltip = { - progress_towards_friend_effect = { - CHARACTER = scope:raider - OPINION = 30 - REASON = friend_fp1_renewed_trade_deal - } - } - # Since prestige is the independence reward, we give a little bit of static cash. - add_gold = 50 -} - -scripted_effect fp1_trade_events_trade_renewal_rejected_effect = { - add_prestige = minor_prestige_loss - custom_tooltip = fp1_trade_events.0011.b.tt -} - -# A trade ceasefire has expired and can be renewed. -fp1_trade_events.0011 = { - type = character_event - title = fp1_trade_events.0011.t - desc = { - first_valid = { - # Not your first renewal. - triggered_desc = { - trigger = { - exists = var:fp1_renewed_trade_deal - var:fp1_renewed_trade_deal = var:fp1_prime_trade_deal - } - desc = fp1_trade_events.0011.desc.subsequent_renewal - } - # First time renewing this particular deal. - desc = fp1_trade_events.0011.desc.first_renewal - } - desc = fp1_trade_events.0011.desc.outro - } - theme = stewardship - left_portrait = { - character = scope:raider - animation = personality_rational - } - right_portrait = { - character = scope:recipient - animation = personality_bold - } - override_background = { reference = market } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks. - is_landed = yes - # Scope:raider's prime trade deal must still be valid. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:recipient - RAIDER = scope:raider - } - } - - # A grand offer! - option = { - name = fp1_trade_events.0011.a - # Make sure players in MP don't cheese anything. - trigger = { - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:recipient - RAIDER = scope:raider - } - } - - # You offer a renewal to scope:recipient. - random_list = { - 100 = { - show_chance = no - desc = fp1_trade_events.0011.a.accepted - show_as_tooltip = { fp1_trade_events_trade_renewed_raider_perspective_effect = yes } - } - 100 = { - show_chance = no - desc = fp1_trade_events.0011.a.rejected - show_as_tooltip = { fp1_trade_events_trade_renewal_rejected_effect = yes } - } - } - scope:recipient = { trigger_event = fp1_trade_events.0012 } - - stress_impact = { - honest = minor_stress_impact_loss - arbitrary = medium_stress_impact_gain - fickle = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - ai_sociability = 0.25 - ai_rationality = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = honest - } - modifier = { # Weight down for stress. - add = -20 - has_trait = arbitrary - } - modifier = { # Weight down for stress. - add = -20 - has_trait = fickle - } - } - } - - # This has run its course... - option = { - name = fp1_trade_events.0011.b - - # A bit of consolation prestige for your hard-work. - add_prestige = minor_prestige_gain - # Confirm that the deal will lapse as expected. - custom_tooltip = fp1_trade_events.0011.b.tt - - stress_impact = { - arbitrary = minor_stress_impact_loss - fickle = minor_stress_impact_loss - honest = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.25 - ai_sociability = -0.25 - ai_rationality = -0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = arbitrary - } - modifier = { # Weight up for stress. - add = 10 - has_trait = fickle - } - modifier = { # Weight down for stress. - add = -10 - has_trait = honest - } - } - } -} - -# A trading partner proposes an extension. -fp1_trade_events.0012 = { - type = character_event - title = fp1_trade_events.0012.t - desc = { - first_valid = { - # Not your first renewal. - triggered_desc = { - trigger = { - exists = var:fp1_renewed_trade_deal - var:fp1_renewed_trade_deal = var:fp1_prime_trade_deal - } - desc = fp1_trade_events.0012.desc.subsequent_renewal - } - # First time renewing this particular deal. - desc = fp1_trade_events.0012.desc.first_renewal - } - desc = fp1_trade_events.0012.desc.outro - } - theme = stewardship - left_portrait = { - character = scope:recipient - animation = personality_rational - } - right_portrait = { - character = scope:raider - animation = admiration - } - override_background = { reference = market } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Scope:raider's prime trade deal must still be valid. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:recipient - RAIDER = scope:raider - } - } - - # A most agreeable proposal. - option = { - name = fp1_trade_events.0012.a - # Make sure players in MP don't cheese anything. - trigger = { - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:recipient - RAIDER = scope:raider - } - } - - # You agree to a renewal with scope:raider. - fp1_trade_events_trade_renewed_defender_perspective_effect = yes - # Inform scope:raider. - scope:raider = { - hidden_effect = { - send_interface_toast = { - title = fp1_trade_events.0012.a.tt_success - left_icon = scope:recipient - fp1_trade_events_trade_renewed_raider_perspective_effect = yes - } - } - } - - stress_impact = { - honest = minor_stress_impact_loss - arbitrary = medium_stress_impact_gain - fickle = medium_stress_impact_gain - } - ai_chance = { - base = 100 - opinion_modifier = { opinion_target = scope:raider} - ai_value_modifier = { - ai_honor = 0.5 - ai_sociability = 0.25 - ai_rationality = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = honest - } - modifier = { # Weight down for stress. - add = -20 - has_trait = arbitrary - } - modifier = { # Weight down for stress. - add = -20 - has_trait = fickle - } - } - } - - # I'm done with this GetWomanMan. - option = { - name = fp1_trade_events.0012.b - - # A bit of consolation prestige for your independence. - add_prestige = minor_prestige_gain - # Confirm that the deal will lapse as expected. - custom_tooltip = fp1_trade_events.0012.b.tt - # Inform scope:raider, who is disappointed. - scope:raider = { - add_opinion = { - target = scope:recipient - modifier = disappointed_opinion - opinion = -20 - } - hidden_effect = { - send_interface_toast = { - title = fp1_trade_events.0012.b.tt_failure - left_icon = scope:recipient - fp1_trade_events_trade_renewal_rejected_effect = yes - } - } - } - - stress_impact = { - arbitrary = minor_stress_impact_loss - fickle = minor_stress_impact_loss - honest = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.25 - ai_sociability = -0.25 - ai_rationality = -0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = arbitrary - } - modifier = { # Weight up for stress. - add = 10 - has_trait = fickle - } - modifier = { # Weight down for stress. - add = -10 - has_trait = honest - } - } - } -} - -################################################## -# Visitors from Afar -# by Ewan Cowhig Croft -# 0021 - 0040 -################################################## - -scripted_effect fp1_trade_events_0021_acquire_courtier_effect = { - # Acquire selection and boost opinion. - add_courtier = $SELECTION$ - progress_towards_friend_effect = { - CHARACTER = $SELECTION$ - OPINION = 100 - REASON = friend_accepted_courtier - } - # Ditch the rest. - hidden_effect = { - scope:merchant = { - if = { - limit = { - NOT = { this = $SELECTION$ } - } - death = { death_reason = death_vanished } - } - } - scope:priest = { - if = { - limit = { - NOT = { this = $SELECTION$ } - } - death = { death_reason = death_vanished } - } - } - if = { - limit = { - exists = scope:spy - NOT = { scope:spy = $SELECTION$ } - } - scope:spy = { - death = { death_reason = death_vanished } - } - } - } -} - -# Courtiers swap between two places that trade with each other. -fp1_trade_events.0021 = { - type = character_event - title = fp1_trade_events.0021.t - desc = fp1_trade_events.0021.desc - theme = alliance - left_portrait = { - character = scope:merchant - animation = personality_greedy - } - right_portrait = { - character = scope:priest - animation = personality_zealous - } - lower_center_portrait = scope:spy - lower_right_portrait = var:fp1_prime_trade_deal - override_background = { reference = docks } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks. - ## Allow when commanding to be fairer to people out raiding, which we incentivise you to do personally to get pacts to begin with. - is_available_adult_or_is_commanding = yes - NOT = { has_character_flag = had_event_fp1_trade_events_0021 } - is_landed = yes - # Scope:raider's prime trade deal must still be valid. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = root.var:fp1_prime_trade_deal - RAIDER = root - } - } - - weight_multiplier = { - base = 1 - - # Weight up a little for certain lifestyle traits, as these spread stories of your success and accomplishments. - modifier = { - add = 0.25 - has_trait = diplomat - } - modifier = { - add = 0.25 - has_trait = avaricious - } - # Weight up for this being a renewed treaty. - modifier = { - add = 1 - exists = root.var:fp1_renewed_trade_deal - exists = root.var:fp1_prime_trade_deal - root.var:fp1_prime_trade_deal = root.var:fp1_renewed_trade_deal - } - } - - immediate = { - add_character_flag = { - flag = had_event_fp1_trade_events_0021 - days = 1825 - } - # Save some things for loc & future events. - save_scope_as = raider - var:fp1_prime_trade_deal = { save_scope_as = partner } - # Create our players. - ## A merchant. - create_character = { - template = fp1_trade_partner_merchant - location = root.capital_province - save_scope_as = merchant - } - ## A priest. - create_character = { - template = fp1_trade_partner_priest - location = root.capital_province - save_scope_as = priest - } - ## And a spy, if appropriate. - if = { - limit = { - NOT = { has_trait = trusting } - intrigue >= high_skill_rating - } - create_character = { - template = fp1_trade_partner_spy - location = root.capital_province - save_scope_as = spy - } - } - } - - # I could use someone to count my coin... - option = { - name = fp1_trade_events.0021.a - - # Select the merchant. - fp1_trade_events_0021_acquire_courtier_effect = { SELECTION = scope:merchant } - - stress_impact = { - trusting = minor_stress_impact_loss - generous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_sociability = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -20 - has_trait = generous - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - } - } - - # Welcome to my service, [priest.GetFirstName]! - option = { - name = fp1_trade_events.0021.b - - # Select the priest. - fp1_trade_events_0021_acquire_courtier_effect = { SELECTION = scope:priest } - - stress_impact = { - trusting = minor_stress_impact_loss - zealous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.25 - ai_zeal = -0.5 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -20 - has_trait = zealous - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - } - } - - # And who is this accompanying you? - option = { - name = fp1_trade_events.0021.c - trigger = { exists = scope:spy } - skill = intrigue - - fp1_trade_events_0021_acquire_courtier_effect = { SELECTION = scope:spy } - - stress_impact = { - trusting = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - } - } - - # Move along, foreigners, my agreement is with [recipient.GetFirstName]. - option = { - name = fp1_trade_events.0021.d - - # Gain some prestige for your haughtiness. - add_prestige = medium_prestige_gain - # But annoy your trading partner. - reverse_add_opinion = { - target = var:fp1_prime_trade_deal - modifier = annoyed_opinion - opinion = -40 - } - # Dispose of the guests. - hidden_effect = { - scope:merchant = { - death = { death_reason = death_vanished } - } - scope:priest = { - death = { death_reason = death_vanished } - } - if = { - limit = { exists = scope:spy } - scope:spy = { - death = { death_reason = death_vanished } - } - } - } - - stress_impact = { - paranoid = medium_stress_impact_loss - shy = medium_stress_impact_loss - compassionate = minor_stress_impact_gain - gregarious = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.25 - ai_sociability = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = paranoid - } - modifier = { # Weight up for stress. - add = 20 - has_trait = shy - } - modifier = { # Weight down for stress. - add = -10 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -30 - has_trait = gregarious - } - } - } - - after = { - # Send a companion event to var:fp1_prime_trade_deal. - #var:fp1_prime_trade_deal = { trigger_event = fp1_trade_events.0031 } - var:fp1_prime_trade_deal = { - trigger_event = { - id = fp1_trade_events.0031 - days = 1 - } - } - } -} - -fp1_trade_events.0031 = { - type = character_event - title = fp1_trade_events.0031.t - desc = fp1_trade_events.0031.desc - theme = alliance - left_portrait = { - character = scope:warrior - animation = personality_bold - } - lower_right_portrait = scope:raider - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks. - ## Allow when commanding - we want to make trading compacts a bit more equal. - is_available_adult = yes - NOT = { has_character_flag = had_event_fp1_trade_events_0031 } - is_landed = yes - # Scope:raider's prime trade deal must still be valid. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:raider.var:fp1_prime_trade_deal - RAIDER = scope:raider - } - } - - immediate = { - add_character_flag = { - flag = had_event_fp1_trade_events_0031 - days = 1825 - } - # Create scope:warrior. - create_character = { - template = fp1_trade_partner_warrior - location = scope:raider.var:fp1_prime_trade_deal.capital_province - save_scope_as = warrior - } - } - - # We can always use another sword! - option = { - name = fp1_trade_events.0031.a - - # Gain the warrior, who's understandably pretty hyped. - add_courtier = scope:warrior - progress_towards_friend_effect = { - CHARACTER = scope:warrior - OPINION = 100 - REASON = friend_accepted_courtier - } - - stress_impact = { - trusting = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - } - } - - # Be gone, bandit. - option = { - name = fp1_trade_events.0031.b - - # Gain some prestige for your haughtiness. - add_prestige = medium_prestige_gain - # But annoy your trading partner, though not as much as snubbing an open delegation on the inverse. - reverse_add_opinion = { - target = scope:raider - modifier = annoyed_opinion - opinion = -20 - } - # Dispose of the guest. - hidden_effect = { - scope:warrior = { - death = { death_reason = death_vanished } - } - } - - stress_impact = { - paranoid = medium_stress_impact_loss - shy = medium_stress_impact_loss - compassionate = minor_stress_impact_gain - gregarious = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.25 - ai_sociability = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = paranoid - } - modifier = { # Weight up for stress. - add = 20 - has_trait = shy - } - modifier = { # Weight down for stress. - add = -10 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -30 - has_trait = gregarious - } - } - } -} - -################################################## -# Belligerents with Benefits -# by Ewan Cowhig Croft -# 0041 - 0060 -################################################## - -scripted_trigger fp1_trade_events_0041_advanced_culture_comparison_trigger = { - scope:raider.culture = { - # Must have separate cultures for one to be more advanced. - this != scope:partner.culture - # And scope:partner's must be in a later era than scope:raider's. - ## Tribal. - trigger_if = { - limit = { - NOT = { has_cultural_era_or_later = culture_era_early_medieval } - } - scope:partner.culture = { has_cultural_era_or_later = culture_era_early_medieval } - } - ## Early Medieval. - trigger_if = { - limit = { - NOT = { has_cultural_era_or_later = culture_era_high_medieval } - } - scope:partner.culture = { has_cultural_era_or_later = culture_era_high_medieval } - } - ## High Medieval. - trigger_if = { - limit = { - NOT = { has_cultural_era_or_later = culture_era_late_medieval } - } - scope:partner.culture = { has_cultural_era_or_later = culture_era_late_medieval } - } - ## And you can't be later than the Late Medieval, so we ignore that'un. - } -} - -scripted_trigger fp1_trade_events_0041_valid_partner_counties_trigger = { - has_county_modifier = recently_looted_modifier - NOT = { has_county_modifier = fp1_trade_events_raid_consultants_modifier } -} - -scripted_effect fp1_trade_events_0041_offer_consultation_deal_raider_perspective_effect = { - # You pay coin and get discounts to construction in your domain. - remove_treasury_or_gold = massive_gold_value - # Give a modifier with development growth to underdeveloped holdings. - every_held_title = { - title_tier = county - limit = { - development_level <= 15 - } - custom = fp1_trade_events.0041.foreign_architects_growth.tt - add_county_modifier = { - modifier = fp1_trade_events_foreign_architects_modifier - years = 20 - } - } - # And one without it to holdings that are adequately developed. - every_held_title = { - title_tier = county - limit = { - development_level >= 16 - } - custom = fp1_trade_events.0041.foreign_architects_no_growth.tt - add_county_modifier = { - modifier = fp1_trade_events_foreign_architects_no_growth_modifier - years = 20 - } - } - # Plus stepped friendship with scope:partner. - progress_towards_friend_effect = { - CHARACTER = scope:partner - OPINION = 30 - REASON = friend_fp1_renewed_trade_deal - } - # Scope:partner gets some help with raiding. - custom_tooltip = fp1_trade_events.0041.partner_gets_raid_aid.tt -} - -scripted_effect fp1_trade_events_0041_offer_consultation_deal_partner_perspective_effect = { - # You pay coin and get raid protection increases in one duchy. - remove_treasury_or_gold = scandinavian_adventurer_fp1_0041_gold_value - # Give modifiers that make that duchy better able to withstand raids. - $TARGET_DUCHY$ = { - save_scope_as = target_duchy - every_in_de_jure_hierarchy = { - limit = { - tier = tier_county - holder = { - OR = { - any_liege_or_above = { this = scope:partner } - this = scope:partner - } - } - } - custom = fp1_trade_events.0041.partner.benefiting_counties.tt - add_county_modifier = { - modifier = fp1_trade_events_raid_consultants_modifier - years = 20 - } - # Grab the holders for happiness purposes. - holder = { - if = { - limit = { - this != scope:partner - } - add_to_list = happy_with_raid_proofing_list - } - } - } - } - # Anyone who holds lands here other than you is duly grateful. - every_in_list = { - list = happy_with_raid_proofing_list - add_opinion = { - target = scope:partner - modifier = grateful_opinion - opinion = 30 - } - } - # Plus, stepped friendship with scope:raider (actual effect handled scope:raider-side). - show_as_tooltip = { - progress_towards_friend_effect = { - CHARACTER = scope:raider - OPINION = 30 - REASON = friend_fp1_renewed_trade_deal - } - } - # Scope:raider gets help with civic works. - custom_tooltip = fp1_trade_events.0041.raider_gets_civic_aid.tt -} - -scripted_effect fp1_trade_events_0041_consultation_rejected_effect = { - # Lose a fair bit of prestige. - add_prestige = medium_prestige_loss -} - -# Beneficial modifiers are swapped between the capital and a foreign trade location. -fp1_trade_events.0041 = { - type = character_event - title = fp1_trade_events.0041.t - desc = fp1_trade_events.0041.desc - theme = alliance - left_portrait = { - character = scope:raider - animation = personality_forgiving - } - right_portrait = { - character = scope:partner - animation = personality_content - } - override_background = { reference = docks } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks. - ## Allow when commanding to be fairer to people out raiding, which we incentivise you to do personally to get pacts to begin with. - is_available_adult_or_is_commanding = yes - NOT = { has_character_flag = had_event_fp1_trade_events_0041 } - is_landed = yes - # Scope:raider's prime trade deal must still be valid & available. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = root.var:fp1_prime_trade_deal - RAIDER = root - } - root.var:fp1_prime_trade_deal = { is_available_adult_or_is_commanding = yes } - # And they've gotta be able to take the deal in some fashion. - root.var:fp1_prime_trade_deal = { - any_sub_realm_county = { fp1_trade_events_0041_valid_partner_counties_trigger = yes } - } - # Plus, there must be a trade to be made. - ## Meaning one must be tribal, the other feudal. - government_has_flag = government_is_tribal - root.var:fp1_prime_trade_deal = { - NOT = { government_has_flag = government_is_tribal } - } - ## And that scope:partner can't raid for some other reason. - root.var:fp1_prime_trade_deal = { can_raid_trigger = no } - } - - weight_multiplier = { - base = 1 - - # Weight up a little for certain lifestyle traits, as these spread stories of your success and accomplishments. - modifier = { - add = 0.25 - has_trait = diplomat - } - modifier = { - add = 0.25 - has_trait = avaricious - } - # Weight up for this being a renewed treaty. - modifier = { - add = 1 - exists = root.var:fp1_renewed_trade_deal - exists = root.var:fp1_prime_trade_deal - root.var:fp1_prime_trade_deal = root.var:fp1_renewed_trade_deal - } - } - - immediate = { - add_character_flag = { - flag = had_event_fp1_trade_events_0041 - days = 3625 - } - # Save some things for loc & future events. - save_scope_as = raider - var:fp1_prime_trade_deal = { save_scope_as = partner } - } - - # Could they build me a palace in the [partner.GetCulture] style? - option = { - name = { - trigger = { fp1_trade_events_0041_advanced_culture_comparison_trigger = yes } - text = fp1_trade_events.0041.a.advanced - } - name = { - trigger = { fp1_trade_events_0041_advanced_culture_comparison_trigger = no } - text = fp1_trade_events.0041.a.fallback - } - trigger = { - can_make_expensive_purchase_trigger = { PRICE = scandinavian_adventurer_fp1_0041_gold_value } - } - - # Show possible results depending on scope:partner's response. - random_list = { - 100 = { - show_chance = no - desc = fp1_trade_events.0041.a.offer_accepted - show_as_tooltip = { fp1_trade_events_0041_offer_consultation_deal_raider_perspective_effect = yes } - } - 100 = { - show_chance = no - desc = fp1_trade_events.0041.a.offer_rejected - show_as_tooltip = { fp1_trade_events_0041_consultation_rejected_effect = yes } - } - } - # And send scope:partner their event. - scope:partner = { trigger_event = fp1_trade_events.0051 } - - stress_impact = { - trusting = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - } - } - - # Let's keep this informal. - option = { - name = fp1_trade_events.0041.b - - # Stress loss; handled in stress_impact block. - - stress_impact = { - base = medium_stress_impact_loss - paranoid = medium_stress_impact_loss - gregarious = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.25 - ai_sociability = -0.5 - } - modifier = { # Weight up for stress. - add = 20 - has_trait = paranoid - } - modifier = { # Weight down for stress. - add = -30 - has_trait = gregarious - } - } - } -} - -scripted_effect fp1_trade_events_0051_inform_scope_raider_effect = { - hidden_effect = { - scope:raider = { - send_interface_toast = { - title = fp1_trade_events.0051.offer_accepted - left_icon = scope:partner - fp1_trade_events_0041_offer_consultation_deal_raider_perspective_effect = yes - } - } - } -} - -fp1_trade_events.0051 = { - type = character_event - title = fp1_trade_events.0051.t - desc = fp1_trade_events.0051.desc - theme = alliance - left_portrait = { - character = scope:partner - animation = personality_forgiving - } - right_portrait = { - character = scope:raider - animation = personality_content - } - override_background = { reference = docks } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks done scope:raider's side. - # Scope:raider's prime trade deal must still be valid. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = scope:raider.var:fp1_prime_trade_deal - RAIDER = scope:raider - } - } - - immediate = { - # Build a list of valid duchies. - ## First, we sort through all valid counties and add their duchies to a list. - every_sub_realm_county = { - limit = { fp1_trade_events_0041_valid_partner_counties_trigger = yes } - duchy = { add_to_list = duchies_valid_for_raid_proofing_list } - } - ## Then we order the list to pick the largest duchies. - ordered_in_list = { - list = duchies_valid_for_raid_proofing_list - max = 3 - order_by = { - value = 0 - - # Then we add a point for every de jure county that's also de facto part of the sub-realm. - every_in_de_jure_hierarchy = { - limit = { - tier = tier_county - holder = { - OR = { - this = scope:partner - any_liege_or_above = { this = scope:partner } - } - } - } - add = 1 - - # And again for every one that has _also_ been raided recently, since that's a good indicator of raid-density. - if = { - limit = { - any_county_province = { has_province_modifier = recently_looted_modifier } - } - add = 1 - } - } - } - if = { - limit = { - NOT = { exists = scope:option_1 } - } - save_scope_as = option_1 - } - if = { - limit = { - NOT = { - this = scope:option_1 - exists = scope:option_2 - } - } - save_scope_as = option_2 - } - if = { - limit = { - NOT = { - this = scope:option_1 - this = scope:option_2 - exists = scope:option_3 - } - } - save_scope_as = option_3 - } - } - } - - # Scope:option_1 could use some experts... - option = { - name = fp1_trade_events.0051.a - - # Apply effects to scope:option_1. - fp1_trade_events_0041_offer_consultation_deal_partner_perspective_effect = { TARGET_DUCHY = scope:option_1 } - # Inform scope:raider of the decision. - fp1_trade_events_0051_inform_scope_raider_effect = yes - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - greedy = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_rationality = 0.5 - ai_greed = -0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = compassionate - } - modifier = { # Weight down for stress. - add = -20 - has_trait = callous - } - modifier = { # Weight down for stress. - add = -20 - has_trait = sadistic - } - modifier = { # Weight down for stress. - add = -30 - has_trait = greedy - } - } - } - - # Scope:option_2 might be a good place for them? - option = { - name = fp1_trade_events.0051.b - trigger = { exists = scope:option_2 } - - # Apply effects to scope:option_2. - fp1_trade_events_0041_offer_consultation_deal_partner_perspective_effect = { TARGET_DUCHY = scope:option_2 } - # Inform scope:raider of the decision. - fp1_trade_events_0051_inform_scope_raider_effect = yes - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - greedy = major_stress_impact_gain - } - ai_chance = { - # AI should always pick the first & mostly-best option. - base = 0 - } - } - - # I think I'd prefer to shore up scope:option_3. - option = { - name = fp1_trade_events.0051.c - trigger = { exists = scope:option_3 } - - # Apply effects to scope:option_3. - fp1_trade_events_0041_offer_consultation_deal_partner_perspective_effect = { TARGET_DUCHY = scope:option_3 } - # Inform scope:raider of the decision. - fp1_trade_events_0051_inform_scope_raider_effect = yes - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - greedy = major_stress_impact_gain - } - ai_chance = { - # AI should always pick the first & mostly-best option. - base = 0 - } - } - - # What an outrageous proposal! - option = { - name = fp1_trade_events.0051.d - - # Gain a little consolation prestige. - add_prestige = minor_prestige_gain - # Inform scope:raider of the decision. - hidden_effect = { - scope:raider = { - send_interface_toast = { - title = fp1_trade_events.0051.offer_rejected - left_icon = scope:partner - fp1_trade_events_0041_consultation_rejected_effect = yes - } - } - } - - stress_impact = { - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - compassionate = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.25 - ai_rationality = -0.25 - ai_compassion = -0.5 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = callous - } - modifier = { # Weight up for stress. - add = 10 - has_trait = sadistic - } - modifier = { # Weight down for stress. - add = -30 - has_trait = compassionate - } - } - } -} - - - - - - - - - - -################################################## -# SPECIAL TRADE EVENTS - -################################################## -# The Northerner Menace -# by Ewan Cowhig Croft -# 1131 - 1170 -################################################## - -# You buy off an SA's troops, or offer them a position under you. -fp1_trade_events.1131 = { - type = character_event - title = fp1_trade_events.1131.t - desc = fp1_trade_events.1131.desc - theme = war - left_portrait = { - character = scope:defender - animation = worry - } - right_portrait = { - character = scope:attacker - animation = personality_greedy - } - override_background = { reference = fp1_beached_longships } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Make sure the war is still ongoing - any_character_war = { - using_cb = fp1_scandi_adventurer_conquest - primary_attacker = scope:attacker - primary_defender = scope:defender - } - } - - immediate = { - # Grab the CB for general reference. - random_character_war = { - limit = { - using_cb = fp1_scandi_adventurer_conquest - primary_attacker = scope:attacker - primary_defender = scope:defender - } - save_scope_as = sa_war - } - } - - # Never! Back to your frozen hellscape of a home, scum! - option = { - name = fp1_trade_events.1131.a - - # Gain a bit of prestige for your boasting. - add_prestige = medium_prestige_gain - # Stress gain trade-off handled in stress impact. - # Clarify that this is merely another trade-off option. - custom_tooltip = fp1_trade_events.1131.d.tt - - stress_impact = { - base = medium_stress_gain - arrogant = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - fickle = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_energy = 0.25 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = arrogant - } - modifier = { # Weight up for stress. - add = 10 - has_trait = ambitious - } - modifier = { # Weight up for stress. - add = 10 - has_trait = stubborn - } - modifier = { # Weight up for stress. - add = 10 - has_trait = vengeful - } - modifier = { # Weight down for stress. - add = -20 - has_trait = humble - } - modifier = { # Weight down for stress. - add = -20 - has_trait = content - } - modifier = { # Weight down for stress. - add = -20 - has_trait = fickle - } - modifier = { # Weight down for stress. - add = -20 - has_trait = forgiving - } - } - } - - # Well, if it's land they want... - option = { - name = fp1_trade_events.1131.b - trigger = { - # Must be able to vassalise a duke. - highest_held_title_tier >= tier_kingdom - # Target duchy doesn't contain a player that isn't scope:defender. - NOT = { - any_player = { - # First, see if they're a vassal of scope:defender. - any_liege_or_above = { this = scope:defender } - # And if they are, make sure they have no titles held within the appropriate lands. - save_temporary_scope_as = vassal_player - any_in_list = { - list = target_titles - holder = scope:vassal_player - } - } - } - # Scope:defender must control at least some lands outside of the target duchy. - any_held_title = { - NOT = { is_in_list = target_titles } - } - } - - # You allow them to win the war... - scope:sa_war = { end_war = attacker } - add_prestige = major_prestige_loss - # ... but then immediately vassalise them. - create_title_and_vassal_change = { - type = swear_fealty - save_scope_as = change - } - scope:attacker = { - change_liege = { - liege = scope:defender - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - # This also gives a nice long truce so that they can't immediately usurp you. - hidden_effect = { - cancel_truce_both_ways = scope:attacker - } - add_truce_both_ways = { - character = scope:attacker - days = 7300 - name = FP1_SCANDINAVIAN_ADVENTURER_VASSAL_TRUCE_NAME - } - # Plus we whack some opinion in there for good measure. - progress_towards_friend_effect = { - CHARACTER = scope:attacker - OPINION = 50 - REASON = friend_fp1_renewed_trade_deal - } - # Finally, add a breather before the next SA. - fp1_add_realm_size_appropriate_sa_reprieve_effect = yes - - stress_impact = { - generous = minor_stress_impact_loss - humble = minor_stress_impact_loss - content = minor_stress_impact_loss - fickle = minor_stress_impact_loss - forgiving = minor_stress_impact_loss - greedy = major_stress_impact_gain - arrogant = major_stress_impact_gain - ambitious = major_stress_impact_gain - stubborn = major_stress_impact_gain - vengeful = major_stress_impact_gain - } - ai_chance = { - # Base 0 so that only a particular kind of AI will go for this. - base = 0 - ai_value_modifier = { - ai_rationality = 0.25 - ai_greed = -0.5 - ai_vengefulness = -0.75 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = generous - } - modifier = { # Weight up for stress. - add = 10 - has_trait = humble - } - modifier = { # Weight up for stress. - add = 10 - has_trait = content - } - modifier = { # Weight up for stress. - add = 10 - has_trait = fickle - } - modifier = { # Weight up for stress. - add = 10 - has_trait = forgiving - } - modifier = { # Weight down for stress. - add = -30 - has_trait = greedy - } - modifier = { # Weight down for stress. - add = -30 - has_trait = arrogant - } - modifier = { # Weight down for stress. - add = -30 - has_trait = ambitious - } - modifier = { # Weight down for stress. - add = -30 - has_trait = stubborn - } - modifier = { # Weight down for stress. - add = -30 - has_trait = vengeful - } - } - } - - # In my experience, soldiers prefer gold to glory. - option = { - name = fp1_trade_events.1131.c - trigger = { - can_make_expensive_purchase_trigger = { PRICE = monumental_gold_value } - } - - # Pay scope:attacker's troops to sod off... - custom_tooltip = fp1_trade_events.1131.c.tt - remove_treasury_or_gold = monumental_treasury_or_gold_value - # ... thereby winning the war. - scope:sa_war = { - set_variable = no_gold_reparations - end_war = defender - } - reverse_add_opinion = { - target = scope:attacker - modifier = humiliated_opinion - opinion = -50 - } - # Add a breather before the next SA. - fp1_add_realm_size_appropriate_sa_reprieve_effect = yes - - stress_impact = { - generous = minor_stress_impact_loss - humble = minor_stress_impact_loss - content = minor_stress_impact_loss - fickle = minor_stress_impact_loss - forgiving = minor_stress_impact_loss - greedy = major_stress_impact_gain - arrogant = major_stress_impact_gain - ambitious = major_stress_impact_gain - stubborn = major_stress_impact_gain - vengeful = major_stress_impact_gain - } - ai_chance = { - # Base allowed to stay high, since the fiscal purchase here is pretty high and the AI usually won't make it anyway. - base = 100 - ai_value_modifier = { - ai_rationality = 0.25 - ai_greed = -0.5 - ai_vengefulness = -0.75 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = generous - } - modifier = { # Weight up for stress. - add = 10 - has_trait = humble - } - modifier = { # Weight up for stress. - add = 10 - has_trait = content - } - modifier = { # Weight up for stress. - add = 10 - has_trait = fickle - } - modifier = { # Weight up for stress. - add = 10 - has_trait = forgiving - } - modifier = { # Weight down for stress. - add = -30 - has_trait = greedy - } - modifier = { # Weight down for stress. - add = -30 - has_trait = arrogant - } - modifier = { # Weight down for stress. - add = -30 - has_trait = ambitious - } - modifier = { # Weight down for stress. - add = -30 - has_trait = stubborn - } - modifier = { # Weight down for stress. - add = -30 - has_trait = vengeful - } - } - } - - # Then we'll banish these Nords to the sea. - option = { - name = fp1_trade_events.1131.d - - # Opt-out. - custom_tooltip = fp1_trade_events.1131.d.tt - - # No stress impact for the opt-out. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.25 - ai_vengefulness = -0.25 - } - } - } -} - -################################################## -# A Holy Helping Hand -# by Ewan Cowhig Croft -# 1171 - 1180 -################################################## - -scripted_trigger fp1_trade_events_1171_child_can_marry_trigger = { - # Rule out some unlikely candidates. - is_available_healthy_ai_adult = yes - is_ruler = no - OR = { - is_courtier_of = root.var:fp1_prime_trade_deal - host ?= root.var:fp1_prime_trade_deal - - } - # Make sure they're compatible. - could_marry_character_trigger = { CHARACTER = root } -} - -scripted_effect fp1_trade_events_1171_marry_partner_child_effect = { - # Marry scope:prospective_spouse. - ## First, we divorce the old one. No need for checks, since we're basically regarding that marriage as invalid under the new faith. - if = { - limit = { is_married = yes } - every_spouse = { - save_temporary_scope_as = current_spouse - scope:raider = { - divorce_effect = { - DIVORCER = scope:raider - DIVORCEE = scope:current_spouse - } - } - } - } - ## Then we perform the new marriage. - if = { - limit = { - has_ep2_dlc_trigger = yes - } - create_grand_wedding_betrothal = { - SPOUSE_1 = root - SPOUSE_2 = scope:prospective_spouse - HOST = root - PROMISEE = scope:partner - } - } - else = { marry = scope:prospective_spouse } - create_alliance = { - target = scope:partner - allied_through_owner = scope:raider - allied_through_target = scope:prospective_spouse - } - # Convert to scope:partner's faith. - set_character_faith_with_conversion = scope:partner.faith - if = { - limit = { - scope:partner.faith = { has_doctrine = doctrine_monotheist } - } - custom_description_no_bullet = { text = mandala_monotheist_warning_tt } - } - # Do so in a very public and celebrated manner, gaining piety. - add_piety = massive_piety_gain - # Paid a dowry by scope:partner. - scope:partner = { - pay_short_term_gold = { - target = scope:raider - gold = massive_gold_value - } - } -} - -# Someone you have a raid-trade agreement with offers the hand of a child and conversion aid. -fp1_trade_events.1171 = { - type = character_event - title = fp1_trade_events.1171.t - desc = fp1_trade_events.1171.desc - theme = alliance - left_portrait = { - character = scope:raider - animation = personality_rational - } - right_portrait = { - character = scope:partner - animation = admiration - } - lower_center_portrait = scope:prospective_spouse - override_background = { reference = docks } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Standard checks. - ## Allow when commanding to be fairer to people out raiding, which we incentivise you to do personally to get pacts to begin with. - is_available_adult_or_is_commanding = yes - NOT = { has_character_flag = had_event_fp1_trade_events_1171 } - is_landed = yes - # Scope:raider's prime trade deal must still be valid & available. - fp1_prime_trade_partner_still_valid_trigger = { - RECIPIENT = root.var:fp1_prime_trade_deal - RAIDER = root - } - root.var:fp1_prime_trade_deal = { is_available_adult_or_is_commanding = yes } - # Must be of a disorganised faith and separate religion. - faith = { - has_doctrine_parameter = unreformed - NOT = { religion = root.var:fp1_prime_trade_deal.religion } - # For that matter, either root must be unmarried, or scope:partner can't have syncretic folk traditions (and so respect for their marriage.) - OR = { - root = { is_married = no } - NOT = { has_doctrine = tenet_unreformed_syncretism } - } - } - # Plus, general considerations. - root.var:fp1_prime_trade_deal = { - # They must really like scope:raider. - opinion = { - target = root - value >= high_positive_opinion - } - # Have a free child. - any_child = { fp1_trade_events_1171_child_can_marry_trigger = yes } - # Not be cynical, so they may care about souls. - NOT = { has_trait = cynical } - # For the sake of sanity, filter out players. - is_ai = yes - # Since it's AI, and specific enough already, we're happy to let them plunge into debt over this. - } - # Finally, just double check the - NAND = { - has_variable_list = humsacd_hofs - is_target_in_variable_list = { - name = humsacd_hofs - target = root.var:fp1_prime_trade_deal.faith - } - } - } - weight_multiplier = { - base = 1 - - # Weight up a little for certain lifestyle traits, as these spread stories of your success and accomplishments. - modifier = { - add = 0.25 - has_trait = diplomat - } - modifier = { - add = 0.25 - has_trait = avaricious - } - # Weight up for this being a renewed treaty. - modifier = { - add = 1 - exists = root.var:fp1_renewed_trade_deal - exists = root.var:fp1_prime_trade_deal - root.var:fp1_prime_trade_deal = root.var:fp1_renewed_trade_deal - } - } - - immediate = { - # Once per lifetime. - add_character_flag = { flag = had_event_fp1_trade_events_1171 } - # Grab our actors. - save_scope_as = raider - var:fp1_prime_trade_deal = { save_scope_as = partner } - ## Including a suitable spouse. - scope:partner = { - random_child = { - limit = { fp1_trade_events_1171_child_can_marry_trigger = yes } - save_scope_as = prospective_spouse - } - } - } - - # SheHe _does_ make quite a compelling case... - option = { - name = fp1_trade_events.1171.a - - # Gain assorted mixed awesome benefits. - fp1_trade_events_1171_marry_partner_child_effect = yes - # Step friendship. - progress_towards_friend_effect = { - CHARACTER = scope:partner - OPINION = 50 - REASON = friend_fp1_converted_faith_married - } - - stress_impact = { - cynical = minor_stress_impact_loss - trusting = minor_stress_impact_loss - greedy = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - zealous = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_greed = 0.5 - ai_zeal = -0.75 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = cynical - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight up for stress. - add = 10 - has_trait = greedy - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - modifier = { # Weight down for stress. - add = -30 - has_trait = zealous - } - } - } - - # Let us swear an oath of fraternity! - option = { - name = fp1_trade_events.1171.b - trigger = { - can_set_relation_best_friend_trigger = { CHARACTER = scope:partner } - } - - # Gain assorted mixed awesome benefits. - hidden_effect = { fp1_trade_events_1171_marry_partner_child_effect = yes } - custom_tooltip = fp1_trade_events.1171.b.tt - # Also, become best friends. - set_relation_best_friend = { reason = best_friend_coverted_and_saved_my_soul copy_reason = friend target = scope:partner } - - stress_impact = { - cynical = minor_stress_impact_loss - trusting = minor_stress_impact_loss - gregarious = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - shy = major_stress_impact_gain - zealous = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 0.5 - ai_zeal = -0.75 - } - modifier = { # Weight up for stress. - add = 10 - has_trait = cynical - } - modifier = { # Weight up for stress. - add = 10 - has_trait = trusting - } - modifier = { # Weight up for stress. - add = 10 - has_trait = gregarious - } - modifier = { # Weight down for stress. - add = -20 - has_trait = paranoid - } - modifier = { # Weight down for stress. - add = -30 - has_trait = shy - } - modifier = { # Weight down for stress. - add = -30 - has_trait = zealous - } - } - } - - # No manner of bribes can tempt me away. - option = { - name = { - trigger = { has_trait = cynical } - text = fp1_trade_events.1171.c.cynical - } - name = { - trigger = { - NOT = { has_trait = cynical } - } - text = fp1_trade_events.1171.c.fallback - } - - # Needless to say, scope:partner is offended. - reverse_add_opinion = { - target = scope:partner - modifier = insulted_opinion - opinion = -40 - } - # But hey, what a thing to turn down, amirite? - add_prestige = major_prestige_gain - - # No stress for the opt-out. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.5 - ai_sociability = -0.5 - } - } - } -} - diff --git a/events/dlc/fp1/fp1_trial_by_combat_events.txt b/events/dlc/fp1/fp1_trial_by_combat_events.txt deleted file mode 100644 index 4a1f60d7e..000000000 --- a/events/dlc/fp1/fp1_trial_by_combat_events.txt +++ /dev/null @@ -1,971 +0,0 @@ -namespace = fp1_tbc - -################################################## -# #Scope:actor-side Events -# 0001 - 0040 Bout Maintenance & Setup -# 0041 - 0060 Scope:actor Results -# -# #Scope:recipient-side Events -# 0101 - 0110 Champion Selection -# 0111 - 0130 Scope:recipient Results -################################################## - - - - - -################################################## -# SCOPE:ACTOR-SIDE EVENTS - -################################################## -# Bout Maintenance & Setup -# by Ewan Cowhig Croft -# 0001 - 0040 -################################################## - -# Everything is set for the bout to begin! -fp1_tbc.0001 = { - type = character_event - window = duel_event - title = fp1_tbc.0001.t - desc = { - desc = fp1_tbc.0001.desc.intro - first_valid = { - triggered_desc = { - trigger = { scope:champion = scope:recipient } - desc = fp1_tbc.0001.desc.recipient_fighting - } - desc = fp1_tbc.0001.desc.recipient_has_champion - } - desc = fp1_tbc.0001.desc.outro - } - theme = prison - left_portrait = { - character = scope:actor - scripted_animation = duel_wield_weapon - } - right_portrait = { - character = scope:champion - scripted_animation = duel_wield_weapon - } - override_background = { reference = terrain_scope } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # If, for any reason, scope:recipient has died or been imprisoned, then the bout is cancelled. - scope:recipient = { - is_alive = yes - is_imprisoned = no - } - # Check that scope:actor is still in a valid state to fight. - trial_by_combat_shown_and_not_invalid_trigger = yes - # And scope:champion likewise. - scope:champion = { - OR = { - this = scope:recipient - eligible_knight_to_champion_trial_by_combat_trigger = yes - } - } - } - - on_trigger_fail = { - # Inform both parties that the duel has invalidated. - scope:actor = { - send_interface_toast = { - title = fp1_tbc.0001.trigger_failure.actor - left_icon = scope:recipient - } - } - scope:recipient = { - send_interface_toast = { - title = fp1_tbc.0001.trigger_failure.recipient - left_icon = scope:actor - } - } - # Reset scope:actor's cooldowns against scope:recipient. - scope:actor = { - remove_interaction_cooldown = challenge_to_trial_by_combat_interaction - remove_interaction_cooldown_against = { - interaction = challenge_to_trial_by_combat_interaction - target = scope:recipient - } - } - } - - immediate = { - play_music_cue = "mx_cue_combat_stinger" - # Nab scope:champion's location for terrain. - scope:champion.location = { - save_scope_as = background_terrain_scope - # And scope:champion's location name for loc. - barony = { save_scope_as = duel_location } - } - } - - # Almost there. - option = { - name = fp1_tbc.0001.a - - # Inform scope:actor that the bout will begin immediately. - custom_tooltip = fp1_tbc.0001.a.tt - # Configure the bout. - ## Tribals strip to the waist. - single_combat_apply_default_shirtlessness_effect = { - ATTACKER = scope:actor - DEFENDER = scope:champion - } - ## Deadly fights. - if = { - limit = { scope:tbc_death = yes } - configure_start_single_combat_effect = { - SC_INITIATOR = scope:actor - SC_ATTACKER = scope:actor - SC_DEFENDER = scope:champion - FATALITY = always - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = fp1_tbc.0011 - INVALIDATION_EVENT = fp1_tbc.0021 - } - } - ## Non-deadly fights. - else = { - configure_start_single_combat_effect = { - SC_INITIATOR = scope:actor - SC_ATTACKER = scope:actor - SC_DEFENDER = scope:champion - FATALITY = no - FIXED = no - LOCALE = terrain_scope - OUTPUT_EVENT = fp1_tbc.0011 - INVALIDATION_EVENT = fp1_tbc.0021 - } - } - # No stress for single-option events. - ai_chance = { - # AI will always choose single option. - base = 100 - } - } -} - -scripted_effect fp1_tbc_non_lethal_results_effect = { - if = { - limit = { - scope:recipient = { is_alive = yes } - } - # TbC ends in cash settlement. - if = { - limit = { scope:tbc_gold = yes } - fp1_tbc_gold_effect = { - TBC_VICTOR = scope:actor - TBC_LOSER = scope:recipient - } - } - # TbC ends in favour settlement. - if = { - limit = { scope:tbc_weak_hook = yes } - fp1_tbc_hook_effect = { - TBC_VICTOR = scope:actor - TBC_LOSER = scope:recipient - } - } - # TbC ends in mandated humiliation. - if = { - limit = { scope:tbc_humiliation = yes } - fp1_tbc_humiliation_effect = { - TBC_LOSER = scope:recipient - TBC_VICTOR = scope:actor - } - } - } -} - -scripted_effect fp1_tbc_consume_imprisonment_reasons_effect = { - if = { - limit = { - scope:actor = { is_alive = yes } - scope:recipient = { is_alive = yes } - } - scope:actor = { consume_imprisonment_reasons = scope:recipient } - } -} - -# Bout has ended, inform affected parties. -fp1_tbc.0011 = { - hidden = yes - - immediate = { - # If any clothes were stripped, put 'em back on. - single_combat_clean_shirtlessness_effect = { - ATTACKER = scope:actor - DEFENDER = scope:champion - } - # Did scope:actor win? - if = { - limit = { scope:sc_victor = scope:actor } - # Apply effects; we do this separately so that there's not a weird day's delay. - fp1_tbc_non_lethal_results_effect = yes - # And send out the ending events. - scope:actor = { - trigger_event = { - id = fp1_tbc.0041 - days = 1 - } - } - scope:recipient = { - trigger_event = { - id = fp1_tbc.0121 - days = 1 - } - } - } - # Or was it scope:champion? - else_if = { - limit = { scope:sc_victor = scope:champion } - # If scope:actor is still alive, they gain stress. - if = { - limit = { - scope:actor = { is_alive = yes } - } - fp1_tbc_actor_defeated_effect = { - TBC_LOSER = scope:actor - TBC_VICTOR = scope:recipient - } - } - # And send out the ending events. - scope:actor = { - trigger_event = { - id = fp1_tbc.0051 - days = 1 - } - } - scope:recipient = { - trigger_event = { - id = fp1_tbc.0111 - days = 1 - } - } - } - # If both parties are alive, and aren't good losers/don't have good reasons to forgive each other, then we mark them as potential rivals. - if = { - limit = { - scope:actor = { - is_alive = yes - NOR = { - has_trait = humble - has_trait = content - has_trait = just - has_trait = forgiving - } - } - scope:recipient = { - is_alive = yes - NOR = { - has_trait = humble - has_trait = content - has_trait = just - has_trait = forgiving - } - can_set_relation_potential_rival_trigger = { CHARACTER = scope:actor } - } - } - scope:actor = { set_relation_potential_rival = scope:recipient } - } - } -} - -# Bout has invalidated, inform affected parties. -fp1_tbc.0021 = { - hidden = yes - - immediate = { - # Put your shirts back on. - single_combat_clean_shirtlessness_effect = { - ATTACKER = scope:actor - DEFENDER = scope:recipient - } - # Inform both parties that the duel has invalidated. - scope:actor = { - send_interface_toast = { - title = fp1_tbc.0021.trigger_failure.actor - left_icon = scope:recipient - } - } - scope:recipient = { - send_interface_toast = { - title = fp1_tbc.0021.trigger_failure.recipient - left_icon = scope:actor - } - } - # Reset scope:actor's cooldowns against scope:recipient. - scope:actor = { - remove_interaction_cooldown = challenge_to_trial_by_combat_interaction - remove_interaction_cooldown_against = { - interaction = challenge_to_trial_by_combat_interaction - target = scope:recipient - } - } - } -} - -# Scope:recipient has declined. -fp1_tbc.0031 = { - type = letter_event - opening = fp1_tbc.0031.opening - desc = fp1_tbc.0031.desc - sender = scope:recipient - - option = { name = fp1_tbc.0031.a } -} - -################################################## -# Scope:actor Results -# by Ewan Cowhig Croft -# 0041 - 0060 -################################################## - -# Scope:actor has won the bout. -fp1_tbc.0041 = { - type = character_event - title = fp1_tbc.0041.t - desc = { - desc = fp1_tbc.0041.desc.intro - # Scope:champion died in the fighting; no need to loc for a separate scope:champion, as they can't fight to the death. - triggered_desc = { - trigger = { - scope:champion = { is_alive = no } - } - desc = fp1_tbc.0041.desc.opponent_died - } - # Scope:champion is still alive. - triggered_desc = { - trigger = { - scope:champion = { is_alive = yes} - } - desc = { - first_valid = { - # Scope:recipient fought for themselves. - triggered_desc = { - trigger = { scope:champion = scope:recipient } - desc = fp1_tbc.0041.desc.opponent_lives.recipient_fighting - } - # Scope:recipient had a designated champion instead. - desc = fp1_tbc.0041.desc.opponent_lives.recipient_has_champion - } - } - } - # Reward, if anything. - first_valid = { - # Gold. - triggered_desc = { - trigger = { scope:tbc_gold = yes } - desc = fp1_tbc.0041.desc.reward.gold - } - # Weak hook. - triggered_desc = { - trigger = { scope:tbc_weak_hook = yes } - desc = fp1_tbc.0041.desc.reward.weak_hook - } - # Humiliation. - triggered_desc = { - trigger = { scope:tbc_humiliation = yes } - desc = fp1_tbc.0041.desc.reward.humiliation - } - # No outcome for death, since that's handled more succinctly above. - } - desc = fp1_tbc.0041.desc.outro - } - theme = prison - left_portrait = { - character = scope:actor - animation = personality_bold - } - right_portrait = { - character = scope:recipient - animation = shock - } - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Juuuust need to double-check that they're actually alive. - is_alive = yes - } - - immediate = { - # Show duel results from the player's POV. - show_as_tooltip = { fp1_tbc_non_lethal_results_effect = yes } - # Sadly, we have to apply some effects here instead of in the initial output event in order to not break tooltips. - single_combat_have_slain_kin_effect = { - ATTACKER = scope:actor - DEFENDER = scope:champion - } - fp1_tbc_consume_imprisonment_reasons_effect = yes - } - - # The bout closes. - option = { - name = fp1_tbc.0041.a - - # No stress for single-option events. - ai_chance = { - # AI will always choose single option. - base = 100 - } - } -} - -# Scope:actor has lost the bout. -fp1_tbc.0051 = { - type = character_event - title = fp1_tbc.0051.t - desc = { - desc = fp1_tbc.0051.desc.intro - # Scope:actor is still alive (alternatives not included because, well...). - first_valid = { - # Scope:recipient fought for themselves. - triggered_desc = { - trigger = { scope:champion = scope:recipient } - desc = fp1_tbc.0051.desc.opponent_lives.recipient_fighting - } - # Scope:recipient had a designated champion instead. - desc = fp1_tbc.0051.desc.opponent_lives.recipient_has_champion - } - desc = fp1_tbc.0051.desc.outro - } - theme = prison - left_portrait = { - character = scope:actor - animation = shock - } - right_portrait = { - character = scope:recipient - animation = personality_bold - } - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Juuuust need to double-check that they're actually alive. - is_alive = yes - } - - immediate = { - # Show duel results from the player's POV. - if = { - limit = { - scope:actor = { is_alive = yes } - } - fp1_tbc_actor_defeated_effect = { - TBC_LOSER = scope:actor - TBC_VICTOR = scope:recipient - } - } - show_as_tooltip = { - fp1_tbc_consume_imprisonment_reasons_effect = yes - single_combat_have_slain_kin_effect = { - ATTACKER = scope:actor - DEFENDER = scope:champion - } - } - } - - # The bout closes. - option = { - name = fp1_tbc.0051.a - - # No stress for single-option events. - ai_chance = { - # AI will always choose single option. - base = 100 - } - } -} - -################################################## -# SCOPE:RECIPIENT-SIDE EVENTS - -################################################## -# Champion Selection -# by Ewan Cowhig Croft -# 0101 - 0110 -################################################## - -scripted_trigger fp1_tbc_knights_with_high_opinion_filter_trigger = { - # Has a ludicrously high opinion of scope:recipient. - opinion = { - target = scope:recipient - value >= 95 - } - # And isn't one of the other knights presented. - NOR = { - AND = { - exists = scope:knight_best - this = scope:knight_best - } - AND = { - exists = scope:knight_exotic - this = scope:knight_exotic - } - AND = { - exists = scope:knight_alternative - this = scope:knight_alternative - } - } -} - -# Scope:recipient has accepted a challenge to a Trial-by-Combat & must designate a champion due to ineligibility. -fp1_tbc.0101 = { - type = character_event - title = fp1_tbc.0101.t - desc = fp1_tbc.0101.desc - theme = prison - left_portrait = { - character = scope:recipient - animation = disbelief - } - right_portrait = { - character = scope:knight_best - animation = personality_honorable - } - lower_left_portrait = scope:knight_alternative - lower_center_portrait = scope:knight_exotic - lower_right_portrait = scope:knight_opinion - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - } - - immediate = { - play_music_cue = "mx_cue_prison" - - # First, grab all available knights that are suitable for the Trial-by-Combat. - every_knight = { - limit = { - eligible_knight_to_champion_trial_by_combat_trigger = yes - NOT = { - has_court_position = champion_court_position #EP1: Pluck out the champion title holder - } - } - add_to_list = fp1_tbc_valid_knights_list - } - # Then, sort through the list, selecting the knight with the highest prowess. - ordered_in_list = { - list = fp1_tbc_valid_knights_list - order_by = prowess - save_scope_as = knight_best - } - # After that, we grab the most interesting knight (looking at assorted prowess-ish pecial traits and factoring for those) who isn't scope:knight_best. - ordered_in_list = { - list = fp1_tbc_valid_knights_list - limit = { - NOT = { - exists = scope:knight_best - this = scope:knight_best - } - has_relevant_special_single_combat_trait_trigger = yes - } - order_by = sce_has_single_combat_special_traits_value - save_scope_as = knight_exotic - } - #EP1: Fetch your champion if they exist - if = { - limit = { - employs_court_position = champion_court_position - any_court_position_holder = { - type = champion_court_position - is_physically_able_adult = yes # eligible_knight_to_champion_trial_by_combat_trigger checks for prowess, and its not mandatory that the champ has high value - } - } - random_court_position_holder = { - type = champion_court_position - save_scope_as = knight_alternative #same scope name is used due to limited portrait logic - } - } - # Then take the second highest-prowess knight who isn't scope:knight_best or scope:knight_exotic. - # EP1: Only do this if the court position of champion isn't already filled - ordered_in_list = { - list = fp1_tbc_valid_knights_list - limit = { - NOR = { - this = scope:knight_best - AND = { - exists = scope:knight_exotic - this = scope:knight_exotic - } - } - NOT = { employs_court_position = champion_court_position } - } - order_by = prowess - save_scope_as = knight_alternative - } - # Next, if we've got any knight who isn't scope:knight_best, scope:knight_exotic, or scope:knight_alternative, and who would literally murder for you, we grab them. - if = { - limit = { - any_in_list = { - list = fp1_tbc_valid_knights_list - fp1_tbc_knights_with_high_opinion_filter_trigger = yes - } - } - # First, add them to a sub-list. - every_in_list = { - list = fp1_tbc_valid_knights_list - limit = { fp1_tbc_knights_with_high_opinion_filter_trigger = yes } - add_to_list = fp1_tbc_high_opinion_knights_list - } - # Next, try to pluck out knightly soulmates. - if = { - limit = { - any_in_list = { - list = fp1_tbc_high_opinion_knights_list - any_relation = { - type = soulmate - this = scope:recipient - } - } - } - random_in_list = { - list = fp1_tbc_high_opinion_knights_list - limit = { - any_relation = { - type = soulmate - this = scope:recipient - } - } - save_scope_as = knight_opinion - } - } - # Otherwise, order by prowess and select the best. - else = { - ordered_in_list = { - list = fp1_tbc_high_opinion_knights_list - order_by = prowess - save_scope_as = knight_opinion - } - } - } - # Finally, if shenanigans have somehow deprived us of a scope:knight_best, then we want to generate someone to fill that minimum slot. - if = { - limit = { - NOT = { exists = scope:knight_best } - } - create_character = { - gender_female_chance = root_soldier_female_chance - location = scope:recipient.capital_province - template = new_warrior_character - faith = scope:recipient.capital_county.faith - culture = scope:recipient.capital_county.culture - save_scope_as = knight_best - } - add_courtier = scope:knight_best - } - } - - # Take the most skilled knight. - option = { - name = fp1_tbc.0101.a - - trigger = { - exists = scope:knight_best - } - - # Select scope:knight_best to represent you in the bout. - scope:knight_best = { save_scope_as = champion } - custom_tooltip = fp1_tbc.0101.a.tt - custom_tooltip = fp1_tbc.0101.bout_moves_forward - highlight_portrait = scope:knight_best - - # RP/functional choice: no stress charge. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.75 - ai_boldness = -0.5 - } - } - } - - # EP1: Take your already designated champion - option = { - name = fp1_ep1_tbc.0101.e - trigger = { - exists = scope:knight_alternative - scope:knight_alternative = { has_court_position = champion_court_position } - } - - # Select scope:knight_best to represent you in the bout. - scope:knight_alternative = { save_scope_as = champion } - custom_tooltip = fp1_ep1_tbc.0101.e.tt - custom_tooltip = fp1_tbc.0101.bout_moves_forward - highlight_portrait = scope:knight_alternative - - # RP/functional choice: no stress charge. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.75 - ai_boldness = -0.5 - } - } - } - - # Take the next most skilled knight. - option = { - name = fp1_tbc.0101.b - trigger = { - exists = scope:knight_alternative - scope:knight_alternative = { NOT = { has_court_position = champion_court_position } } - } - - # Select scope:knight_best to represent you in the bout. - scope:knight_alternative = { save_scope_as = champion } - custom_tooltip = fp1_tbc.0101.b.tt - custom_tooltip = fp1_tbc.0101.bout_moves_forward - highlight_portrait = scope:knight_alternative - - # RP/functional choice: no stress charge. - ai_chance = { - # There's no reason for the AI to ever take this option, we offer it entirely for players who dislike/wish to preserve their best knight. - base = 0 - } - } - - # Take the knight with the most special traits that *isn't* the most skilled knight. - option = { - name = fp1_tbc.0101.c - trigger = { exists = scope:knight_opinion } - - # Select scope:knight_best to represent you in the bout. - scope:knight_exotic = { save_scope_as = champion } - custom_tooltip = fp1_tbc.0101.c.tt - custom_tooltip = fp1_tbc.0101.bout_moves_forward - highlight_portrait = scope:knight_exotic - - # RP/functional choice: no stress charge. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_boldness = 0.25 - } - } - } - - # Take the knight who likes me the most. - option = { - name = fp1_tbc.0101.d - trigger = { exists = scope:knight_opinion} - - # Select scope:knight_best to represent you in the bout. - scope:knight_opinion = { save_scope_as = champion } - custom_tooltip = fp1_tbc.0101.d.tt - custom_tooltip = fp1_tbc.0101.bout_moves_forward - highlight_portrait = scope:knight_opinion - - # RP/functional choice: no stress charge. - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_rationality = -0.75 - } - } - } - - # Then, we skip over to scope:actor to inform them what's up. - after = { - # Clean up any errant scopes we no longer need to avoid debug bloat. - clear_saved_scope = knight_best - if = { - limit = { exists = scope:knight_exotic } - clear_saved_scope = knight_exotic - } - if = { - limit = { exists = scope:knight_alternative } - clear_saved_scope = knight_alternative - } - if = { - limit = { exists = scope:knight_opinion } - clear_saved_scope = knight_opinion - } - # And transition. - scope:actor = { trigger_event = fp1_tbc.0001 } - } -} - -fp1_tbc.0102 = { - desc = debug_main - theme = prison - - option = { - name = interaction_debug_main - } -} - -################################################## -# Scope:recipient Results -# by Ewan Cowhig Croft -# 0111 - 0130 -################################################## - -# Scope:recipient has won the bout. -fp1_tbc.0111 = { - type = character_event - title = fp1_tbc.0111.t - desc = { - desc = fp1_tbc.0111.desc.intro - # Scope:actor died in the fighting; we don't account for - triggered_desc = { - trigger = { - scope:actor = { is_alive = no } - } - desc = fp1_tbc.0111.desc.opponent_died.recipient_fighting - } - # Scope:actor is still alive. - triggered_desc = { - trigger = { - scope:actor = { is_alive = yes} - } - desc = { - first_valid = { - # Scope:recipient fought for themselves. - triggered_desc = { - trigger = { scope:champion = scope:recipient } - desc = fp1_tbc.0111.desc.opponent_lives.recipient_fighting - } - # Scope:recipient had a designated champion instead. - desc = fp1_tbc.0111.desc.opponent_lives.recipient_has_champion - } - } - } - desc = fp1_tbc.0111.desc.outro - } - theme = prison - left_portrait = { - character = scope:recipient - animation = personality_bold - } - right_portrait = { - character = scope:actor - animation = shock - } - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Juuuust need to double-check that they're actually alive. - is_alive = yes - } - - immediate = { - # Show duel results from the player's POV. - if = { - limit = { - scope:actor = { is_alive = yes } - } - fp1_tbc_actor_defeated_effect = { - TBC_LOSER = scope:actor - TBC_VICTOR = scope:recipient - } - } - # Sadly, we have to apply some effects here instead of in the initial output event in order to not break tooltips. - single_combat_have_slain_kin_effect = { - ATTACKER = scope:actor - DEFENDER = scope:champion - } - fp1_tbc_consume_imprisonment_reasons_effect = yes - } - - # The bout closes. - option = { - name = fp1_tbc.0111.a - - # No stress for single-option events. - ai_chance = { - # AI will always choose single option. - base = 100 - } - } -} - -# Scope:recipient has lost the bout. -fp1_tbc.0121 = { - type = character_event - title = fp1_tbc.0121.t - desc = { - desc = fp1_tbc.0121.desc.intro - # We don't need to account for scope:champion dying in the fighting; if it was scope:recipient, then they're dead, and a separate champion cannot be challenged to a fight to the death. - # Scope:champion is still alive. - first_valid = { - # Scope:recipient fought for themselves. - triggered_desc = { - trigger = { scope:champion = scope:recipient } - desc = fp1_tbc.0121.desc.champion_lives.recipient_fighting - } - # Scope:recipient had a designated champion instead. - desc = fp1_tbc.0121.desc.champion_lives.recipient_has_champion - } - # Reward, if anything. - first_valid = { - # Gold. - triggered_desc = { - trigger = { scope:tbc_gold = yes } - desc = fp1_tbc.0121.desc.reward.gold - } - # Weak hook. - triggered_desc = { - trigger = { scope:tbc_weak_hook = yes } - desc = fp1_tbc.0121.desc.reward.weak_hook - } - # Humiliation. - triggered_desc = { - trigger = { scope:tbc_humiliation = yes } - desc = fp1_tbc.0121.desc.reward.humiliation - } - # No outcome for death, since that's handled more succinctly above. - } - desc = fp1_tbc.0121.desc.outro - } - theme = prison - left_portrait = { - character = scope:recipient - animation = shock - } - right_portrait = { - character = scope:actor - animation = personality_bold - } - override_background = { reference = throne_room } - - trigger = { - # DLC check. - has_fp1_dlc_trigger = yes - # Juuuust need to double-check that they're actually alive. - is_alive = yes - } - - immediate = { - # Show duel results from the player's POV. - show_as_tooltip = { fp1_tbc_non_lethal_results_effect = yes } - # Sadly, we have to apply some effects here instead of in the initial output event in order to not break tooltips. - fp1_tbc_consume_imprisonment_reasons_effect = yes - } - - # The bout closes. - option = { - name = fp1_tbc.0121.a - - # No stress for single-option events. - ai_chance = { - # AI will always choose single option. - base = 100 - } - } -} diff --git a/events/dlc/fp1/fp1_varangian_adventure_events.txt b/events/dlc/fp1/fp1_varangian_adventure_events.txt deleted file mode 100644 index 451e2eb87..000000000 --- a/events/dlc/fp1/fp1_varangian_adventure_events.txt +++ /dev/null @@ -1,29 +0,0 @@ -namespace = fp1_varangian_adventures - -################################################## -# #Maintenance Events -# 0001 - 0010 Boost attacker control after the war. -################################################## - - - - - - -################################################## -# #Maintenance Events - -################################################## -# Boost Attacker Control -# by Ewan Cowhig Croft -# 0001 - 0010 -################################################## - -# Boost control in newly conquered lands. -fp1_varangian_adventures.0001 = { - hidden = yes - - immediate = { - every_realm_county = { change_county_control = 50 } - } -} diff --git a/events/dlc/fp1/fp1_yearly_events.txt b/events/dlc/fp1/fp1_yearly_events.txt index 289d858d4..1e92713a0 100644 --- a/events/dlc/fp1/fp1_yearly_events.txt +++ b/events/dlc/fp1/fp1_yearly_events.txt @@ -190,7 +190,7 @@ fp1_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss lazy = medium_stress_impact_gain } @@ -249,7 +249,7 @@ fp1_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss lazy = medium_stress_impact_gain } @@ -296,7 +296,7 @@ fp1_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = minor_stress_impact_loss greedy = medium_stress_impact_loss vengeful = major_stress_impact_loss @@ -365,7 +365,7 @@ fp1_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_loss generous = medium_stress_impact_loss forgiving = major_stress_impact_loss @@ -422,9 +422,9 @@ scripted_trigger offensive_courtier_candidate_trigger = { has_character_flag = murdered_by_poison #Legitimately being a witch, and a Germanic Pagan one at that, is a good reason, though all parties have to agree on that being a bad thing first. AND = { - faith = { has_doctrine_parameter = witchcraft_illegal } - root.faith = { has_doctrine_parameter = witchcraft_illegal } - root.capital_county.faith = { has_doctrine_parameter = witchcraft_illegal } + rite = { rite_has_parameter = witchcraft_illegal } + root.rite = { rite_has_parameter = witchcraft_illegal } + root.capital_county.rite = { rite_has_parameter = witchcraft_illegal } OR = { has_trait = witch any_secret = { type = secret_witch } @@ -465,9 +465,9 @@ scripted_effect agree_to_courtier_becoming_nithing_effect = { if = { limit = { any_spouse = { this = root } - root.faith = { + root.rite = { # _Technically_ they're 'dead' and this isn't a divorce, but if divorce was as easy as declaring your spouse legally dead, Henry VIII would've remained a good Catholic boi till the end of his days. - NOT = { has_doctrine = doctrine_divorce_disallowed } + NOT = { rite_has_doctrine = doctrine_divorce_disallowed } } } divorce_effect = { @@ -607,51 +607,51 @@ fp1_yearly.0011 = { # wrathful AND = { has_trait = wrathful - faith = { trait_is_virtue = wrathful } + rite = { trait_is_virtue_rite = wrathful } } # deceitful AND = { has_trait = deceitful - faith = { trait_is_virtue = deceitful } + rite = { trait_is_virtue_rite = deceitful } } # craven AND = { has_trait = craven - faith = { trait_is_virtue = craven } + rite = { trait_is_virtue_rite = craven } } # ambitious AND = { has_trait = ambitious - faith = { trait_is_virtue = ambitious } + rite = { trait_is_virtue_rite = ambitious } } # arbitrary AND = { has_trait = arbitrary - faith = { trait_is_virtue = arbitrary } + rite = { trait_is_virtue_rite = arbitrary } } # paranoid AND = { has_trait = paranoid - faith = { trait_is_virtue = paranoid } + rite = { trait_is_virtue_rite = paranoid } } # sadistic AND = { has_trait = sadistic - faith = { trait_is_virtue = sadistic } + rite = { trait_is_virtue_rite = sadistic } } # stubborn AND = { has_trait = stubborn - faith = { trait_is_virtue = stubborn } + rite = { trait_is_virtue_rite = stubborn } } # vengeful AND = { has_trait = vengeful - faith = { trait_is_virtue = vengeful } + rite = { trait_is_virtue_rite = vengeful } } } } - any_learning_councillor = { exists = this } + any_learning_councillor = {} } random_learning_councillor = { save_scope_as = priest } } @@ -676,7 +676,7 @@ fp1_yearly.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_loss forgiving = massive_stress_impact_gain } @@ -715,7 +715,7 @@ fp1_yearly.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_loss forgiving = massive_stress_impact_gain } @@ -768,7 +768,7 @@ fp1_yearly.0011 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_loss vengeful = medium_stress_impact_gain } @@ -1255,7 +1255,7 @@ fp1_yearly.0021 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss just = minor_stress_impact_gain } @@ -1329,7 +1329,7 @@ fp1_yearly.0021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss } ai_chance = { @@ -1397,7 +1397,7 @@ fp1_yearly.0021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss } ai_chance = { @@ -1471,7 +1471,7 @@ fp1_yearly.0021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss } ai_chance = { @@ -1678,10 +1678,10 @@ fp1_yearly.0031 = { ## If the faith is generally intolerant, then we invent a heterosexual target. if = { limit = { - faith = { + rite = { OR = { - has_doctrine_parameter = homosexuality_illegal - has_doctrine_parameter = homosexuality_shunned + rite_has_parameter = homosexuality_illegal + rite_has_parameter = homosexuality_shunned } } } @@ -1761,7 +1761,7 @@ fp1_yearly.0031 = { add_courtier = scope:lying_warrior - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss paranoid = minor_stress_impact_gain } @@ -1832,7 +1832,7 @@ fp1_yearly.0031 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss trusting = medium_stress_impact_gain } @@ -1876,7 +1876,7 @@ fp1_yearly.0031 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -2077,7 +2077,7 @@ fp1_yearly.0041 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss cynical = medium_stress_impact_gain } @@ -2143,7 +2143,7 @@ fp1_yearly.0041 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = medium_stress_impact_loss trusting = major_stress_impact_loss paranoid = minor_stress_impact_gain @@ -2186,7 +2186,7 @@ fp1_yearly.0041 = { #Consolation prize for giving them the boot. ## Stress loss handled in stress_impact. - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss zealous = minor_stress_impact_loss shy = major_stress_impact_loss @@ -2336,7 +2336,7 @@ fp1_yearly.0051 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss brave = medium_stress_impact_loss lazy = medium_stress_impact_gain @@ -2417,7 +2417,7 @@ fp1_yearly.0051 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss diligent = minor_stress_impact_gain } @@ -2514,7 +2514,7 @@ fp1_yearly.0051 = { #... Or you have to spend a little prestige for defiling the dead. else = { add_prestige = medium_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss callous = medium_stress_impact_loss arbitrary = medium_stress_impact_loss @@ -2662,7 +2662,7 @@ fp1_yearly.0061 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -2697,7 +2697,7 @@ fp1_yearly.0061 = { #And e'eryone knows why. add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -2785,7 +2785,7 @@ fp1_yearly.0062 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -2820,7 +2820,7 @@ fp1_yearly.0062 = { #And e'eryone knows why. add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -2934,7 +2934,7 @@ fp1_yearly.0063 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss vengeful = medium_stress_impact_loss just = medium_stress_impact_loss @@ -2979,7 +2979,7 @@ fp1_yearly.0063 = { #But at least it's less ignoble than running from wild animals. add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_loss vengeful = medium_stress_impact_loss arbitrary = minor_stress_impact_gain @@ -3059,7 +3059,7 @@ fp1_yearly.0064 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss callous = major_stress_impact_loss compassionate = minor_stress_impact_gain @@ -3101,7 +3101,7 @@ fp1_yearly.0064 = { #... Just for good measure, let's make sure they won't forget this. hidden_effect = { set_relation_potential_rival = scope:draugr_orphan } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss sadistic = major_stress_impact_loss compassionate = major_stress_impact_gain @@ -3143,7 +3143,7 @@ fp1_yearly.0064 = { type = loyalty_hook } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss compassionate = major_stress_impact_loss paranoid = minor_stress_impact_gain @@ -3214,7 +3214,7 @@ fp1_yearly.0064 = { type = loyalty_hook } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss compassionate = massive_stress_impact_loss paranoid = medium_stress_impact_gain @@ -3236,7 +3236,7 @@ fp1_yearly.0064 = { has_trait = compassionate } modifier = { #Weight down for stress. - add = 20 + add = -20 has_trait = paranoid } modifier = { #Weight down for stress. @@ -3290,7 +3290,7 @@ fp1_yearly.0065 = { } } - stress_impact = { + stress_and_fulfillment_impact = { #Usually bad form to give stress in one-event options, but it's a little funny to see your character's reaction to there being literally nothing to see. trusting = miniscule_stress_impact_loss paranoid = miniscule_stress_impact_gain @@ -3316,7 +3316,6 @@ scripted_trigger fp1_0071_loveli_lakes_trigger = { } scripted_trigger fp1_0071_valid_marshal_for_delegation_trigger = { - exists = this is_available_ai_adult = yes } @@ -3529,7 +3528,7 @@ fp1_yearly.0071 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss craven = minor_stress_impact_gain } @@ -3601,7 +3600,7 @@ fp1_yearly.0071 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_loss lazy = medium_stress_impact_loss brave = minor_stress_impact_gain @@ -3641,7 +3640,7 @@ fp1_yearly.0071 = { # But your capital county is upset. fp1_0071_apply_hungry_troll_modifier_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss craven = medium_stress_impact_loss brave = medium_stress_impact_gain @@ -3845,7 +3844,7 @@ fp1_yearly.0081 = { limit = { is_alive = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -3878,7 +3877,7 @@ fp1_yearly.0081 = { # And apply victory effects. fp1_0081_troll_duel_victory_effect = { MODIFIER = fp1_yearly_0071_troll_victory_bear_modifier } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_impact_loss wrathful = major_stress_impact_loss calm = major_stress_impact_gain @@ -3901,7 +3900,7 @@ fp1_yearly.0081 = { MODIFIER = fp1_yearly_0071_troll_victory_bear_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -3930,7 +3929,7 @@ fp1_yearly.0081 = { # Apply flee effects. fp1_0081_flee_option_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -4003,7 +4002,7 @@ fp1_yearly.0082 = { limit = { is_alive = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -4036,7 +4035,7 @@ fp1_yearly.0082 = { # And apply victory effects. fp1_0081_troll_duel_victory_effect = { MODIFIER = fp1_yearly_0071_troll_victory_wolf_modifier } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_impact_loss wrathful = major_stress_impact_loss calm = major_stress_impact_gain @@ -4059,7 +4058,7 @@ fp1_yearly.0082 = { MODIFIER = fp1_yearly_0071_troll_victory_wolf_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -4088,7 +4087,7 @@ fp1_yearly.0082 = { # Apply flee effects. fp1_0081_flee_option_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -4161,7 +4160,7 @@ fp1_yearly.0083 = { limit = { is_alive = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -4194,7 +4193,7 @@ fp1_yearly.0083 = { # And apply victory effects. fp1_0081_troll_duel_victory_effect = { MODIFIER = fp1_yearly_0071_troll_victory_wolverine_modifier } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_impact_loss wrathful = major_stress_impact_loss calm = major_stress_impact_gain @@ -4217,7 +4216,7 @@ fp1_yearly.0083 = { MODIFIER = fp1_yearly_0071_troll_victory_wolverine_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -4246,7 +4245,7 @@ fp1_yearly.0083 = { # Apply flee effects. fp1_0081_flee_option_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -4319,7 +4318,7 @@ fp1_yearly.0084 = { limit = { is_alive = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -4352,7 +4351,7 @@ fp1_yearly.0084 = { # And apply victory effects. fp1_0081_troll_duel_victory_effect = { MODIFIER = fp1_yearly_0071_troll_victory_lynx_modifier } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_impact_loss wrathful = major_stress_impact_loss calm = major_stress_impact_gain @@ -4375,7 +4374,7 @@ fp1_yearly.0084 = { MODIFIER = fp1_yearly_0071_troll_victory_lynx_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -4404,7 +4403,7 @@ fp1_yearly.0084 = { # Apply flee effects. fp1_0081_flee_option_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -4490,7 +4489,7 @@ fp1_yearly.0085 = { limit = { is_alive = yes } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_loss craven = major_stress_impact_gain } @@ -4523,7 +4522,7 @@ fp1_yearly.0085 = { # And apply victory effects. fp1_0081_troll_duel_victory_effect = { MODIFIER = fp1_yearly_0071_troll_victory_moose_modifier } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_impact_loss wrathful = major_stress_impact_loss calm = major_stress_impact_gain @@ -4546,7 +4545,7 @@ fp1_yearly.0085 = { MODIFIER = fp1_yearly_0071_troll_victory_moose_modifier } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -4575,7 +4574,7 @@ fp1_yearly.0085 = { # Apply flee effects. fp1_0081_flee_option_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss brave = major_stress_impact_gain } @@ -4662,7 +4661,7 @@ fp1_yearly.0091 = { # And charge the gold cost. remove_short_term_gold = major_gold_value - stress_impact = { + stress_and_fulfillment_impact = { profligate = massive_stress_impact_loss ambitious = major_stress_impact_loss content = major_stress_impact_gain @@ -4709,7 +4708,7 @@ fp1_yearly.0091 = { # And charge the gold cost. remove_short_term_gold = major_gold_value - stress_impact = { + stress_and_fulfillment_impact = { profligate = massive_stress_impact_loss callous = major_stress_impact_loss sadistic = major_stress_impact_loss @@ -4761,7 +4760,7 @@ fp1_yearly.0091 = { # And charge the gold cost. remove_short_term_gold = major_gold_value - stress_impact = { + stress_and_fulfillment_impact = { profligate = massive_stress_impact_loss arrogant = major_stress_impact_loss humble = major_stress_impact_gain @@ -4800,7 +4799,7 @@ fp1_yearly.0091 = { # Consiliatory stress loss for hanging on to your cash. ## Stress loss handled in stress impact. - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss greedy = medium_stress_impact_loss arrogant = minor_stress_impact_gain @@ -4876,7 +4875,7 @@ fp1_yearly.0101 = { } modifier = { add = 0.5 - has_trait = scholar + has_trait = erudite } modifier = { add = 0.5 @@ -4971,7 +4970,7 @@ fp1_yearly.0101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss gregarious = medium_stress_impact_loss shy = minor_stress_impact_gain @@ -5061,7 +5060,7 @@ fp1_yearly.0101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss gregarious = medium_stress_impact_loss shy = minor_stress_impact_gain @@ -5162,7 +5161,7 @@ fp1_yearly.0101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = minor_stress_impact_loss impatient = medium_stress_impact_loss vengeful = medium_stress_impact_loss @@ -5218,7 +5217,7 @@ fp1_yearly.0101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_loss impatient = medium_stress_impact_loss arrogant = minor_stress_impact_gain @@ -5364,9 +5363,7 @@ scripted_trigger fp1_0111_discountable_courtier_trigger = { # Zealous characters require witchcraft to be at least somewhat shameful. AND = { has_trait = zealous - faith = { - NOT = { has_doctrine_parameter = witchcraft_accepted } - } + NOT = { rite = { rite_has_parameter = witchcraft_accepted } } } } # Ensure that no witches are thrown into the discountables pile, as that's just cruel. @@ -5652,9 +5649,7 @@ fp1_yearly.0111 = { NOT = { has_character_flag = had_event_fp1_yearly_0111 } is_landed = yes # Filter to flavour-appropriate characters. - faith = { - NOT = { has_doctrine_parameter = witchcraft_accepted } - } + NOT = { rite = { rite_has_parameter = witchcraft_accepted } } OR = { fp1_is_norse_tribal = yes # Allow this after feudalisation, but not for kings and emperors with more important things going on. @@ -6116,6 +6111,8 @@ fp1_yearly.0111 = { # Display tooltip & apply effects. fp1_0111_select_accusation_effect = { CHARACTER = scope:suspect_a } + pam_witch_justice_fulfillment_effect = yes + stress_impact = { paranoid = major_stress_impact_loss zealous = major_stress_impact_loss @@ -6154,6 +6151,8 @@ fp1_yearly.0111 = { # Display tooltip & apply effects. fp1_0111_select_accusation_effect = { CHARACTER = scope:suspect_b } + pam_witch_justice_fulfillment_effect = yes + stress_impact = { paranoid = major_stress_impact_loss zealous = major_stress_impact_loss @@ -6192,6 +6191,8 @@ fp1_yearly.0111 = { # Display tooltip & apply effects. fp1_0111_select_accusation_effect = { CHARACTER = scope:suspect_c } + pam_witch_justice_fulfillment_effect = yes + stress_impact = { paranoid = major_stress_impact_loss zealous = major_stress_impact_loss @@ -6286,7 +6287,7 @@ fp1_yearly.0111 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = major_stress_impact_loss cynical = major_stress_impact_loss paranoid = major_stress_impact_gain @@ -6346,7 +6347,7 @@ fp1_yearly.0111 = { # Plus a decent chunk of prestige. add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { trusting = major_stress_impact_loss cynical = major_stress_impact_loss paranoid = major_stress_impact_gain @@ -6503,7 +6504,7 @@ fp1_yearly.0501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss compassionate = medium_stress_impact_loss lazy = minor_stress_impact_gain @@ -6578,7 +6579,7 @@ fp1_yearly.0501 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss callous = minor_stress_impact_loss sadistic = medium_stress_impact_loss @@ -6623,7 +6624,7 @@ fp1_yearly.0501 = { # Minor dread gain from your crew. add_dread = miniscule_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss callous = minor_stress_impact_loss arbitrary = minor_stress_impact_loss @@ -6798,7 +6799,7 @@ fp1_yearly.0511 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_loss patient = minor_stress_impact_loss shy = medium_stress_impact_loss @@ -6859,7 +6860,7 @@ fp1_yearly.0511 = { } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = minor_stress_impact_loss impatient = medium_stress_impact_loss compassionate = minor_stress_impact_gain @@ -6913,7 +6914,7 @@ fp1_yearly.0511 = { # But man, wasn't that *therapeutic*? ## Stress loss handled in stress_impact. - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_loss impatient = minor_stress_impact_loss wrathful = minor_stress_impact_loss @@ -6989,7 +6990,7 @@ fp1_yearly.0511 = { } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss gregarious = minor_stress_impact_loss patient = medium_stress_impact_loss @@ -7040,7 +7041,7 @@ fp1_yearly.0511 = { # But people respect you telling it like it is. add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { honest = medium_stress_impact_loss deceitful = medium_stress_impact_gain } @@ -7148,7 +7149,7 @@ fp1_yearly.0521 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss forgiving = minor_stress_impact_loss vengeful = minor_stress_impact_gain @@ -7190,7 +7191,7 @@ fp1_yearly.0521 = { # But lose a little prestige. add_prestige = minor_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss humble = minor_stress_impact_loss vengeful = minor_stress_impact_gain @@ -7282,7 +7283,7 @@ fp1_yearly.0521 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss arrogant = medium_stress_impact_loss forgiving = medium_stress_impact_gain @@ -7335,7 +7336,7 @@ fp1_yearly.0521 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss arrogant = medium_stress_impact_loss forgiving = medium_stress_impact_gain @@ -7385,7 +7386,7 @@ fp1_yearly.0521 = { opinion = -100 } - stress_impact = { + stress_and_fulfillment_impact = { berserker = massive_stress_loss impatient = minor_stress_impact_loss wrathful = minor_stress_impact_loss @@ -7593,7 +7594,7 @@ fp1_yearly.0531 = { } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss lazy = minor_stress_impact_gain } @@ -7640,7 +7641,7 @@ fp1_yearly.0531 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss lazy = major_stress_impact_loss compassionate = minor_stress_impact_gain @@ -7685,7 +7686,7 @@ fp1_yearly.0531 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss paranoid = minor_stress_impact_loss } @@ -7851,7 +7852,7 @@ fp1_yearly.0541 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss vengeful = minor_stress_impact_loss arbitrary = minor_stress_impact_loss @@ -7914,7 +7915,7 @@ fp1_yearly.0541 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss forgiving = minor_stress_impact_gain } @@ -7961,7 +7962,7 @@ fp1_yearly.0541 = { clear_saved_scope = relationship_reason_involved_character scope:courtier = { select_and_move_to_pool_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = major_stress_impact_loss just = major_stress_impact_gain } @@ -8001,7 +8002,7 @@ fp1_yearly.0541 = { opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss lazy = medium_stress_impact_loss just = medium_stress_impact_gain @@ -8177,7 +8178,7 @@ fp1_yearly.0551 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss honest = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -8254,7 +8255,7 @@ fp1_yearly.0551 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_loss shy = major_stress_impact_loss honest = minor_stress_impact_gain @@ -8334,7 +8335,7 @@ fp1_yearly.0551 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_loss shy = major_stress_impact_loss honest = minor_stress_impact_gain @@ -8392,7 +8393,7 @@ fp1_yearly.0551 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss @@ -8454,7 +8455,7 @@ fp1_yearly.0551 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss shy = minor_stress_impact_loss gregarious = minor_stress_impact_gain @@ -8652,7 +8653,7 @@ fp1_yearly.0561 = { REASON = friend_arm_wrestled } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -8702,7 +8703,7 @@ fp1_yearly.0561 = { opinion = 30 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss arrogant = minor_stress_impact_loss shy = minor_stress_impact_gain @@ -8786,7 +8787,7 @@ fp1_yearly.0561 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = medium_stress_impact_loss honest = medium_stress_impact_gain } @@ -8821,7 +8822,7 @@ fp1_yearly.0561 = { opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss gluttonous = minor_stress_impact_loss shy = medium_stress_impact_loss @@ -8925,7 +8926,7 @@ fp1_yearly.0571 = { # Standard checks. is_available_even_at_war_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_0571 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes # Filter to flavour-appropriate characters. fp1_is_norse = yes # Must have an appropriate runestone in your territory. @@ -9082,7 +9083,7 @@ fp1_yearly.0571 = { # The runestone is destroyed. scope:vandal_site = { fp1_remove_stele_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss vengeful = medium_stress_impact_gain } @@ -9126,7 +9127,7 @@ fp1_yearly.0571 = { remove_short_term_gold = root.raise_stele_gold_cost } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss greedy = medium_stress_impact_loss forgiving = minor_stress_impact_gain @@ -9203,7 +9204,7 @@ fp1_yearly.0571 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss generous = minor_stress_impact_loss lazy = medium_stress_impact_loss @@ -9274,7 +9275,7 @@ fp1_yearly.0571 = { # Lose the runestone. scope:vandal_site = { fp1_remove_stele_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss lazy = medium_stress_impact_loss arbitrary = medium_stress_impact_loss @@ -9397,7 +9398,7 @@ fp1_yearly.0581 = { } trigger_else = { # Can't be following an equal faith. - faith = { NOT = { has_doctrine_parameter = combatant_can_be_either_gender_if_no_roco } } + rite = { NOT = { rite_has_parameter = combatant_can_be_either_gender_if_no_roco } } } # Any child of yours might want to be a shieldperson when they grow up. any_child = { fp1_0581_wrong_gender_child_wishes_to_fight_trigger = yes } @@ -9482,7 +9483,7 @@ fp1_yearly.0581 = { opinion = 60 } - stress_impact = { + stress_and_fulfillment_impact = { shieldmaiden = major_stress_impact_loss brave = major_stress_impact_loss ambitious = major_stress_impact_loss @@ -9547,7 +9548,7 @@ fp1_yearly.0581 = { opinion = 30 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss gregarious = minor_stress_impact_loss } @@ -9617,7 +9618,7 @@ fp1_yearly.0581 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss sadistic = minor_stress_impact_loss forgiving = minor_stress_impact_gain @@ -9666,7 +9667,7 @@ fp1_yearly.0581 = { opinion = -30 } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss impatient = minor_stress_impact_loss @@ -9777,7 +9778,7 @@ fp1_yearly.0591 = { # Standard checks. is_available_even_at_war_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_0591 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes # Filter to flavour-appropriate characters. culture = { has_innovation = innovation_all_things } # Ensure you have at least two counties that can fight with each other. @@ -9831,7 +9832,7 @@ fp1_yearly.0591 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss diligent = minor_stress_impact_gain } @@ -9871,7 +9872,7 @@ fp1_yearly.0591 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss diligent = minor_stress_impact_gain } @@ -9910,7 +9911,7 @@ fp1_yearly.0591 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_loss arbitrary = medium_stress_impact_loss honest = minor_stress_impact_gain @@ -9949,7 +9950,7 @@ fp1_yearly.0591 = { # Stress loss: not your problem, honestly. ## Covered in stress impact. - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -10069,7 +10070,7 @@ fp1_yearly.0601 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss diligent = medium_stress_impact_loss arbitrary = minor_stress_impact_gain @@ -10116,7 +10117,7 @@ fp1_yearly.0601 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss arrogant = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -10159,7 +10160,7 @@ fp1_yearly.0601 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss arrogant = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -10202,7 +10203,7 @@ fp1_yearly.0601 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss arrogant = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -10245,7 +10246,7 @@ fp1_yearly.0601 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss arrogant = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -10288,7 +10289,7 @@ fp1_yearly.0601 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss arrogant = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -10341,7 +10342,7 @@ fp1_yearly.0601 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -10520,7 +10521,7 @@ fp1_yearly.0611 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_impact_loss forgiving = minor_stress_impact_loss vengeful = medium_stress_impact_gain @@ -10572,7 +10573,7 @@ fp1_yearly.0611 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -10616,7 +10617,7 @@ fp1_yearly.0611 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_loss compassionate = minor_stress_impact_gain } @@ -10667,7 +10668,7 @@ fp1_yearly.0611 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_loss lazy = minor_stress_impact_loss callous = minor_stress_impact_loss @@ -10766,7 +10767,7 @@ fp1_yearly.0621 = { # But you lose some gold. remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss greedy = medium_stress_impact_gain } @@ -10821,7 +10822,7 @@ fp1_yearly.0621 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_loss greedy = medium_stress_impact_loss patient = minor_stress_impact_gain @@ -11005,7 +11006,7 @@ fp1_yearly.0631 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss generous = minor_stress_impact_loss vengeful = minor_stress_impact_loss @@ -11061,7 +11062,7 @@ fp1_yearly.0631 = { # Lose a little piety. add_piety = miniscule_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss generous = medium_stress_impact_gain zealous = major_stress_impact_gain @@ -11098,7 +11099,7 @@ fp1_yearly.0631 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_loss vengeful = medium_stress_impact_gain zealous = major_stress_impact_gain @@ -11282,7 +11283,7 @@ fp1_yearly.0641 = { # Lose a little gold. remove_treasury_or_gold = minor_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss honest = minor_stress_impact_loss greedy = minor_stress_impact_gain @@ -11372,7 +11373,7 @@ fp1_yearly.0641 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss greedy = medium_stress_impact_loss deceitful = medium_stress_impact_loss @@ -11429,7 +11430,7 @@ fp1_yearly.0641 = { # Lose a bit more gold. remove_treasury_or_gold = medium_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss generous = medium_stress_impact_loss lazy = minor_stress_impact_gain @@ -11472,7 +11473,7 @@ fp1_yearly.0641 = { # Someone else's problem, right? ## Stress loss handled in stress impact. - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss lazy = medium_stress_impact_loss greedy = medium_stress_impact_loss @@ -11604,7 +11605,7 @@ fp1_yearly.0651 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = miniscule_stress_impact_loss # From Hell's Heart I stab at thee, etc. brave = major_stress_impact_loss craven = major_stress_impact_gain @@ -11639,7 +11640,7 @@ fp1_yearly.0651 = { ## Per the comment below the immediate block, the static gold is deliberate. add_gold = 50 - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss generous = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -11709,7 +11710,7 @@ fp1_yearly.0651 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = miniscule_stress_impact_loss # From Hell's Heart I stab at thee, etc. brave = major_stress_impact_loss craven = major_stress_impact_gain @@ -11745,7 +11746,7 @@ fp1_yearly.0651 = { # You gain a little prestige for your kindness. add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss compassionate = medium_stress_impact_loss craven = major_stress_impact_loss @@ -11913,7 +11914,7 @@ fp1_yearly.0661 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss craven = medium_stress_impact_gain } @@ -11950,7 +11951,7 @@ fp1_yearly.0661 = { REASON = friend_ski_race } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss lazy = medium_stress_impact_gain } @@ -12021,7 +12022,7 @@ fp1_yearly.0661 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss deceitful = medium_stress_impact_loss just = minor_stress_impact_gain @@ -12067,7 +12068,7 @@ fp1_yearly.0661 = { opinion = -10 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss craven = minor_stress_impact_loss lifestyle_hunter = medium_stress_impact_loss @@ -12214,7 +12215,7 @@ fp1_yearly.0671 = { REASON = friend_sledding } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss diligent = minor_stress_impact_loss lazy = minor_stress_impact_gain @@ -12258,7 +12259,7 @@ fp1_yearly.0671 = { opinion = 25 } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss diligent = minor_stress_impact_loss lazy = minor_stress_impact_gain @@ -12323,7 +12324,7 @@ fp1_yearly.0671 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss lazy = minor_stress_impact_loss callous = minor_stress_impact_loss @@ -12452,7 +12453,7 @@ fp1_yearly.0681 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss callous = minor_stress_impact_gain sadistic = minor_stress_impact_gain @@ -12508,7 +12509,7 @@ fp1_yearly.0681 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss compassionate = minor_stress_impact_gain @@ -12754,7 +12755,7 @@ fp1_yearly.0691 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_loss zealous = major_stress_impact_loss arrogant = minor_stress_impact_gain @@ -12830,7 +12831,7 @@ fp1_yearly.0691 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_loss zealous = major_stress_impact_loss forgiving = major_stress_impact_gain @@ -12877,7 +12878,7 @@ fp1_yearly.0691 = { # But lose the knight. scope:knight = { select_and_move_to_pool_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_loss cynical = major_stress_impact_loss vengeful = major_stress_impact_gain @@ -13581,7 +13582,7 @@ fp1_yearly.1001 = { #Figure out which follow-up event to send. fp1_mysterious_stranger_follow_up_event_picker_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss gregarious = minor_stress_impact_loss paranoid = minor_stress_impact_gain @@ -13624,7 +13625,7 @@ fp1_yearly.1001 = { #Figure out which follow-up event to send. fp1_mysterious_stranger_follow_up_event_picker_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss gregarious = medium_stress_impact_loss paranoid = medium_stress_impact_gain @@ -13670,7 +13671,7 @@ fp1_yearly.1001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss shy = medium_stress_impact_loss trusting = minor_stress_impact_gain @@ -13943,9 +13944,9 @@ fp1_yearly.1011 = { limit = { scope:ms_effect = flag:critical } if = { limit = { - faith = { has_doctrine = doctrine_theocracy_lay_clergy } + rite = { rite_has_doctrine = doctrine_theocracy_lay_clergy } #Double-check that they actually have a realm priest at the moment. - any_learning_councillor = { exists = this } + any_learning_councillor = {} } add_piety = medium_piety_loss every_learning_councillor = { @@ -14107,7 +14108,7 @@ fp1_yearly.1012 = { #If scope:stranger's faith allows monks, make them a monk. if = { limit = { - faith = { has_doctrine_parameter = take_vows_active } + rite = { rite_has_parameter = take_vows_active } } add_trait = devoted #Huahua! Don't you see, they were wearing a toupee the whole time! @@ -14133,9 +14134,9 @@ fp1_yearly.1012 = { limit = { scope:ms_effect = flag:critical } if = { limit = { - faith = { has_doctrine = doctrine_theocracy_lay_clergy } + rite = { rite_has_doctrine = doctrine_theocracy_lay_clergy } #Double-check that they actually have a realm priest at the moment. - any_learning_councillor = { exists = this } + any_learning_councillor = {} } add_piety = medium_piety_loss every_learning_councillor = { @@ -14155,10 +14156,9 @@ fp1_yearly.1012 = { if = { limit = { scope:ms_effect = flag:critical - faith = { has_doctrine = doctrine_theocracy_lay_clergy } + rite = { rite_has_doctrine = doctrine_theocracy_lay_clergy } #Double-check that you actually have a realm priest, and that a weak hook can be added. any_learning_councillor = { - exists = this save_temporary_scope_as = learning_councillor root = { can_add_hook = { @@ -14250,7 +14250,7 @@ fp1_yearly.1012 = { } else = { add_piety = minor_piety_gain } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss zealous = major_stress_impact_gain } @@ -14280,7 +14280,7 @@ fp1_yearly.1012 = { #The missionary vanishes. mysterious_stranger_disappears_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_loss cynical = minor_stress_impact_loss vengeful = minor_stress_impact_gain @@ -14323,7 +14323,7 @@ fp1_yearly.1012 = { type = dungeon } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss zealous = medium_stress_impact_loss forgiving = minor_stress_impact_gain @@ -14367,7 +14367,7 @@ fp1_yearly.1012 = { opinion = 30 } - stress_impact = { + stress_and_fulfillment_impact = { trusting = minor_stress_impact_loss gregarious = minor_stress_impact_loss paranoid = minor_stress_impact_gain @@ -14401,7 +14401,7 @@ fp1_yearly.1012 = { #The missionary vanishes. mysterious_stranger_disappears_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss gregarious = minor_stress_impact_gain } @@ -14492,14 +14492,14 @@ fp1_yearly.1013 = { 65 = { add_trait = murderer } 25 = { trigger = { - faith = { has_doctrine_parameter = witchcraft_illegal } + rite = { rite_has_parameter = witchcraft_illegal } } add_trait = witch } 10 = { trigger = { is_male = yes - faith = { has_doctrine = doctrine_homosexuality_crime } + rite = { rite_has_parameter = homosexuality_illegal } } add_trait = sodomite } @@ -14573,7 +14573,7 @@ fp1_yearly.1013 = { } - stress_impact = { + stress_and_fulfillment_impact = { #Minor penalty for RP reasons: we've already given the player a hefty negative, no need to pile on. forgiving = minor_stress_impact_loss vengeful = major_stress_impact_loss @@ -14722,7 +14722,7 @@ fp1_yearly.1014 = { } else = { remove_short_term_gold = minor_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss greedy = medium_stress_impact_gain } @@ -14765,7 +14765,7 @@ fp1_yearly.1014 = { #Have some mild consolation prestige add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss gregarious = minor_stress_impact_gain } @@ -14853,7 +14853,7 @@ fp1_yearly.1015 = { modifier = loyal_servant } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss humble = medium_stress_impact_loss shy = minor_stress_impact_gain @@ -14891,7 +14891,7 @@ fp1_yearly.1015 = { #The vagrant vanishes. mysterious_stranger_disappears_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_loss arrogant = medium_stress_impact_loss gregarious = minor_stress_impact_gain @@ -14958,8 +14958,8 @@ scripted_trigger fp1_funeral_longship_likes_parties = { value >= 100 } # Faith must not consider this a bad thing. - faith = { - NOT = { trait_is_virtue = shy } + rite = { + NOT = { trait_is_virtue_rite = shy } } } @@ -14990,7 +14990,7 @@ scripted_trigger fp1_funeral_longship_likes_magic = { value >= 100 } # Faith must consider this an actively good thing (since Norse paganism's complicated relationship with witchcraft _tended_ towards the negative). - faith = { has_doctrine_parameter = witchcraft_accepted } + rite = { rite_has_parameter = witchcraft_accepted } } @@ -15005,7 +15005,7 @@ fp1_yearly.1061 = { religion = religion:folk_germanic_religion # Shouldn't ever happen, but just in case, exempt sky burials so that the character is never buried twice. NOR = { - faith = { has_doctrine_parameter = sky_burials_active } + rite = { rite_has_parameter = sky_burials_active } has_dead_character_variable = body_has_been_disposed } # And we shouldn't really be erecting glorious mounds to long lives that were actually cut short too early. @@ -15058,7 +15058,7 @@ fp1_yearly.1061 = { } } else_if = { - limit = { highest_held_title_tier = tier_empire } + limit = { highest_held_title_tier >= tier_empire } save_scope_value_as = { name = reason_title value = flag:empire @@ -15240,7 +15240,7 @@ fp1_yearly.1062 = { months = 2 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss greedy = minor_stress_impact_gain } @@ -15287,7 +15287,7 @@ fp1_yearly.1062 = { months = 2 } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss greedy = medium_stress_impact_gain } @@ -15335,7 +15335,7 @@ fp1_yearly.1062 = { months = 2 } - stress_impact = { + stress_and_fulfillment_impact = { generous = major_stress_impact_loss greedy = major_stress_impact_gain } @@ -15370,14 +15370,14 @@ fp1_yearly.1062 = { } } add_prestige = medium_prestige_loss - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss generous = medium_stress_impact_gain } } # Else, take a stress hit. else = { - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_gain greedy = medium_stress_impact_loss generous = medium_stress_impact_gain @@ -16337,7 +16337,10 @@ fp1_yearly.1063 = { add_prestige = major_prestige_gain } # Stress relief is the same regardless of what level you opted for. - add_stress = major_stress_loss + stress_and_fulfillment_impact = { + base = major_stress_impact_loss + zealous = minor_stress_impact_loss + } # No extra stress impact for single-option events, usually. ai_chance = { @@ -16421,7 +16424,7 @@ fp1_yearly.1071 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss lazy = medium_stress_impact_gain } @@ -16452,7 +16455,7 @@ fp1_yearly.1071 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss lazy = medium_stress_impact_gain } @@ -16480,7 +16483,7 @@ fp1_yearly.1071 = { # Lose a bit of stress for taking it easy. ## Stress loss handled in stress_impact. - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_loss lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -16640,7 +16643,7 @@ fp1_yearly.1081 = { #Learned characters attract people with curious stories. modifier = { add = 1 - has_trait = scholar + has_trait = erudite } modifier = { add = 1 @@ -16677,7 +16680,10 @@ fp1_yearly.1081 = { #If Portugal exists, then obviously they were time-travelling Portuguese. if = { limit = { - always = yes + is_target_in_global_variable_list = { + name = unavailable_unique_decisions + target = flag:form_portugal_decision + } } culture:portuguese = { save_scope_as = antilia_culture } } @@ -16797,7 +16803,7 @@ fp1_yearly.1081 = { years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_loss arrogant = minor_stress_impact_gain } @@ -16828,7 +16834,7 @@ fp1_yearly.1081 = { years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss trusting = minor_stress_impact_gain } @@ -16867,7 +16873,7 @@ fp1_yearly.1081 = { limit = { NOT = { scope:phantom_island = flag:sunset_empire } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_loss trusting = minor_stress_impact_loss paranoid = minor_stress_impact_gain @@ -16875,7 +16881,7 @@ fp1_yearly.1081 = { } # Otherwise... else = { - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_gain trusting = minor_stress_impact_loss paranoid = minor_stress_impact_gain diff --git a/events/dlc/fp1/fp1_yearly_events_oltner.txt b/events/dlc/fp1/fp1_yearly_events_oltner.txt index c449df282..223c7f83d 100644 --- a/events/dlc/fp1/fp1_yearly_events_oltner.txt +++ b/events/dlc/fp1/fp1_yearly_events_oltner.txt @@ -179,7 +179,7 @@ fp1_yearly.2000 = { #Standard checks. is_available_at_peace_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_2000 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes any_child = { suitable_child_to_leave = yes @@ -263,7 +263,7 @@ fp1_yearly.2000 = { INVALIDATION_EVENT = fp1_yearly.2002 } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain forgiving = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -298,7 +298,7 @@ fp1_yearly.2000 = { option = { # Remind them of their duties name = fp1_yearly.2000.b - stress_impact = { + stress_and_fulfillment_impact = { impatient = major_stress_impact_gain wrathful = major_stress_impact_gain arrogant = medium_stress_impact_gain @@ -377,7 +377,7 @@ fp1_yearly.2000 = { option = { # Bribe them name = fp1_yearly.2000.c - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain wrathful = major_stress_impact_gain arrogant = medium_stress_impact_gain @@ -406,7 +406,7 @@ fp1_yearly.2000 = { option = { # Let them go, the fool... name = fp1_yearly.2000.d - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain stubborn = major_stress_impact_gain wrathful = major_stress_impact_gain @@ -759,7 +759,7 @@ fp1_yearly.2100 = { OUTPUT_EVENT = fp1_yearly.2101 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain compassionate = major_stress_impact_gain calm = medium_stress_impact_gain @@ -827,7 +827,7 @@ fp1_yearly.2100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain sadistic = major_stress_impact_gain callous = medium_stress_impact_gain @@ -898,7 +898,7 @@ fp1_yearly.2100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain arrogant = minor_stress_impact_gain sadistic = major_stress_impact_gain @@ -1001,7 +1001,7 @@ fp1_yearly.2101 = { PREGNANCY_CHANCE = pregnancy_chance } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain compassionate = major_stress_impact_gain humble = major_stress_impact_gain @@ -1033,7 +1033,7 @@ fp1_yearly.2101 = { years = 30 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain vengeful = major_stress_impact_gain arbitrary = medium_stress_impact_gain @@ -1057,7 +1057,7 @@ fp1_yearly.2101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain compassionate = major_stress_impact_gain humble = major_stress_impact_gain @@ -1086,7 +1086,7 @@ fp1_yearly.2101 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_gain arbitrary = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -1133,10 +1133,10 @@ fp1_yearly.2200 = { is_available_at_peace_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_2200 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes - faith = { - has_doctrine = tenet_warmonger + rite = { + rite_has_tenet = tenet_warmonger } OR = { @@ -1166,6 +1166,7 @@ fp1_yearly.2200 = { gender_female_chance = root_soldier_female_chance template = new_berserker_character faith = root.faith + rite = root.rite culture = root.culture dynasty = none location = root.location @@ -1240,7 +1241,7 @@ fp1_yearly.2200 = { INVALIDATION_EVENT = fp1_yearly.2202 } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain calm = medium_stress_impact_gain patient = medium_stress_impact_gain @@ -1260,7 +1261,7 @@ fp1_yearly.2200 = { option = { name = fp1_yearly.2200.b - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_gain arrogant = medium_stress_impact_gain greedy = major_stress_impact_gain @@ -1325,7 +1326,7 @@ fp1_yearly.2200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_gain wrathful = major_stress_impact_gain impatient = major_stress_impact_gain @@ -1385,7 +1386,7 @@ fp1_yearly.2200 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = major_stress_impact_gain trusting = medium_stress_impact_gain patient = medium_stress_impact_gain @@ -1459,7 +1460,7 @@ fp1_yearly.2203 = { } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = major_stress_impact_gain forgiving = medium_stress_impact_gain compassionate = major_stress_impact_gain @@ -1483,7 +1484,7 @@ fp1_yearly.2203 = { option = { name = fp1_yearly.2203.b - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain vengeful = major_stress_impact_gain cynical = major_stress_impact_gain @@ -1502,7 +1503,7 @@ fp1_yearly.2203 = { option = { name = fp1_yearly.2203.c - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain vengeful = major_stress_impact_gain trusting = major_stress_impact_gain @@ -1541,7 +1542,7 @@ fp1_yearly.2204 = { add_courtier = scope:new_berserker set_relation_friend = { reason = friend_rousing_fight target = scope:new_berserker } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_gain vengeful = major_stress_impact_gain cynical = major_stress_impact_gain @@ -1558,7 +1559,7 @@ fp1_yearly.2204 = { option = { name = fp1_yearly.2204.b - stress_impact = { + stress_and_fulfillment_impact = { trusting = major_stress_impact_gain forgiving = major_stress_impact_gain humble = major_stress_impact_gain @@ -1593,7 +1594,7 @@ fp1_yearly.2300 = { is_available_at_peace_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_2300 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes any_sub_realm_barony = { title_province = { @@ -1660,7 +1661,7 @@ fp1_yearly.2300 = { custom_tooltip = MILITARY_VIEW_EVENT_TROOPS_NOT_INHERITABLE - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain shy = minor_stress_impact_gain } @@ -1692,7 +1693,7 @@ fp1_yearly.2300 = { custom_tooltip = MILITARY_VIEW_EVENT_TROOPS_NOT_INHERITABLE - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain shy = minor_stress_impact_gain } @@ -1707,7 +1708,7 @@ fp1_yearly.2300 = { add_gold = medium_gold_value - stress_impact = { + stress_and_fulfillment_impact = { generous = major_stress_impact_gain ambitious = medium_stress_impact_gain } @@ -1751,7 +1752,7 @@ fp1_yearly.2300 = { custom_tooltip = MILITARY_VIEW_EVENT_TROOPS_NOT_INHERITABLE - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -1780,7 +1781,7 @@ fp1_yearly.2400 = { is_available_at_peace_adult = yes NOT = { has_character_flag = had_event_fp1_yearly_2400 } - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes NOR = { has_trait = lazy @@ -1816,7 +1817,7 @@ fp1_yearly.2400 = { start_dog_story_cycle_effect = yes remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain shy = minor_stress_impact_gain } @@ -1842,7 +1843,7 @@ fp1_yearly.2400 = { start_eagle_story_cycle_effect = yes remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain shy = minor_stress_impact_gain } @@ -1864,7 +1865,7 @@ fp1_yearly.2400 = { } remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain temperate = medium_stress_impact_gain } @@ -1887,7 +1888,7 @@ fp1_yearly.2400 = { } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = major_stress_impact_gain } ai_chance = { @@ -1912,7 +1913,7 @@ scripted_trigger fp1_yearly_2500_guest_trigger = { } } save_temporary_scope_as = deviant_guest - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = scope:deviant_guest.faith GENDER_CHARACTER = scope:deviant_guest } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = scope:deviant_guest.rite GENDER_CHARACTER = scope:deviant_guest } } scripted_trigger fp1_yearly_2500_court_target_trigger = { @@ -1956,7 +1957,7 @@ fp1_yearly.2500 = { fp1_yearly_2500_guest_trigger = yes } - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = scope:deviant_guest } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = root.rite GENDER_CHARACTER = scope:deviant_guest } any_held_title = { title_tier = county @@ -2090,7 +2091,7 @@ fp1_yearly.2500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain compassionate = minor_stress_impact_gain just = medium_stress_impact_gain @@ -2130,7 +2131,7 @@ fp1_yearly.2500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain deviant = massive_stress_impact_gain } @@ -2155,7 +2156,7 @@ fp1_yearly.2500 = { base = 100 } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_gain just = medium_stress_impact_gain } @@ -2192,7 +2193,7 @@ fp1_yearly.2500 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain temperate = major_stress_impact_gain } @@ -2233,8 +2234,8 @@ fp1_yearly.2600 = { religion = religion:folk_germanic_religion } - faith = { - has_doctrine = tenet_warmonger + rite = { + rite_has_tenet = tenet_warmonger } NOR = { @@ -2353,7 +2354,7 @@ fp1_yearly.2600 = { trigger_event = fp1_yearly.2601 } - stress_impact = { + stress_and_fulfillment_impact = { calm = massive_stress_impact_gain lazy = massive_stress_impact_gain patient = major_stress_impact_gain @@ -2377,7 +2378,7 @@ fp1_yearly.2600 = { custom_tooltip = fp1_yearly.2600.b.tt - stress_impact = { + stress_and_fulfillment_impact = { impatient = massive_stress_impact_gain wrathful = massive_stress_impact_gain sadistic = medium_stress_impact_gain diff --git a/events/dlc/fp2/fp2_el_cid_events.txt b/events/dlc/fp2/fp2_el_cid_events.txt deleted file mode 100644 index 0804a832b..000000000 --- a/events/dlc/fp2/fp2_el_cid_events.txt +++ /dev/null @@ -1,552 +0,0 @@ -namespace = fp2_struggle - -###################################### -# EL CID'S BIZARRE ADVENTURE SYSTEM -# By Hugo Cortell -###################################### -fp2_struggle.2045 = { - hidden = yes - - trigger = { - is_landless_adventurer = no - } - - immediate = { - if = { # Startup changes (give the cid his full nickname when he starts adventuring) - limit = { NOT = { has_character_flag = has_already_begun_travelling } } - - remove_nickname = yes - give_nickname = nick_the_cid_campeador - add_character_flag = has_already_begun_travelling # Prevents yearly pulse from stacking up requests - add_character_flag = blocked_from_leaving # Prevents el cid from vacationing in far away lands - } - - if = { - limit = { NOT = { has_character_flag = finished_el_cids_travels } } # In case several requests for the event are stacked up - if = { # Being a guest is used as a boolean to check if the character is in an "evaluation" phase or already in a court. DO NOT USE THE GUEST SYSTEM FOR THIS. - limit = { - OR = { - is_pool_guest = yes - is_pool_character = yes - is_foreign_court_guest = yes - } - } - random_county_in_region = { # Naturally biased in favor of larger states - limit = { exists = holder.liege } - weight = { - base = 1 - modifier = { - add = 10 - holder.liege = { has_relation_friend = root } - } - modifier = { - add = 30 - holder.liege = { has_relation_best_friend = root } - } - compare_modifier = { - value = holder.prestige_level - multiplier = 1.5 - } - } - region = world_europe_west_iberia # Locks el cid's forced travels to iberia - holder.liege = { trigger_event = fp2_struggle.2051 } - } - } - else = { - if = { - limit = { exists = liege } - liege = { trigger_event = fp2_struggle.2050 } # This is you, you get the event, while el cid gets the "system event" - } - else = { - employer = { trigger_event = fp2_struggle.2050 } # ditto - } - } - } - } -} - - -############################################################# -# Unease About El Sidi -# By The Content Design Team (And scripted by Hugo Cortell) -############################################################# - -scripted_trigger el_cid_too_important_trigger = { - OR = { - any_extended_family_member = { this = scope:fp2_2050_el_cid } - scope:fp2_2050_el_cid = { is_vassal_of = ROOT } - has_relation_best_friend = scope:fp2_2050_el_cid - is_spouse_of = scope:fp2_2050_el_cid - } -} - -fp2_struggle.2050 = { - type = character_event - title = { - random_valid = { - triggered_desc = { # Muslim Titles - trigger = { religion = religion:islam_religion } - desc = { - random_valid = { - desc = fp2_struggle.2050.t_muslim_one - desc = fp2_struggle.2050.t_muslim_two - desc = fp2_struggle.2050.t_muslim_three - desc = fp2_struggle.2050.t_muslim_four - } - } - } - - triggered_desc = { # Generic (Christian, nickname-like) Titles - trigger = { NOT = { religion = religion:islam_religion } } - desc = { - random_valid = { - desc = fp2_struggle.2050.t_generic_one - desc = fp2_struggle.2050.t_generic_two - desc = fp2_struggle.2050.t_generic_three - desc = fp2_struggle.2050.t_generic_four - } - } - } - } - } - desc = { # See immediate for flags - first_valid = { - triggered_desc = { - trigger = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:generic_court } - desc = fp2_struggle.2050.desc_court - } - triggered_desc = { - trigger = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:jelly_knights } - desc = fp2_struggle.2050.desc_knights - } - triggered_desc = { - trigger = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:upset_nobles } - desc = fp2_struggle.2050.desc_nobles - } - triggered_desc = { - trigger = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:faith_discomfort } - desc = fp2_struggle.2050.desc_faith - } - desc = board_games.0001.desc.i_am_winning.trait.rowdy # Theoretically impossible to trigger, but if something breaks, players will see this and report it for sure - } - } - - theme = corruption - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:fp2_2050_el_cid - animation = throne_room_two_handed_passive_1 - } - - immediate = { - character:107590 = { save_scope_as = fp2_2050_el_cid } - - random_list = { # Spin the wheel to decide who and why wishes ill on el cid - 10 = { # Generic "the court thinks he is bad" - save_scope_value_as = { - name = fp2_2050_reason_for_kicking_out_el_cid - value = flag:generic_court - } - } - 10 = { # Your knights are all sore losers - modifier = { - add = 30 - any_knight = { - OR = { - has_relation_rival = scope:fp2_2050_el_cid - has_relation_nemesis = scope:fp2_2050_el_cid - } - } - } - save_scope_value_as = { - name = fp2_2050_reason_for_kicking_out_el_cid - value = flag:jelly_knights - } - } - 10 = { # Nobles dislike upstart poor people - modifier = { - add = 30 - any_vassal = { - OR = { - has_relation_rival = scope:fp2_2050_el_cid - has_relation_nemesis = scope:fp2_2050_el_cid - } - } - } - save_scope_value_as = { - name = fp2_2050_reason_for_kicking_out_el_cid - value = flag:upset_nobles - } - } - 10 = { # Generic faith concerns from your bishop - save_scope_value_as = { - name = fp2_2050_reason_for_kicking_out_el_cid - value = flag:faith_discomfort - } - } - } - } - - option = { # Family, Friend or Vassal - name = fp2_struggle.2050.a - - trigger = { el_cid_too_important_trigger = yes } - - hidden_effect = { - scope:fp2_2050_el_cid = { add_character_flag = finished_el_cids_travels } # At this point we can imagine that this character has settled, this stops the cycle to prevent spam - } - - custom_tooltip = fp2_struggle.2050.a.serve_tooltip - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2050.a.notif.t - right_icon = scope:fp2_2050_el_cid - - reverse_add_opinion = { - target = scope:fp2_2050_el_cid - modifier = stood_by_me_opinion - opinion = 10 - years = 20 - } - } - - stress_impact = { - fickle = minor_stress_impact_gain - } - - ai_chance = { base = 1000 } - } - - option = { # No, I stand by my knight and he can stay! - name = fp2_struggle.2050.b - - trigger = { - is_ai = no - NOT = { scope:fp2_2050_el_cid = { is_vassal_of = ROOT } } - } - - custom_tooltip = fp2_struggle.2050.a.serve_tooltip - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2050.a.notif.t - right_icon = scope:fp2_2050_el_cid - - if = { - limit = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:generic_court } - add_character_modifier = { - modifier = fp2_kept_accused_traitor_in_court_modifier - years = 10 - } - } - else_if = { - limit = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:jelly_knights } - add_character_modifier = { - modifier = fp2_kept_op_knight_in_court_modifier - years = 10 - } - } - else_if = { - limit = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:upset_nobles } - add_character_modifier = { - modifier = fp2_kept_upstart_knight_in_court_modifier - years = 10 - } - } - else_if = { - limit = { scope:fp2_2050_reason_for_kicking_out_el_cid = flag:faith_discomfort } - add_character_modifier = { - modifier = fp2_kept_godless_mercenary_in_court_modifier - years = 10 - } - } - - reverse_add_opinion = { - target = scope:fp2_2050_el_cid - modifier = stood_by_me_opinion - opinion = 10 - years = 20 - } - scope:fp2_2050_el_cid = { - trigger_event = { - id = fp2_struggle.2045 - years = { 4 12 } - } - } - } - - stress_impact = { - fickle = minor_stress_impact_gain - } - } - - option = { # Okay, please do not give me malus - name = fp2_struggle.2050.c - - trigger = { - NOT = { scope:fp2_2050_el_cid = { is_vassal_of = ROOT } } - } - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2051.t - right_icon = scope:fp2_2050_el_cid - - scope:fp2_2050_el_cid = { - move_to_pool = yes - trigger_event = { - id = fp2_struggle.2045 - days = { 1 4 } - } - } - } - - stress_impact = { - generous = minor_stress_impact_gain - } - - ai_chance = { base = 1 } - } - - option = { # Vanish el cid, even though he is your vassal (suggested by Max) - name = fp2_struggle.2050.c - - trigger = { - is_ai = no - scope:fp2_2050_el_cid = { is_vassal_of = ROOT } - } - - # The only reason to ever select this option is to gain those "repossessed" lands, but it is very mean. - # It will give you tyranny, but it won't directly anger your vassals as they are *narratively* the reason why this is happening. - # The primary reason this exists is to prevent ludonarrative dissonance with the event's description. It is less resource intensive than making new loc. - - # We set the tyranny and opinion loss based on how much was lost (Placed outside the toast to prevent clutter) - add_tyranny = { - value = medium_tyranny_gain - multiply = scope:fp2_2050_el_cid.primary_title.tier - } - - if = { - limit = { can_set_relation_rival_trigger = { CHARACTER = scope:fp2_2050_el_cid } } - set_relation_rival = scope:fp2_2050_el_cid - } - if = { # This is not out of order, it is WAD. If can_set_relation_rival_trigger fails, you just lose a friend but not gain a rival. - limit = { has_relation_friend = scope:fp2_2050_el_cid } - remove_relation_friend = scope:fp2_2050_el_cid - } - - if = { - limit = { scope:fp2_2050_el_cid.primary_title.tier < tier_kingdom } - scope:fp2_2050_el_cid = { - add_opinion = { - modifier = betrayed_me_opinion - target = root - opinion = -100 - } - } - } - else = { - scope:fp2_2050_el_cid = { - add_opinion = { - modifier = betrayed_me_opinion - target = root - opinion = -200 - } - } - } - - create_title_and_vassal_change = { # This tells the engine to start paying closer attention to title changes (and not butt in) - type = revoked - save_scope_as = change - } - scope:fp2_2050_el_cid = { - every_held_title = { - change_title_holder = { - holder = root - change = scope:change - } - } - } - resolve_title_and_vassal_change = scope:change # Tells the engine that it is safe to go about its buisness with titles - - show_as_tooltip = { scope:fp2_2050_el_cid = { move_to_pool = yes } } # Just jomini things~ - hidden_effect = { # Prevents rendering of toast on option highlight - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2051.t - right_icon = scope:fp2_2050_el_cid - - show_as_tooltip = { # Condensed version to fit into the toast - if = { - limit = { scope:fp2_2050_el_cid.primary_title.tier > tier_duchy } - scope:fp2_2050_el_cid = { - if = { - limit = { has_relation_nemesis = ROOT } - set_relation_nemesis = ROOT - } - add_opinion = { - modifier = betrayed_me_opinion - target = root - opinion = -200 - } - } - } - else = { - if = { - limit = { has_relation_rival = ROOT } - set_relation_rival = ROOT - } - add_opinion = { - modifier = betrayed_me_opinion - target = root - opinion = -100 - } - } - } - - # Standard stuff - scope:fp2_2050_el_cid = { - move_to_pool = yes - trigger_event = { - id = fp2_struggle.2045 - days = { 1 4 } - } - } - } - } - - stress_impact = { # This kind of action comes with quite a bit of stress - generous = minor_stress_impact_gain - brave = medium_stress_impact_gain - forgiving = major_stress_impact_gain - gregarious = medium_stress_impact_gain - honest = minor_stress_impact_gain - humble = medium_stress_impact_gain - just = major_stress_impact_gain - trusting = medium_stress_impact_gain - compassionate = major_stress_impact_gain - august = minor_stress_impact_gain - gallant = medium_stress_impact_gain - } - } -} - - -############################################################ -# El Cid Arrives At Your Court -# By The Content Design Team (And scripted by Hugo Cortell) -############################################################ -fp2_struggle.2051 = { - type = character_event - title = fp2_struggle.2051.t - desc = fp2_struggle.2051.desc - - theme = vassal - override_background = { reference = throne_room } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:fp2_2050_el_cid - animation = throne_room_one_handed_passive_1 - } - - immediate = { - character:107590 = { save_scope_as = fp2_2050_el_cid } - add_visiting_courtier = scope:fp2_2050_el_cid - } - - option = { # You will enjoy a high position at my court! - name = fp2_struggle.2051.a - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2050.a.notif.t - right_icon = scope:fp2_2050_el_cid - - pay_treasury_or_gold = { - target = scope:fp2_2050_el_cid - value = medium_treasury_or_gold_value - } - add_courtier = scope:fp2_2050_el_cid - } - - if = { - limit = { exists = cp:councillor_marshal } - fire_councillor = cp:councillor_marshal - } - assign_councillor_type = { - type = councillor_marshal - target = scope:fp2_2050_el_cid - } - - scope:fp2_2050_el_cid = { - add_opinion = { - target = root - modifier = hired_me_opinion - opinion = 20 - } - add_opinion = { - target = root - modifier = given_luxuries_opinion - opinion = 10 - } - - trigger_event = { - id = fp2_struggle.2045 - years = { 4 12 } - } - } - - trigger = { is_ai = no } - } - - option = { # Welcome or whatever - name = fp2_struggle.2051.b - - send_interface_toast = { - type = event_toast_effect_good - title = fp2_struggle.2050.a.notif.t - right_icon = scope:fp2_2050_el_cid - - pay_treasury_or_gold = { - target = scope:fp2_2050_el_cid - value = minor_treasury_or_gold_value - } - add_courtier = scope:fp2_2050_el_cid - } - scope:fp2_2050_el_cid = { - trigger_event = { - id = fp2_struggle.2045 - years = { 4 10 } - } - } - - ai_chance = { base = 65 } - } - - option = { # Away with you vile beggar! - name = fp2_struggle.2051.c - - send_interface_toast = { - type = event_toast_effect_bad - title = fp2_struggle.2051.t - right_icon = scope:fp2_2050_el_cid - - custom_tooltip = fp2_struggle.2050.c.notif - scope:fp2_2050_el_cid = { - move_to_pool = yes - trigger_event = { - id = fp2_struggle.2045 - days = { 1 4 } - } - } - } - - ai_chance = { base = 45 } - } -} diff --git a/events/dlc/fp2/fp2_other_decision_events.txt b/events/dlc/fp2/fp2_other_decision_events.txt index 0a724e6b2..0d5a7755f 100644 --- a/events/dlc/fp2/fp2_other_decision_events.txt +++ b/events/dlc/fp2/fp2_other_decision_events.txt @@ -320,8 +320,8 @@ fp2_other_decisions.0001 = { 100 = { trigger = { # can replace the court chaplain - faith = { - has_doctrine_parameter = clerical_appointment_fixed + rite = { + rite_has_parameter = clerical_appointment_fixed } } diff --git a/events/dlc/fp2/fp2_yearly_events.txt b/events/dlc/fp2/fp2_yearly_events.txt index 38d99790f..fa9aed765 100644 --- a/events/dlc/fp2/fp2_yearly_events.txt +++ b/events/dlc/fp2/fp2_yearly_events.txt @@ -58,7 +58,7 @@ fp2_yearly.1001 = { trigger = { #Strategy Games Culture Tradition has_fp2_dlc_trigger = yes - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes capital_province = { geographical_region = world_europe_west_iberia } @@ -150,7 +150,7 @@ fp2_yearly.1002 = { trigger = { has_fp2_dlc_trigger = yes is_adult = yes - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes any_courtier = { is_available_healthy_ai_adult = yes } NOT = { @@ -223,7 +223,7 @@ fp2_yearly.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deviant = medium_stress_gain } @@ -231,7 +231,7 @@ fp2_yearly.1002 = { option = { name = fp2_yearly.1002.c - stress_impact = { + stress_and_fulfillment_impact = { deviant = medium_stress_loss } @@ -265,7 +265,7 @@ fp2_yearly.1002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deviant = medium_stress_gain } @@ -629,7 +629,7 @@ fp2_yearly.1006 = { name = fp2_yearly.1006.a remove_short_term_gold = minor_gold_value #Cheese based bonus - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss gluttonous = minor_stress_impact_loss comfort_eater = minor_stress_impact_loss @@ -668,7 +668,7 @@ fp2_yearly.1006 = { option = { #Nothing happens you hate cheese and having fun name = fp2_yearly.1006.c - stress_impact = { + stress_and_fulfillment_impact = { gluttonous = miniscule_stress_impact_gain comfort_eater = miniscule_stress_impact_gain eccentric = miniscule_stress_impact_gain @@ -741,7 +741,7 @@ fp2_yearly.1007 = { option = { name = fp2_yearly.1007.b - stress_impact = { + stress_and_fulfillment_impact = { gluttonous = major_stress_loss } @@ -884,6 +884,7 @@ fp2_yearly.2020 = { random_traits = no culture = scope:fp2_2020_valencia.culture faith = scope:fp2_2020_valencia.faith + rite = scope:fp2_2020_valencia.rite dynasty = none save_scope_as = fp2_2020_laxatador } @@ -951,7 +952,7 @@ fp2_yearly.2020 = { name = fp2_struggle.2020.c flavor = fp2_struggle.2020.c.desc - stress_impact = { gluttonous = minor_stress_impact_gain } # As you need to be glut to trigger the event, the stress is reduced to compensate + stress_and_fulfillment_impact = { gluttonous = minor_stress_impact_gain } # As you need to be glut to trigger the event, the stress is reduced to compensate if = { limit = { has_trait = gluttonous } add_prestige = medium_prestige_gain # Resisting is very difficult @@ -1267,7 +1268,7 @@ fp2_yearly.3000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = massive_stress_impact_gain zealous = major_stress_impact_gain deceitful = medium_stress_impact_gain @@ -1350,7 +1351,7 @@ fp2_yearly.3000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = massive_stress_impact_gain impatient = major_stress_impact_gain shy = major_stress_impact_gain @@ -1429,7 +1430,7 @@ fp2_yearly.3000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = massive_stress_impact_gain generous = major_stress_impact_gain craven = medium_stress_impact_gain @@ -1455,7 +1456,7 @@ fp2_yearly.3000 = { option = { name = fp2_flavor.0001.d - stress_impact = { + stress_and_fulfillment_impact = { diligent = major_stress_impact_gain ambitious = major_stress_impact_gain generous = medium_stress_impact_gain @@ -1582,7 +1583,7 @@ fp2_yearly.3001 = { option = { #your language + vulgar (Latin + Castillian / Hebrew + Sephardí / Arabic + Mozarabic ) name = fp2_flavor.3001.c - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss zealous = medium_stress_gain } @@ -1606,7 +1607,7 @@ fp2_yearly.3001 = { years = 5 } add_piety = minor_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain zealous = minor_stress_impact_gain } @@ -1664,7 +1665,7 @@ fp2_yearly.3002 = { NOT = { is_consort_of = root } might_cheat_on_every_partner_trigger = yes trigger_if = { - limit = { relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = root } } + limit = { relation_with_character_is_incestuous_in_my_rite_trigger = { CHARACTER = root } } OR = { has_perk = subtle_desire_perk accepts_incest_with_trigger = { CHARACTER = root } @@ -1690,7 +1691,7 @@ fp2_yearly.3002 = { NOT = { is_consort_of = root } might_cheat_on_every_partner_trigger = yes trigger_if = { - limit = { relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = root } } + limit = { relation_with_character_is_incestuous_in_my_rite_trigger = { CHARACTER = root } } OR = { has_perk = subtle_desire_perk accepts_incest_with_trigger = { CHARACTER = root } @@ -1706,12 +1707,13 @@ fp2_yearly.3002 = { trigger = { NOT = { has_trait = celibate } + might_cheat_on_every_partner_trigger = yes OR = { has_perk = unshackled_lust_perk is_attracted_to_gender_of = root } trigger_if = { - limit = { relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = scope:fp2_flavor_3011_best_friend } } + limit = { relation_with_character_is_incestuous_in_my_rite_trigger = { CHARACTER = scope:fp2_flavor_3011_best_friend } } OR = { has_perk = subtle_desire_perk accepts_incest_with_trigger = { CHARACTER = scope:fp2_flavor_3011_best_friend } @@ -1728,18 +1730,18 @@ fp2_yearly.3002 = { scope:fp2_flavor_3011_best_friend = { is_female = yes } - NOT = { faith = { has_doctrine = doctrine_homosexuality_accepted } } + NOT = { rite = { rite_has_doctrine = doctrine_homosexuality_accepted } } } AND = { is_male = yes scope:fp2_flavor_3011_best_friend = { is_male = yes } - NOT = { faith = { has_doctrine = doctrine_homosexuality_accepted } } + NOT = { rite = { rite_has_doctrine = doctrine_homosexuality_accepted } } } } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain zealous = medium_stress_impact_gain #some extra stress } @@ -1779,7 +1781,7 @@ fp2_yearly.3002 = { option = { #allowe them to move in but stay as friends name = fp2_flavor.3011.b - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_loss lustful = medium_stress_impact_gain } @@ -1833,7 +1835,7 @@ fp2_yearly.3002 = { } text = fp2_flavor.3011.c } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain #you get stressed at losing your bff lustful = minor_stress_impact_gain callous = minor_stress_loss @@ -1929,7 +1931,7 @@ fp2_yearly.3003 = { option = { #pretend nothing's wrong name = fp2_flavor.3021.a - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain compassionate = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -1994,7 +1996,7 @@ fp2_yearly.3003 = { send_interface_toast = { title = fp2_flavor.3021.b.success left_icon = ROOT - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain compassionate = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -2013,7 +2015,7 @@ fp2_yearly.3003 = { opinion = -20 } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain compassionate = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -2068,7 +2070,7 @@ fp2_yearly.3003 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } @@ -2101,7 +2103,7 @@ fp2_yearly.3003 = { opinion = -50 } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_loss brave = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -2169,7 +2171,7 @@ fp2_yearly.4001 = { add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = medium_stress_impact_gain diligent = major_stress_impact_loss @@ -2187,7 +2189,7 @@ fp2_yearly.4001 = { option = { #a little nap can't hurt anyone name = fp2_yearly.4001.b - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss diligent = massive_stress_impact_gain } @@ -2275,7 +2277,7 @@ fp2_yearly.4002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_gain cynical = minor_stress_loss arrogant = medium_stress_gain @@ -2317,7 +2319,7 @@ fp2_yearly.4002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_loss cynical = medium_stress_gain forgiving = major_stress_gain @@ -2452,7 +2454,7 @@ fp2_yearly.4003 = { } } - option = { #Call upon a local Holy Order + option = { #Call upon a local Military Order name = fp2_yearly.4003.a trigger = { @@ -2494,7 +2496,7 @@ fp2_yearly.4003 = { remove_treasury_or_gold = major_treasury_or_gold_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain arbitrary = medium_stress_impact_gain cynical = medium_stress_impact_gain @@ -2518,7 +2520,7 @@ fp2_yearly.4003 = { add_piety = medium_piety_loss - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain zealous = major_stress_impact_gain humble = medium_stress_impact_gain @@ -3250,7 +3252,7 @@ fp2_yearly.4007 = { type = character_event title = fp2_yearly.4007.t desc = fp2_yearly.4007.desc - theme = faith + theme = christian left_portrait = { character = root animation = admiration @@ -3331,7 +3333,7 @@ fp2_yearly.4007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain honest = massive_stress_impact_gain just = major_stress_impact_gain @@ -3361,7 +3363,7 @@ fp2_yearly.4007 = { add_piety = miniscule_piety_value - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss cynical = massive_stress_impact_gain deceitful = massive_stress_impact_gain @@ -3397,7 +3399,7 @@ fp2_yearly.4007 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain zealous = massive_stress_impact_gain honest = massive_stress_impact_gain @@ -3576,7 +3578,7 @@ fp2_yearly.4008 = { has_fp2_dlc_trigger = yes #Standard check - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes is_available_at_peace_adult = yes #You are Iberian @@ -3621,6 +3623,7 @@ fp2_yearly.4008 = { culture = root.culture faith = root.faith + rite = root.rite dynasty = none @@ -3644,7 +3647,7 @@ fp2_yearly.4008 = { add_prestige = minor_prestige_value - stress_impact = { + stress_and_fulfillment_impact = { cynical = miniscule_stress_impact_loss arrogant = miniscule_stress_impact_loss stubborn = miniscule_stress_impact_loss @@ -3770,7 +3773,7 @@ fp2_yearly.4009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = medium_stress_impact_gain craven = medium_stress_impact_gain content = major_stress_impact_gain @@ -3820,7 +3823,7 @@ fp2_yearly.4009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss calm = medium_stress_impact_gain craven = medium_stress_impact_gain @@ -3978,7 +3981,7 @@ fp2_yearly.4010 = { title = fp2_yearly.4010.a.fail type = event_toast_effect_bad left_icon = root - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_gain ambitious = major_stress_impact_gain zealous = medium_stress_impact_gain @@ -4015,7 +4018,7 @@ fp2_yearly.4010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = miniscule_stress_impact_loss calm = medium_stress_impact_gain content = medium_stress_impact_gain @@ -4054,7 +4057,7 @@ fp2_yearly.4010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss cynical = medium_stress_impact_gain lazy = medium_stress_impact_gain @@ -4136,11 +4139,11 @@ fp2_yearly.8000 = { has_religion = religion:judaism_religion } - root.faith = { + root.rite = { OR = { - has_doctrine = tenet_religious_legal_pronouncements - has_doctrine = tenet_literalism - has_doctrine = tenet_adaptive + rite_has_tenet = tenet_religious_legal_pronouncements + rite_has_tenet = tenet_literalism + rite_has_tenet = tenet_adaptive } } @@ -4257,7 +4260,7 @@ fp2_yearly.8000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain temperate = medium_stress_impact_gain trusting = minor_stress_impact_gain @@ -4293,7 +4296,7 @@ fp2_yearly.8000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain cynical = minor_stress_impact_gain gluttonous = medium_stress_impact_gain @@ -4343,7 +4346,7 @@ fp2_yearly.8000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain temperate = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -4467,7 +4470,7 @@ fp2_yearly.8001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Characters who are set in their ways or have no respect for common folk find this a very unappealing option. arrogant = medium_stress_impact_gain august = minor_stress_impact_gain @@ -4515,7 +4518,7 @@ fp2_yearly.8001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Characters who are careful or hate the masses find this a very unappealing option. eccentric = minor_stress_impact_loss craven = minor_stress_impact_gain @@ -4551,7 +4554,7 @@ fp2_yearly.8001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Characters who likes efficiency and democracy dislikes this option ambitious = medium_stress_impact_gain compassionate = minor_stress_impact_gain @@ -4590,11 +4593,11 @@ fp2_yearly.8002 = { has_religion = religion:judaism_religion } - faith = { + rite = { OR = { - has_doctrine = tenet_religious_legal_pronouncements - has_doctrine = tenet_literalism - has_doctrine = tenet_adaptive + rite_has_tenet = tenet_religious_legal_pronouncements + rite_has_tenet = tenet_literalism + rite_has_tenet = tenet_adaptive } } @@ -4651,7 +4654,7 @@ fp2_yearly.8002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Craven character's don't wanna take the risk, and humble and trusting doesn't want to undermine the ulama craven = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -4705,7 +4708,7 @@ fp2_yearly.8002 = { } } - stress_impact = { #temperate or cautious characters don't wanna eat strange blobs washed up from the Atlantic + stress_and_fulfillment_impact = { #temperate or cautious characters don't wanna eat strange blobs washed up from the Atlantic inappetetic = medium_stress_impact_gain temperate = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -4736,7 +4739,7 @@ fp2_yearly.8002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Ambitious or Impatient characters don't wanna wait for the ulama ambitious = minor_stress_impact_gain arbitrary = minor_stress_impact_gain @@ -4779,7 +4782,7 @@ fp2_yearly.8002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Rational characters find this to be total overkill cynical = minor_stress_impact_gain @@ -4880,7 +4883,8 @@ fp2_yearly.8003 = { } culture = culture:baranis dynasty = none - faith = faith:muwalladi + faith = faith:sunni + rite = rite:maliki save_scope_as = flying_polymath } set_global_variable = ibnfirnas_created @@ -4905,6 +4909,7 @@ fp2_yearly.8003 = { } culture = root.capital_province.culture faith = root.faith + rite = root.rite save_scope_as = flying_polymath } } @@ -5026,7 +5031,7 @@ fp2_yearly.8003 = { } } - stress_impact = { #Compassionate people worry about bystanders getting hurt + stress_and_fulfillment_impact = { #Compassionate people worry about bystanders getting hurt compassionate = minor_stress_impact_gain craven = minor_stress_impact_gain } @@ -5093,7 +5098,7 @@ fp2_yearly.8003 = { } } - stress_impact = { #cravens, contents and the bedridden don't wanna take the risk + stress_and_fulfillment_impact = { #cravens, contents and the bedridden don't wanna take the risk craven = medium_stress_impact_gain content = minor_stress_impact_gain ill = minor_stress_impact_gain @@ -5113,7 +5118,7 @@ fp2_yearly.8003 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain brave = minor_stress_impact_gain curious = minor_stress_impact_gain @@ -5203,7 +5208,7 @@ fp2_yearly.8004 = { name = "Gherardo da Cremona" #Gerard of Cremona gender = male template = scholar_character - trait = scholar + trait = erudite trait = education_learning_4 random_traits_list = { #his personality count = 3 @@ -5250,6 +5255,7 @@ fp2_yearly.8004 = { } culture = root.culture faith = root.faith + rite = root.rite save_scope_as = translation_enthusiast } } @@ -5281,7 +5287,7 @@ fp2_yearly.8004 = { } modifier = { add = 40 - has_trait = scholar + has_trait = erudite } modifier = { add = 40 @@ -5356,7 +5362,7 @@ fp2_yearly.8004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # Content or lazy characters don't want to make the effort content = minor_stress_impact_gain lazy = minor_stress_impact_gain @@ -5404,7 +5410,7 @@ fp2_yearly.8004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # self-absorbed cheapskates still don't want to pay for this arrogant = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -5451,12 +5457,12 @@ fp2_yearly.8004 = { } } - stress_impact = { + stress_and_fulfillment_impact = { # ambitious or learned characters cry from this ambitious = minor_stress_impact_gain diligent = minor_stress_impact_gain generous = minor_stress_impact_gain - scholar = major_stress_impact_gain + erudite = major_stress_impact_gain } } } @@ -5504,7 +5510,7 @@ fp2_yearly.8005 = { trigger = { has_fp2_dlc_trigger = yes - is_landed_or_landless_administrative = yes + is_landed_or_landless_administrative_or_theocratic = yes OR = { capital_province = { geographical_region = world_europe_west_iberia } culture = { has_cultural_pillar = heritage_iberian } @@ -5549,7 +5555,7 @@ fp2_yearly.8005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { chaste = major_stress_impact_gain content = minor_stress_impact_gain arrogant = major_stress_impact_gain @@ -5569,7 +5575,7 @@ fp2_yearly.8005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain impatient = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5603,7 +5609,7 @@ fp2_yearly.8005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain greedy = minor_stress_impact_gain lazy = minor_stress_impact_gain @@ -5635,7 +5641,7 @@ fp2_yearly.8005 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain calm = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -5742,6 +5748,7 @@ fp2_yearly.8006 = { } culture = culture:russian faith = scope:former_master.faith + rite = scope:former_master.rite dynasty = none save_scope_as = saqaliba_leader @@ -5821,7 +5828,7 @@ fp2_yearly.8006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain craven = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5854,7 +5861,7 @@ fp2_yearly.8006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain compassionate = minor_stress_impact_gain generous = major_stress_impact_gain @@ -5896,7 +5903,7 @@ fp2_yearly.8006 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain compassionate = massive_stress_impact_gain generous = massive_stress_impact_gain @@ -5984,7 +5991,7 @@ fp2_yearly.9000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss greedy = minor_stress_impact_gain compassionate = medium_stress_impact_gain @@ -6043,7 +6050,7 @@ fp2_yearly.9000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss greedy = minor_stress_impact_loss } @@ -6073,7 +6080,7 @@ fp2_yearly.9000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss greedy = minor_stress_impact_loss } @@ -6590,7 +6597,7 @@ fp2_yearly.9002 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_gain greedy = minor_stress_impact_gain compassionate = medium_stress_impact_loss @@ -6610,7 +6617,7 @@ fp2_yearly.9002 = { name = fp2_james.0003.b scope:fp2_james_003_jewish_refugee_leader = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss zealous = minor_stress_impact_loss } @@ -6712,14 +6719,17 @@ fp2_yearly.9005 = { limit = { faith = scope:fp2_james_0004_place_of_murder.faith } - add_county_modifier = fp2_toledo_nights_fallout_modifier + add_county_modifier = { + modifier = fp2_toledo_nights_fallout_modifier + years = 10 + } } add_hook = { type = favor_hook target = scope:fp2_james_0004_murder_baron } - stress_impact = { + stress_and_fulfillment_impact = { just = massive_stress_impact_gain compassionate = major_stress_impact_gain forgiving = major_stress_impact_gain @@ -6852,7 +6862,7 @@ fp2_yearly.9006 = { opinion = 20 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain zealous = minor_stress_impact_loss } @@ -6874,7 +6884,7 @@ fp2_yearly.9006 = { opinion = -25 } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_gain } ai_chance = { diff --git a/events/dlc/fp3/fp3_clan_events_2000.txt b/events/dlc/fp3/fp3_clan_events_2000.txt deleted file mode 100644 index de71d756e..000000000 --- a/events/dlc/fp3/fp3_clan_events_2000.txt +++ /dev/null @@ -1,1493 +0,0 @@ -################################ -# Clan Events 2000 -################################ - -namespace = clan_event - -# 2000 - Learning on the Job -# 2001 - Educational Taxation -# 2002 - Overworked Tax Collector -# 2005 - Offering a Replacement -# 2007 - A Troublesome Ledger - -################################ -# Learning on the Job -# by Emil Tisander -################################ -scripted_trigger clan_event_2000_suitable_tax_collector_trigger = { - is_ai = yes - NOR = { - has_trait = lazy - has_trait = dull - } - any_tax_collector_vassal = { } -} - -clan_event.2000 = { - type = character_event - title = clan_event.2000.t - desc = clan_event.2000.desc - theme = stewardship - override_background = { reference = study } - left_portrait = { - character = scope:improved_tax_collector - animation = personality_honorable - } - right_portrait = { - character = root - animation = thinking - } - - cooldown = { years = 5 } - - trigger = { - has_fp3_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - is_commanding_army = no - any_tax_collector = { - clan_event_2000_suitable_tax_collector_trigger = yes - } - } - - immediate = { - # First, let's find a tax collector. - random_tax_collector = { - limit = { - clan_event_2000_suitable_tax_collector_trigger = yes - } - weight = { - base = 1 - modifier = { # Let's prioritize any close family members (cause that's more interesting) - add = 25 - is_close_family_of = root - } - modifier = { # Add a small bump if they are of the same house - add = 10 - exists = house - exists = root.house - house = root.house - } - modifier = { # Diligent or Ambitious tax collectors are more likely - add = 10 - OR = { - has_trait = diligent - has_trait = ambitious - } - } - modifier = { # Being patient is also useful - add = 5 - has_trait = patient - } - modifier = { # And so is being stubborn - add = 5 - has_trait = stubborn - } - } - save_scope_as = improved_tax_collector - save_scope_as = tax_collector_name # For localization - } - - # Let's randomize which skills the Tax Collector may improve. Weighted slightly on personality and education. - random_list = { - pick = 2 - unique = yes - - 20 = { # Diplomacy - save_scope_value_as = { - name = clan_event_2000_diplomacy - value = yes - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = gregarious - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = trusting - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_education_diplomacy_trigger = yes - } - } - } - 20 = { # Martial - save_scope_value_as = { - name = clan_event_2000_martial - value = yes - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = wrathful - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = brave - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_education_martial_trigger = yes - } - } - } - 20 = { # Stewardship - save_scope_value_as = { - name = clan_event_2000_stewardship - value = yes - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = greedy - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = just - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_education_stewardship_trigger = yes - } - } - } - 20 = { # Intrigue - save_scope_value_as = { - name = clan_event_2000_intrigue - value = yes - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = deceitful - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = vengeful - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_education_intrigue_trigger = yes - } - } - } - 20 = { # Learning - save_scope_value_as = { - name = clan_event_2000_learning - value = yes - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = humble - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_trait = patient - } - } - modifier = { - factor = 1.5 - scope:improved_tax_collector = { - has_education_learning_trigger = yes - } - } - } - } - - scope:improved_tax_collector = { - if = { - limit = { # If the tax collector doesn't have a maxed out education trait, let's make it more likely for them to be picked in clan_event.2001, should it trigger - NOR = { - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - has_trait = education_martial_4 - has_trait = education_martial_5 - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - has_trait = education_intrigue_4 - has_trait = education_intrigue_5 - has_trait = education_learning_4 - has_trait = education_learning_5 - } - } - add_character_flag = clan_event_2000_bonus - } - } - } - - option = { # Attend to the needs of the people. - name = clan_event.2000.a - - trigger = { exists = scope:clan_event_2000_diplomacy } - - scope:improved_tax_collector = { - add_diplomacy_skill = 1 - } - random = { # Chance to increase vassal opinion slightly - chance = { - value = 10 - add = { - value = scope:improved_tax_collector.diplomacy - multiply = 2 - } - max = 75 - } - - send_interface_toast = { - title = clan_event.2000.a.success - left_icon = scope:improved_tax_collector - - scope:improved_tax_collector = { - every_tax_collector_vassal = { - custom = every_taxed_vassal_tt - add_opinion = { - modifier = fp3_diplomatic_tax_collection_opinion - years = 10 - target = root - } - } - } - } - } - - stress_impact = { - impatient = medium_stress_impact_gain - arbitrary = major_stress_impact_gain - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 5 - has_trait = gregarious - } - modifier = { - factor = 5 - has_trait = trusting - } - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = arbitrary - has_trait = arrogant - } - } - } - } - - option = { # Arrange guard patrols. That will keep the vassals in line. - name = clan_event.2000.b - - trigger = { exists = scope:clan_event_2000_martial } - - scope:improved_tax_collector = { - add_martial_skill = 1 - } - random = { # Chance to gain some Dread - chance = { - value = 10 - add = { - value = scope:improved_tax_collector.martial - multiply = 2 - } - max = 75 - } - - send_interface_toast = { - title = clan_event.2000.b.success - left_icon = scope:improved_tax_collector - add_dread = minor_dread_gain - } - } - - stress_impact = { - forgiving = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 5 - has_trait = wrathful - } - modifier = { - factor = 5 - has_trait = callous - } - modifier = { - factor = 0 - OR = { - has_trait = forgiving - has_trait = compassionate - } - } - } - } - - option = { # Keep a ledger, and organize your work. - name = clan_event.2000.c - - trigger = { exists = scope:clan_event_2000_stewardship } - - scope:improved_tax_collector = { - add_stewardship_skill = 1 - } - random = { # Chance to gain slightly increased taxes from clan obligations - chance = { - value = 10 - add = { - value = scope:improved_tax_collector.stewardship - multiply = 2 - } - max = 75 - } - - send_interface_toast = { - title = clan_event.2000.c.success - left_icon = scope:improved_tax_collector - add_character_modifier = { - modifier = fp3_efficient_tax_collector - years = 10 - } - } - } - - stress_impact = { - lazy = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 2 - has_trait = education_stewardship - } - modifier = { - factor = 0 - has_trait = lazy - } - } - } - - option = { # Spy on my subjects. You'll learn much by keeping a watchful eye. - name = clan_event.2000.d - - trigger = { exists = scope:clan_event_2000_intrigue } - - scope:improved_tax_collector = { - add_intrigue_skill = 1 - } - random = { - chance = { - value = 10 - add = { - value = scope:improved_tax_collector.intrigue - multiply = 2 - } - max = 75 - } - - custom_tooltip = clan_event.2000.d.tt - - send_interface_toast = { - title = clan_event.2000.d.success - left_icon = scope:improved_tax_collector - - if = { - limit = { - scope:improved_tax_collector = { - any_tax_collector_vassal = { - any_secret = { - NOT = { is_known_by = root } - } - } - } - } - scope:improved_tax_collector = { - random_tax_collector_vassal = { - random_secret = { - limit = { - NOT = { is_known_by = root } - } - #save_scope_as = vassal_secret_to_reveal - reveal_to = root - } - } - } - #scope:vassal_secret_to_reveal = { reveal_to = root } - } - } - } - - stress_impact = { - honest = major_stress_impact_gain - trusting = major_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 5 - has_trait = deceitful - } - modifier = { - factor = 5 - has_trait = paranoid - } - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = trusting - } - } - } - } - - option = { # Devote your time to matters of faith/scholarly studies. - name = { - trigger = { always = yes } - text = clan_event.2000.e1 - } - name = { - trigger = { scope:improved_tax_collector.faith = root.faith } - text = clan_event.2000.e2 - } - - trigger = { exists = scope:clan_event_2000_learning } - - scope:improved_tax_collector = { - add_learning_skill = 1 - } - if = { - limit = { - scope:improved_tax_collector.faith = root.faith - } - add_piety = minor_piety_gain - } - else_if = { - limit = { - scope:improved_tax_collector.religion = root.religion - } - add_piety = miniscule_piety_gain - } - - stress_impact = { - zealous = medium_stress_impact_loss - cynical = major_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 5 - has_trait = zealous - } - modifier = { - factor = 0 - has_trait = cynical - } - } - } - - option = { # You are here to collect taxes, yes? Then GET me taxes! - name = clan_event.2000.option_f - - # First, let's add a sizable amount of gold - add_treasury_or_gold = { - value = 0 - scope:improved_tax_collector = { # Let's add gold based on the vassals the tax collector has assigned - every_tax_collector_vassal = { - add = { - value = monthly_character_income - multiply = 0.3 - } - } - } - min = minor_gold_value # But we don't want the amount to be too small - } - - # Now, let's make the affected vassals upset - scope:improved_tax_collector = { - every_tax_collector_vassal = { - custom = every_taxed_vassal_tt - add_opinion = { - modifier = fp3_outrageous_tax_collection_opinion - target = root - } - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - just = major_stress_impact_gain - generous = major_stress_impact_gain - } - - ai_chance = { - base = 20 - - modifier = { - factor = 0 - NOR = { - has_trait = greedy - has_trait = callous - } - } - } - } - - option = { # Speak favourably of ME. - name = clan_event.2000.g - - if = { - limit = { - scope:improved_tax_collector = { - house ?= root.house - } - } - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain } - add_prestige = minor_prestige_gain - } - else = { - add_prestige = medium_prestige_gain - } - - stress_impact = { - arrogant = medium_stress_impact_loss - humble = major_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 5 - has_trait = arrogant - } - modifier = { - factor = 0 - has_trait = humble - } - } - } -} - -################################ -# Educational Taxation -# by Emil Tisander -################################ -clan_event.2001 = { - type = character_event - title = clan_event.2001.t - desc = { - desc = clan_event.2001.opening_desc - first_valid = { - triggered_desc = { - trigger = { - scope:educational_tax_collector = { has_trait = education_diplomacy } - } - desc = clan_event.2001.education_diplomacy - } - triggered_desc = { - trigger = { - scope:educational_tax_collector = { has_trait = education_martial } - } - desc = clan_event.2001.education_martial - } - triggered_desc = { - trigger = { - scope:educational_tax_collector = { has_trait = education_stewardship } - } - desc = clan_event.2001.education_stewardship - } - triggered_desc = { - trigger = { - scope:educational_tax_collector = { has_trait = education_intrigue } - } - desc = clan_event.2001.education_intrigue - } - triggered_desc = { - trigger = { - scope:educational_tax_collector = { has_trait = education_learning } - } - desc = clan_event.2001.education_learning - } - } - } - theme = stewardship - override_background = { reference = throne_room } - left_portrait = { - character = scope:educational_tax_collector - animation = happiness - } - right_portrait = { - character = root - animation = personality_content - } - - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - is_commanding_army = no - any_tax_collector = { - is_ai = yes - NOR = { - # Cannot have a maxed out education already - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - has_trait = education_martial_4 - has_trait = education_martial_5 - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - has_trait = education_intrigue_4 - has_trait = education_intrigue_5 - has_trait = education_learning_4 - has_trait = education_learning_5 - } - } - } - - immediate = { - random_tax_collector = { - limit = { - is_ai = yes - NOR = { - # Cannot have any a maxed out education already - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - has_trait = education_martial_4 - has_trait = education_martial_5 - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - has_trait = education_intrigue_4 - has_trait = education_intrigue_5 - has_trait = education_learning_4 - has_trait = education_learning_5 - } - } - weight = { - base = 1 - modifier = { # Let's prioritize any close family members (cause that's more interesting) - add = 10 - is_close_family_of = root - } - modifier = { # If we have a tax collector who has improved their skills already (in clan_event.2000) that character is more likely - add = 20 - has_character_flag = clan_event_2000_bonus - } - } - save_scope_as = educational_tax_collector - } - - scope:educational_tax_collector = { - if = { - limit = { - has_character_flag = clan_event_2000_bonus - } - remove_character_flag = clan_event_2000_bonus - } - } - } - - option = { # Taxes are great for the both of us! - name = clan_event.2001.a - - scope:educational_tax_collector = { - rank_up_education_effect = yes - } - - ai_chance = { - base = 20 - - modifier = { - factor = 10 - has_trait = content - } - modifier = { - factor = 2 - has_trait = temperate - } - } - } - - option = { # Push them to do even more - name = clan_event.2001.b - - scope:educational_tax_collector = { - rank_up_education_effect = yes - - # Chance to increase the skill matching their education. Chance is affected by their energy. - if = { - limit = { has_trait = education_diplomacy } - random = { - chance = { - value = 50 - add = { - value = ai_energy - divide = 2 - } - max = 90 - min = 10 - } - - root = { - send_interface_toast = { - title = clan_event.2001.success - left_icon = scope:educational_tax_collector - - scope:educational_tax_collector = { add_diplomacy_skill = 2 } - } - } - } - } - else_if = { - limit = { has_trait = education_martial } - random = { - chance = { - value = 50 - add = { - value = ai_energy - divide = 2 - } - max = 90 - min = 10 - } - - root = { - send_interface_toast = { - title = clan_event.2001.success - left_icon = scope:educational_tax_collector - - scope:educational_tax_collector = { add_martial_skill = 2 } - } - } - } - } - else_if = { - limit = { has_trait = education_stewardship } - random = { - chance = { - value = 50 - add = { - value = ai_energy - divide = 2 - } - max = 90 - min = 10 - } - - root = { - send_interface_toast = { - title = clan_event.2001.success - left_icon = scope:educational_tax_collector - - scope:educational_tax_collector = { add_stewardship_skill = 2 } - } - } - } - } - else_if = { - limit = { has_trait = education_intrigue } - random = { - chance = { - value = 50 - add = { - value = ai_energy - divide = 2 - } - max = 90 - min = 10 - } - - root = { - send_interface_toast = { - title = clan_event.2001.success - left_icon = scope:educational_tax_collector - - scope:educational_tax_collector = { add_intrigue_skill = 2 } - } - } - } - } - else_if = { - limit = { has_trait = education_learning } - random = { - chance = { - value = 50 - add = { - value = ai_energy - divide = 2 - } - max = 90 - min = 10 - } - - root = { - send_interface_toast = { - title = clan_event.2001.success - left_icon = scope:educational_tax_collector - - scope:educational_tax_collector = { add_learning_skill = 2 } - } - } - } - } - - stress_impact = { - base = massive_stress_impact_gain - } - } - - progress_towards_rival_effect = { - CHARACTER = scope:educational_tax_collector - REASON = rival_grave_insult - OPINION = -30 - } - - add_prestige = medium_prestige_loss - - stress_impact = { - patient = medium_stress_impact_gain - just = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 0 - OR = { - has_trait = patient - has_trait = just - has_trait = compassionate - has_trait = shy - has_trait = craven - } - } - } - } -} - -################################ -# Overworked Tax Collector -# by Emil Tisander -################################ -clan_event.2002 = { - type = character_event - title = clan_event.2002.t - desc = clan_event.2002.desc - theme = stewardship - override_background = { reference = corridor_night } - left_portrait = { - character = scope:troubled_tax_collector - animation = stressed_teacher - } - right_portrait = { - character = root - animation = personality_compassionate - } - - cooldown = { years = 15 } - - trigger = { - has_fp3_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - is_commanding_army = no - any_tax_collector = { # Any tax collector with at least one tax payer will do - is_ai = yes - any_tax_collector_vassal = { } - } - } - - immediate = { - random_tax_collector = { - limit = { - is_ai = yes - any_tax_collector_vassal = { } - } - save_scope_as = troubled_tax_collector - save_scope_as = tax_collector_name # For localization - } - } - - option = { # Allow me to help! - name = clan_event.2002.a - # While the event offers you the choice to increase opinion with your tax collector or the assigned vassals, you get both if your stewardship is high! - trigger = { - stewardship >= high_skill_rating - } - - scope:troubled_tax_collector = { - add_opinion = { - modifier = fp3_thankful_tax_collector_opinion - opinion = 25 - years = 10 - target = root - } - - every_tax_collector_vassal = { - custom = every_taxed_vassal_tt - add_opinion = { - modifier = fp3_diplomatic_tax_collection_opinion - years = 15 - target = root - } - } - } - - ai_chance = { - base = 50 - - modifier = { - factor = 2 - has_trait = diligent - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = content - } - } - } - } - - option = { # Why don't you take a break? - name = clan_event.2002.b - - scope:troubled_tax_collector = { - add_opinion = { - modifier = fp3_thankful_tax_collector_opinion - opinion = 20 - years = 10 - target = root - } - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = gregarious - } - } - } - } - - option = { # Good. My vassals expects their taxes to be handled efficiently... - name = clan_event.2002.c - - scope:troubled_tax_collector = { - every_tax_collector_vassal = { - custom = every_taxed_vassal_tt - add_opinion = { - modifier = fp3_diplomatic_tax_collection_opinion - years = 10 - target = root - } - } - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - OR = { - has_trait = just - has_trait = cynical - } - } - } - } -} - -################################ -# Offering a Replacement -# by Emil Tisander -################################ -clan_event.2005 = { - type = character_event - title = clan_event.2005.t - desc = clan_event.2005.desc - theme = stewardship - override_background = { reference = throne_room } - left_portrait = { - character = scope:loyal_vassal - animation = disbelief - } - right_portrait = { - character = scope:tax_collector_replacement - animation = reading - } - - cooldown = { years = 20 } - - trigger = { - is_ai = no - has_fp3_dlc_trigger = yes - basic_is_valid_for_yearly_events_trigger = yes - is_commanding_army = no - - # We need to have a tax collector with fairly low aptitude, as to have someone to replace - any_tax_collector = { - is_ai = yes - tax_collector_aptitude = { - target = clan_tax_slot - value <= 2 - } - } - - # We also need a vassal who, in some shape or form, would like to help you - any_vassal = { - is_ai = yes - OR = { - has_trait = loyal - opinion = { - target = root - value >= 50 - } - } - NOT = { has_relation_rival = root } - is_available_ai_adult = yes - government_has_flag = government_is_clan - } - } - - immediate = { - # First, let's find that bad tax collector the vassal wants to replace - random_tax_collector = { - limit = { - is_ai = yes - tax_collector_aptitude = { - target = clan_tax_slot - value <= 2 - } - } - save_scope_as = bad_tax_collector - } - - # Then find an appropiate vassal - random_vassal = { - limit = { - is_ai = yes - OR = { - has_trait = loyal - opinion = { - target = root - value >= 50 - } - } - NOT = { has_relation_rival = root } - is_available_ai_adult = yes - government_has_flag = government_is_clan - } - weight = { - base = 1 - modifier = { # Prioritize any vassal with the Loyal trait - add = 10 - has_trait = loyal - } - modifier = { # And vassals with very high opinion of you - add = 10 - opinion = { - target = root - value >= 80 - } - } - modifier = { # And if they are a powerful vassal - add = 5 - is_powerful_vassal = yes - } - modifier = { # Finally, if there is a suitable vassal actually taxed by the same tax collector, we should REALLY want to pick them - add = 200 - save_temporary_scope_as = suitable_vassal - scope:bad_tax_collector = { - any_tax_collector_vassal = { - this = scope:suitable_vassal - } - } - } - } - save_scope_as = loyal_vassal - } - - # Let's create the character the vassal is offering us as a tax collector - create_character = { - template = administrator_character - employer = scope:loyal_vassal - faith = scope:loyal_vassal.faith - culture = scope:loyal_vassal.culture - 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 - } - } - save_scope_as = tax_collector_replacement - } - } - - option = { # A most appreciated gift! - name = clan_event.2005.a - - # Recruit the courtier to your own court - add_courtier = scope:tax_collector_replacement - - # And let's add some extra opinion to make sure the character likes you (which also increase their potential aptitude as tax collector) - hidden_effect = { - scope:tax_collector_replacement = { - add_opinion = { - modifier = loyal_servant - years = 20 - target = root - } - } - } - - ai_chance = { - base = 50 - - modifier = { - factor = 2 - OR = { - has_trait = diligent - has_trait = ambitious - } - } - modifier = { - factor = 3 - has_trait = trusting - } - } - } - - option = { # You may keep your servant. Your loyalty is enough. - name = clan_event.2005.b - - # Instead of the courtier, you can choose to get a hook - if = { - limit = { - can_add_hook = { - type = loyalty_hook - target = scope:loyal_vassal - } - } - add_hook = { - type = loyalty_hook - target = scope:loyal_vassal - } - } - else = { # If we can't get a hook, get some prestige instead - add_prestige = medium_prestige_gain - } - - ai_chance = { - base = 20 - - modifier = { - factor = 3 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = gregarious - } - } - modifier = { - factor = 2 - OR = { - has_trait = paranoid - has_trait = cynical - } - } - } - } - - option = { # My tax collector will simply have to work harder... - name = clan_event.2005.c - - # You may also make your existing tax collector SLIGHTLY better - scope:bad_tax_collector = { - add_stewardship_skill = 1 - - stress_impact = { - base = massive_stress_impact_gain - } - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - has_trait = stubborn - } - } - } -} - - -################################ -# A Troublesome Ledger -# by Emil Tisander -################################ -#This is a clan specific Stewardship Lifestyle event, where your tax collector can help you. -clan_event.2007 = { - type = character_event - title = clan_event.2007.t - desc = clan_event.2007.desc - theme = stewardship - override_background = { reference = study } - left_portrait = { - character = root - animation = reading - } - right_portrait = { - character = scope:helping_tax_collector - animation = thinking - } - - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_adult = yes - government_has_flag = government_is_clan - - # We need to have a tax collector with decent to high aptitude - any_tax_collector = { - is_ai = yes - tax_collector_aptitude = { - target = clan_tax_slot - value >= 2 - } - } - } - - immediate = { - # We'll start by finding our tax collector - random_tax_collector = { - limit = { - is_ai = yes - tax_collector_aptitude = { - target = clan_tax_slot - value >= 2 - } - } - weight = { # Let's make a higher skilled tax collector more likely, but not guaranteed - base = 20 - modifier = { - add = 30 - tax_collector_aptitude = { - target = clan_tax_slot - value >= 3 - } - } - modifier = { - add = 50 - tax_collector_aptitude = { - target = clan_tax_slot - value >= 4 - } - } - } - save_scope_as = helping_tax_collector - } - } - - option = { # Maybe you could help me finish this? - name = clan_event.2007.a - - # Gain stewardship lifestyle XP scaled on the aptitude of the tax collector - if = { - limit = { - scope:helping_tax_collector = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 4 - } - } - } - add_stewardship_lifestyle_xp = massive_lifestyle_xp - } - else_if = { - limit = { - scope:helping_tax_collector = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 3 - } - } - } - add_stewardship_lifestyle_xp = major_lifestyle_xp - } - else = { - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - - stress_impact = { - stubborn = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - OR = { - has_trait = gregarious - has_trait = trusting - } - } - modifier = { - factor = 0 - OR = { - has_trait = stubborn - has_trait = paranoid - } - } - } - } - - option = { # I can do this myself, thank you very much. - name = clan_event.2007.b - - # Let's do a skill duel here to see how likely you are to manage it yourself - If successful, get a perk point - duel = { - skill = stewardship - value = decent_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 2 - min = -49 - } - desc = clan_event.2007.success_tt - send_interface_toast = { - title = clan_event.2007.success - left_icon = root - add_stewardship_lifestyle_perk_points = 1 - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -2 - min = -49 - } - desc = clan_event.2007.failure_tt - send_interface_toast = { - title = clan_event.2007.failure - left_icon = root - add_prestige = medium_prestige_loss - stress_impact = { base = major_stress_impact_gain } - } - } - } - - stress_impact = { - lazy = major_stress_impact_gain - impatient = medium_stress_impact_gain - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - OR = { - has_trait = diligent - has_trait = ambitious - has_trait = patient - } - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = impatient - } - } - } - } - - option = { # Did you just volunteer to take care of it? Thank you! - name = clan_event.2007.c - - # Lose some opinion in exchange for a chance to get some extra gold - scope:helping_tax_collector = { - add_opinion = { - modifier = annoyed_opinion - opinion = -20 - target = root - } - } - random = { - chance = 25 - - custom_tooltip = clan_event.2007.tt - send_interface_toast = { - title = clan_event.2007.successful_tax_collector - left_icon = root - add_treasury_or_gold = medium_treasury_or_gold_value - } - } - - ai_chance = { - base = 10 - - modifier = { - factor = 4 - OR = { - has_trait = wrathful - has_trait = callous - has_trait = arbitrary - } - } - } - } -} diff --git a/events/dlc/fp3/fp3_clan_events_hugo.txt b/events/dlc/fp3/fp3_clan_events_hugo.txt deleted file mode 100644 index 1af1d426d..000000000 --- a/events/dlc/fp3/fp3_clan_events_hugo.txt +++ /dev/null @@ -1,196 +0,0 @@ -namespace = fp3_clan - -### EVENT LIST #################################################################### -## 3000 - 3000 Ravaged Tulips by Hugo Cortell -################################################################################### - -################################### -# Ravaged Tulips -# By Hugo Cortell -################################### -scripted_trigger is_bad_tulip_stealing_child = { - age > 4 # Baby no steal flower - is_adult = no - is_available = yes - any_close_or_extended_family_member = { - is_available_ai_adult = yes - house = root.house - this != root - } -} - -fp3_clan.3000 = { - type = character_event - title = fp3_clan.3000.t - desc = fp3_clan.3000.desc - - theme = mental_break - override_background = { reference = garden } - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:fp3_clan_3000_bad_child - animation = war_over_win - } - - cooldown = { years = 5 } - - weight_multiplier = { # Greatly lower chances if you have no garden - base = 0.4 - - modifier = { - add = 0.6 - capital_province = { has_building_or_higher = royal_garden_01 } - } - } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed_or_landless_administrative = yes - culture = { has_cultural_parameter = can_appoint_court_gardener } - house = { any_house_member = { is_bad_tulip_stealing_child = yes } } - } - - immediate = { - capital_province = { save_scope_as = fp3_clan_3000_loc_loc } # the loc-ation for loc-alization usage - house = { - random_house_member = { - limit = { is_bad_tulip_stealing_child = yes } - save_scope_as = fp3_clan_3000_bad_child - - random_close_or_extended_family_member = { - limit = { this != root } - save_scope_as = fp3_clan_3000_random_family_member - } - } - } - } - - option = { # You can keep them, and I'll pay to plant new ones - name = fp3_clan.3000.a - - stress_impact = { - wrathful = minor_stress_impact_gain - vengeful = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - scope:fp3_clan_3000_random_family_member = { - add_opinion = { - target = root - modifier = kindness_opinion - opinion = 20 - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:fp3_clan_3000_random_family_member - VALUE = minor_unity_gain - DESC = clan_unity_generic_increased_fallback.desc - REVERSE_NON_HOUSE_TARGET = no - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - option = { # GIVE THEM BACK YOU BUGGER - name = fp3_clan.3000.b - - stress_impact = { - compassionate = minor_stress_impact_gain - patient = minor_stress_impact_gain - content = minor_stress_impact_gain - } - - scope:fp3_clan_3000_random_family_member = { - add_opinion = { - target = root - modifier = scolded_my_child_opinion # Not exact, but close - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:fp3_clan_3000_random_family_member - VALUE = minor_unity_loss - DESC = clan_unity_generic_decreased_fallback.desc - REVERSE_NON_HOUSE_TARGET = no - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 1 - } - } - } - - option = { # Alright, time to work the fields, kid - name = fp3_clan.3000.c - flavor = fp3_clan.3000.c.flavor - - trigger = { has_trait = lifestyle_gardener } - stress_impact = { lazy = minor_stress_impact_loss } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:fp3_clan_3000_random_family_member - VALUE = minor_unity_gain - DESC = clan_unity_generic_increased_fallback.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:fp3_clan_3000_random_family_member = { - add_opinion = { - target = root - modifier = kindness_opinion - opinion = 10 - } - } - - if = { # In the very rare case that the child already knows about plants and stuff - limit = { scope:fp3_clan_3000_bad_child = { has_trait = lifestyle_gardener } } - add_opinion = { - target = root - modifier = fp3_taught_me_gardening_opinion - } - } - else = { - random = { - chance = { - value = 25 - add = { - value = learning - multiply = 2 - } - } - send_interface_toast = { - type = event_toast_effect_good - title = vassal.2001.t - left_icon = ROOT - right_icon = scope:fp3_clan_3000_bad_child - - scope:fp3_clan_3000_bad_child = { add_trait = lifestyle_gardener } - } - scope:fp3_clan_3000_bad_child = { - add_opinion = { - target = root - modifier = fp3_taught_me_gardening_opinion - } - } - } - } - - ai_chance = { base = 1000 } - } -} diff --git a/events/dlc/fp3/fp3_clan_events_ola.txt b/events/dlc/fp3/fp3_clan_events_ola.txt deleted file mode 100644 index 2a664ec87..000000000 --- a/events/dlc/fp3/fp3_clan_events_ola.txt +++ /dev/null @@ -1,2515 +0,0 @@ -namespace = fp3_clan - -########EVENT INDEX############ -#fp3_clan.8000 - Usury against Unity, by Ola Jentzsch -#fp3_clan.8001 - Clan Quarrel, by Ola Jentzsch -#fp3_clan.8002 - Bonds of Faith, by Ola Jentzsch -#fp3_clan.8003 - The Power of a Name, by Ola Jentzsch -#fp3_clan.8004 - Bonds of Fear, by Ola Jentzsch -#fp3_clan.8005 - A Proper Position, by Ola Jentzsch -#fp3_clan.8006 - Small Spies, by Ola Jentzsch - -scripted_trigger fp3_usury_trigger = { - ai_compassion <= low_positive_ai_value - OR = { - has_trait = greedy - has_trait = deceitful - ai_greed > medium_positive_ai_value - } -} - -scripted_trigger concerned_character_trigger = { - fp3_usury_trigger = no - house != root.house - is_available_ai_adult = yes - OR = { - opinion = { - target = scope:usurer - value < 25 - } - AND = { - faith = { trait_is_sin = greedy } - ai_zeal >= medium_positive_ai_value - } - ai_greed < medium_positive_ai_value - } -} - -scripted_trigger usurer_character_trigger = { - is_available_ai_adult = yes - NOR = { - this = root - is_liege_or_above_of = root - } - fp3_usury_trigger = yes -} - -fp3_clan.8000 = { # Usury against Unity - type = character_event - title = fp3_clan.8000.t - desc = fp3_clan.8000.desc - theme = corruption - - left_portrait = { - character = root - animation = disbelief - triggered_animation = { - trigger = { - OR = { - has_trait = vengeful - has_trait = wrathful - AND = { - faith = { trait_is_sin = greedy } - has_trait = zealous - } - } - } - animation = anger - } - } - right_portrait = { - character = scope:usurer - animation = personality_greedy - triggered_animation = { - trigger = { - ai_boldness < low_positive_ai_value - } - animation = beg - } - } - lower_left_portrait = { - character = scope:concerned_one - } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - government_has_flag = government_is_clan - house ?= { - prev = house_head - house_unity_value >= critical_house_unity - - any_house_unity_member = { - usurer_character_trigger = yes - save_temporary_scope_as = usurer - } - } - - any_vassal_or_below = { - concerned_character_trigger = yes - } - - faith = { - NOT = { has_doctrine_parameter = unreformed } - } - } - - cooldown = { - years = 25 - } - - immediate = { - house = { - random_house_unity_member = { - limit = { - usurer_character_trigger = yes - } - save_scope_as = usurer - } - } - - random_vassal_or_below = { - limit = { - concerned_character_trigger = yes - } - weight = { - base = 1 - modifier = { - factor = 10 - OR = { - has_relation_friend = root - is_powerful_vassal_of = root - is_child_of = root - has_council_position = councillor_spouse - AND = { - has_council_position = councillor_steward - employer = root - } - } - } - } - save_scope_as = concerned_one - } - - hidden_effect = { - scope:usurer = { - add_gold = major_gold_value - } - } - } - - option = { - name = fp3_clan.8000.a - - scope:usurer = { - hard_imprison_character_effect = { - TARGET = this - IMPRISONER = root - } - - add_opinion = { - target = root - modifier = imprisoned_me - } - } - - custom_tooltip = fp3_relations_reaction_to_imprisonment.tt - hidden_effect = { - scope:usurer = { - every_close_family_member = { - limit = { - this != root - } - if = { - limit = { - this != root - opinion = { - target = scope:usurer - value > 25 - } - } - add_opinion = { - target = root - modifier = imprisoned_family_member - } - } - } - } - every_vassal = { - if = { - limit = { - opinion = { - target = scope:usurer - value > 25 - } - } - add_opinion = { - target = root - modifier = fp3_wrongful_imprisonment_opinion - } - } - } - } - - scope:concerned_one = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 20 - } - } - - hidden_effect = { #his ill-gotten gains seep back to his debtors, so the player can't cheese it and steal them by banishing him - scope:usurer = { - remove_short_term_gold = major_gold_value - } - } - - if = { - limit = { - faith = { - OR = { - trait_is_sin = greedy - trait_is_virtue = generous - } - } - } - add_piety = medium_piety_gain - } - else = { - add_dread = minor_dread_gain - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:usurer - VALUE = medium_unity_loss - DESC = clan_unity_imprisoned_usurer.desc - REVERSE_NON_HOUSE_TARGET = no - } - - stress_impact = { - arbitrary = medium_stress_impact_loss - just = minor_stress_impact_gain - trusting = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_vengefulness = 1 - ai_zeal = 1 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_clan.8000.b - - scope:usurer = { - pay_short_term_gold = { - gold = medium_gold_value - target = root - } - } - - scope:usurer = { - add_opinion = { - target = root - modifier = extorted_me_opinion - } - } - - stress_impact = { - greedy = medium_stress_impact_loss - honest = medium_stress_impact_gain - generous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -0.5 - } - } - } - - option = { - name = fp3_clan.8000.c - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:usurer - VALUE = minor_unity_gain - DESC = clan_unity_defended_usurer.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:concerned_one = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -20 - } - } - - stress_impact = { - forgiving = minor_stress_impact_loss - trusting = medium_stress_impact_loss - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 0.5 - ai_vengefulness = 0.5 - ai_honor = -1 - } - } - } -} - -scripted_trigger bickerer_2_character_trigger = { - is_available_ai_adult = yes - NOT = { this ?= scope:$SCOPE$ } - opinion = { - target ?= scope:$SCOPE$ - value < $VALUE$ - } -} - -fp3_clan.8001 = { #Clan Quarrel - type = character_event - title = fp3_clan.8001.t - desc = { - desc = fp3_clan.8001_beginning - first_valid = { - triggered_desc = { - trigger = { - faith = { - NOT = { has_doctrine_parameter = unreformed } - } - OR = { - scope:bickerer_1 = { - ai_zeal >= high_positive_ai_value - NOT = { has_trait = cynical } - } - scope:bickerer_2 = { - ai_zeal >= medium_positive_ai_value - NOT = { has_trait = cynical } - } - } - } - desc = fp3_clan.8001_faith_schism - } - desc = fp3_clan.8001_generic_fallback - } - } - theme = diplomacy_family_focus - - left_portrait = { - character = scope:bickerer_1 - animation = disgust - triggered_animation = { - trigger = { - OR = { - has_trait = vengeful - has_trait = wrathful - has_trait = zealous - ai_vengefulness >= high_positive_ai_value - } - } - animation = war_over_win - } - } - right_portrait = { - character = scope:bickerer_2 - animation = disapproval - triggered_animation = { - trigger = { - OR = { - has_trait = vengeful - has_trait = wrathful - has_trait = zealous - ai_vengefulness >= high_positive_ai_value - } - } - animation = anger - } - } - lower_left_portrait = { - character = root - } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - government_has_flag = government_is_clan - is_house_head = yes - - house = { - house_unity_value > critical_house_unity - - any_house_unity_member = { - is_available_ai_adult = yes - NOT = { ai_vengefulness < low_positive_ai_value } - save_temporary_scope_as = bickerer_1_temp - house = { - any_house_unity_member = { - this != scope:bickerer_1_temp - is_available_adult = yes - opinion = { - target = scope:bickerer_1_temp - value < 20 - } - } - } - } - - any_house_unity_member = { - bickerer_2_character_trigger = { - VALUE = 20 - SCOPE = bickerer_1_temp - } - } - } - } - - cooldown = { years = 10 } - - immediate = { - house = { - random_house_unity_member = { - limit = { - is_available_ai_adult = yes - NOT = { ai_vengefulness < low_positive_ai_value } - save_temporary_scope_as = bickerer_1_temp - house = { - any_house_unity_member = { - this != scope:bickerer_1_temp - is_available_adult = yes - opinion = { - target = scope:bickerer_1_temp - value < 20 - } - } - } - } - save_scope_as = bickerer_1 - } - - random_house_unity_member = { - limit = { - is_available_ai_adult = yes - this != scope:bickerer_1 - } - weight = { - base = 1 - modifier = { - factor = 10 - OR = { - has_relation_rival = scope:bickerer_1 - bickerer_2_character_trigger = { - VALUE = 0 - SCOPE = bickerer_1 - } - } - } - } - save_scope_as = bickerer_2 - } - } - - if = { - limit = { - scope:bickerer_1 = { - NOT = { has_relation_rival = scope:bickerer_2 } - } - } - scope:bickerer_1 = { - progress_towards_rival_effect = { - CHARACTER = scope:bickerer_2 - REASON = rival_generic_history - OPINION = -25 - } - } - } - } - - option = { - name = fp3_clan.8001.a - - duel = { - skill = diplomacy - target = scope:bickerer_1 - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8001.a.success - send_interface_toast = { - title = fp3_clan.8001.a.success.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:bickerer_1 - VALUE = medium_unity_gain - DESC = clan_unity_mediated_btw_clan_members.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_prestige = minor_prestige_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8001.a.failure - send_interface_toast = { - title = fp3_clan.8001.a.failure.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:bickerer_1 - VALUE = minor_unity_loss - DESC = clan_unity_caused_rift.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - } - } - - stress_impact = { - forgiving = medium_stress_impact_loss - callous = medium_stress_impact_gain - shy = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - arbitrary = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_honor = 0.5 - ai_rationality = 0.5 - ai_energy = 0.5 - } - } - } - - option = { - name = fp3_clan.8001.b - flavor = fp3_clan_making_conflict_worse_flavor - - duel = { - skill = intrigue - target = scope:bickerer_1 - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8001.b.success - send_interface_toast = { - title = fp3_clan.8001.b.success.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:bickerer_1 - VALUE = medium_unity_loss - DESC = clan_unity_caused_rift.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_prestige = minor_prestige_gain - - if = { - limit = { - scope:bickerer_1 = { - NOT = { has_relation_rival = scope:bickerer_2 } - } - } - scope:bickerer_1 = { - progress_towards_rival_effect = { - CHARACTER = scope:bickerer_2 - REASON = rival_generic_history - OPINION = -25 - } - } - } - - if = { - limit = { has_lifestyle = intrigue_lifestyle } - add_intrigue_lifestyle_xp = minor_lifestyle_experience - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8001.b.failure - send_interface_toast = { - title = fp3_clan.8001.b.failure.tt - left_icon = root - - add_prestige = minor_prestige_loss - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - honest = major_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - ai_vengefulness = 0.5 - } - } - } - - option = { - name = fp3_clan.8001.c - - trigger = { - OR = { - has_trait = diligent - has_trait = paranoid - } - } - - stress_impact = { - diligent = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_sociability = -0.7 - ai_rationality = 0.5 - } - } - } - - option = { - name = fp3_clan.8001.d - - trigger = { - NOR = { - has_trait = diligent - has_trait = paranoid - } - } - - stress_impact = { - base = minor_stress_impact_loss - lazy = minor_stress_impact_loss - content = minor_stress_impact_loss - ambitious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_sociability = -0.5 - ai_rationality = 0.5 - } - } - } -} - -scripted_trigger fp3_vassal_8002_trigger = { - is_available_ai_adult = yes - is_powerful_vassal_of = root - faith = root.faith - opinion = { - target = root - value < 50 - } -} - -fp3_clan.8002 = { #Bonds of Faith - type = character_event - title = fp3_clan.8002.t - desc = fp3_clan.8002.desc - theme = faith - left_portrait = { - character = root - animation = stress - triggered_animation = { - trigger = { - OR = { - has_trait = cynical - has_trait = stubborn - has_trait = wrathful - has_trait = vengeful - has_trait = arrogant - } - } - animation = personality_cynical - } - } - right_portrait = { - character = scope:chaplain - animation = personality_rational - triggered_animation = { - trigger = { - OR = { - scope:chaplain = { - has_dread_level_towards = { - target = root - level >= 2 - } - } - ai_boldness <= low_negative_ai_value - } - } - animation = personality_coward - } - } - - lower_left_portrait = { - character = scope:clan_member - } - - trigger = { - has_fp3_dlc_trigger = yes - government_has_flag = government_is_clan - - OR = { - num_sinful_traits >= 1 - piety_level < 3 - } - - scriptedtests_piety_income <= 2 - - house = { - house_unity_value < very_high_house_unity - any_house_unity_member = { - fp3_vassal_8002_trigger = yes - } - } - - exists = cp:councillor_court_chaplain - - cp:councillor_court_chaplain = { - is_available_ai_adult = yes - NOR = { - has_trait = arrogant - opinion = { - target = root - value < -30 - } - } - } - } - - cooldown = { - years = 10 - } - - immediate = { - house = { - random_house_unity_member = { - limit = { - fp3_vassal_8002_trigger = yes - } - weight = { - base = 1 - modifier = { - factor = 10 - ai_zeal >= high_positive_ai_value - } - modifier = { - factor = 10 - opinion = { - target = root - value < 0 - } - } - } - save_scope_as = clan_member - } - } - - cp:councillor_court_chaplain = { save_scope_as = chaplain } - } - - option = { - name = fp3_clan.8002.a - - add_character_modifier = { - modifier = fp3_praying_too_much_modifier - years = 10 - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_gain - DESC = clan_unity_proved_pious.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:chaplain = { - add_opinion = { - target = root - modifier = took_my_advice_opinion - opinion = 20 - } - } - - stress_impact = { - zealous = minor_stress_impact_loss - humble = medium_stress_impact_loss - diligent = minor_stress_impact_gain - arrogant = massive_stress_impact_gain - cynical = major_stress_impact_gain - impatient = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.3 - ai_rationality = 0.5 - ai_zeal = 0.7 - } - } - } - - option = { - name = fp3_clan.8002.b - - trigger = { #this is a bit of an arbitrary exclusion; just to make sure that noone gets more than four options - NOR = { - intrigue >= high_skill_rating - has_trait = deceitful - has_trait = cynical - } - } - - add_piety = medium_piety_gain - remove_short_term_gold = medium_gold_value - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_gain - DESC = clan_unity_founded_worshipful_house.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:chaplain = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 10 - } - } - - stress_impact = { - generous = medium_stress_impact_loss - greedy = medium_stress_impact_gain - content = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_rationality = 0.5 - ai_zeal = 0.2 - } - } - } - - option = { - name = fp3_clan.8002.c - flavor = fp3_pretending_to_be_pious_flavor - - trigger = { - OR = { - intrigue >= high_skill_rating - has_trait = deceitful - has_trait = cynical - } - } - - duel = { - skill = intrigue - value = average_skill_rating - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8002.b.success - send_interface_toast = { - title = fp3_clan.8002.b.success.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_gain - DESC = clan_unity_proved_pious.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_piety = minor_piety_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8002.b.failure - send_interface_toast = { - title = fp3_clan.8002.b.failure.tt - left_icon = root - - add_piety = medium_piety_loss - } - } - } - - scope:chaplain = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -20 - } - } - - stress_impact = { - deceitful = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - zealous = major_stress_impact_gain - honest = massive_stress_impact_gain - humble = medium_stress_impact_gain - just = medium_stress_impact_gain - diligent = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_sociability = 0.7 - ai_rationality = 0.9 - ai_vengefulness = 0.7 - ai_zeal = -1 - } - } - } - - option = { - name = fp3_clan.8002.d - - trigger = { - scope:clan_member = { - has_dread_level_towards = { - target = root - level >= 1 - } - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_loss - DESC = clan_unity_threatened_clan_member.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:chaplain = { - add_opinion = { - target = root - modifier = fp3_went_too_far_opinion - } - } - - scope:clan_member = { - add_opinion = { - target = root - modifier = fp3_fearing_retribution_opinion - opinion = -30 - } - } - - stress_impact = { - vengeful = medium_stress_impact_loss - forgiving = major_stress_impact_gain - craven = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - humble = medium_stress_impact_gain - compassionate = major_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.7 - ai_vengefulness = 1 - ai_compassion = -1 - ai_honor = -0.5 - } - } - } - - option = { - name = fp3_clan.8002.e - - stress_impact = { - honest = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_honor = 0.5 - ai_rationality = 0.5 - } - } - } -} - -fp3_clan.8003 = { #The Power of a Name - type = character_event - title = fp3_clan.8003.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - dread >= 50 - } - desc = fp3_clan.8003_fear_opening - } - triggered_desc = { - trigger = { - faith.religious_head = { - opinion = { - target = root - value >= 50 - } - } - } - desc = fp3_clan.8003_respect_opening - } - } - desc = fp3_clan.8003_ending - } - theme = faith - - override_background = { reference = throne_room } - - left_portrait = { - character = root - animation = personality_honorable - triggered_animation = { - trigger = { - OR = { - has_trait = loyal - has_trait = greedy - has_trait = arrogant - has_trait = zealous - has_trait = trusting - } - } - animation = happiness - } - - } - right_portrait = { - character = scope:hof_emissary - animation = chancellor - } - - lower_left_portrait = { character = scope:righteous_caliph } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - has_religion = religion:islam_religion - - trigger_if = { - limit = { - government_has_flag = government_is_clan - } - house = { house_unity_value > decent_house_unity } - } - - exists = faith.religious_head - exists = faith.religious_head.location - - prestige_level >= 3 - - OR = { - faith.religious_head = { - opinion = { - target = root - value >= 50 - } - } - dread >= 50 - } - - faith.religious_head = { #If he already has a hook on you, there's no need for him to bestow upon you this honor - NOR = { - this = root - has_hook = root - } - } - - OR = { #You must either be independent, or a vassal of the HoF, or have him as your direct vassal - top_liege = this - faith.religious_head = { is_liege_or_above_of = root } - any_vassal = { this = root.faith.religious_head } - } - } - - cooldown = { - years = 25 - } - - immediate = { - faith.religious_head = { - location = { - save_scope_as = caliphal_location - } - save_scope_as = righteous_caliph - } - - create_character = { #this is the head of faith's emissary - age = { 25 75 } - location = root.capital_province - faith = root.faith.religious_head.faith - gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. - trait = diplomat - template = priest_character_template - save_scope_as = hof_emissary #this saves him as a scope so we can get nice effects to bounce off him! - } - } - - option = { - name = fp3_clan.8003.a - - trigger = { - NOR = { - has_trait = shy - has_trait = humble - - } - } - - add_character_modifier = { - modifier = fp3_honored_by_the_faithful_modifier - years = 10 - } - - if = { - limit = { - OR = { - faith.religious_head = { is_liege_or_above_of = root } - any_vassal = { this = root.faith.religious_head } - } - } - add_piety = major_piety_gain - } - else = { add_piety = minor_piety_gain } - - scope:righteous_caliph = { - add_hook = { - type = favor_hook - target = root - } - } - - stress_impact = { - paranoid = minor_stress_impact_gain - zealous = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_boldness = 1 - ai_rationality = -0.4 - } - } - } - - option = { - name = fp3_clan.8003.b - - trigger = { - OR = { - has_trait = shy - has_trait = humble - } - } - - add_piety = medium_piety_gain - - stress_impact = { - zealous = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.7 - ai_rationality = 1 - ai_vengefulness = 0.5 - } - } - } - - option = { - name = fp3_clan.8003.c - - stress_impact = { - humble = major_stress_impact_loss - content = medium_stress_impact_loss - ambitious = major_stress_impact_gain - arrogant = medium_stress_impact_gain - greedy = minor_stress_impact_gain - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = 0.5 - ai_honor = 1 - } - } - } -} - -scripted_trigger clan_member_paranoia_trigger = { - is_available_healthy_ai_adult = yes - NOR = { - has_council_position = councillor_spymaster - has_court_position = master_assassin_court_position - } - OR = { - AND = { - OR = { #we're looking for someone with ambition - has_trait = ambitious - has_trait = deceitful - has_trait = greedy - } - NOT = { - opinion = { - target = root - value >= 25 - } - } - } - opinion = { #or just someone who dislikes root - target = root - value < 0 - } - } -} - -fp3_clan.8004 = { #Bonds of Fear - type = character_event - title = fp3_clan.8004.t - desc = fp3_clan.8004.desc - theme = dread - left_portrait = { - character = root - animation = personality_cynical - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = vengeful - has_trait = arbitrary - has_trait = sadistic - has_trait = deceitful - } - } - animation = personality_dishonorable - } - } - right_portrait = { - character = scope:murder_enthusiast - animation = spymaster - } - - lower_left_portrait = { - character = scope:clan_member - } - - trigger = { - has_fp3_dlc_trigger = yes - government_has_flag = government_is_clan - - house = { - NOR = { - house_unity_value > very_high_house_unity - house_unity_value < critical_house_unity - } - house_head = root - - any_house_unity_member = { - clan_member_paranoia_trigger = yes - } - } - - OR = { - AND = { - exists = cp:councillor_spymaster - cp:councillor_spymaster = { - is_available_healthy_ai_adult = yes - NOT = { ai_compassion >= low_positive_ai_value } - } - } - AND = { - employs_court_position = master_assassin_court_position - any_court_position_holder = { - type = master_assassin_court_position - is_available_healthy_ai_adult = yes - NOT = { ai_compassion >= low_positive_ai_value } - } - } - } - } - - cooldown = { - years = 10 - } - - immediate = { - if = { - limit = { - employs_court_position = master_assassin_court_position - any_court_position_holder = { - has_court_position = master_assassin_court_position - is_available_healthy_ai_adult = yes - NOT = { ai_compassion >= low_positive_ai_value } - } - } - random_court_position_holder = { - limit = { - has_court_position = master_assassin_court_position - is_available_healthy_ai_adult = yes - NOT = { ai_compassion >= low_positive_ai_value } - } - save_scope_as = murder_enthusiast - } - } - else_if = { - limit = { - exists = cp:councillor_spymaster - cp:councillor_spymaster = { - is_available_healthy_ai_adult = yes - NOT = { ai_compassion >= low_positive_ai_value } - } - } - cp:councillor_spymaster = { save_scope_as = murder_enthusiast } - } - - house = { - random_house_unity_member = { - limit = { - clan_member_paranoia_trigger = yes - has_relation_rival = scope:murder_enthusiast - } - alternative_limit = { - clan_member_paranoia_trigger = yes - is_powerful_vassal_of = root - } - alternative_limit = { - clan_member_paranoia_trigger = yes - is_close_family_of = root - } - alternative_limit = { - clan_member_paranoia_trigger = yes - is_claimant = yes - } - alternative_limit = { - clan_member_paranoia_trigger = yes - can_be_knight_trigger = { - ARMY_OWNER = root - } - } - alternative_limit = { - clan_member_paranoia_trigger = yes - } - save_scope_as = clan_member - } - } - } - - option = { - name = fp3_clan.8004.a #murder some peepl - - scope:murder_enthusiast = { - duel = { - skill = intrigue - value = scope:clan_member.intrigue - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8004.a.success - root = { - send_interface_toast = { - title = fp3_clan.8004.a.success.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = medium_unity_gain - DESC = clan_unity_scared_into_sub.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_dread = medium_dread_gain - - add_character_modifier = { - modifier = fp3_rule_by_fear_modifier - years = 20 - } - - scope:clan_member = { - if = { - limit = { - ai_boldness < high_positive_ai_value - } - add_opinion = { - target = root - modifier = scared_opinion - opinion = -10 - } - } - else = { - add_opinion = { - target = root - modifier = fp3_murdered_my_servants_opinion - opinion = -30 - } - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8004.a.failure - root = { - send_interface_toast = { - title = fp3_clan.8004.a.failure.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_loss - DESC = clan_unity_failed_scary.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_dread = minor_dread_gain - - if = { - limit = { - root.faith = { - NOR = { - has_doctrine_parameter = adherents_more_likely_to_join_schemes - has_doctrine = doctrine_kinslaying_accepted - } - } - } - add_piety_level = -1 - } - - scope:clan_member = { - if = { - limit = { - ai_boldness < high_positive_ai_value - NOT = { has_relation_rival = root } - } - add_opinion = { - target = root - modifier = scared_opinion - opinion = -10 - } - } - else_if = { - limit = { - NOT = { - has_relation_rival = root - } - } - root = { - progress_towards_rival_effect = { - CHARACTER = scope:clan_member - REASON = rival_murdered_servants - OPINION = -25 - } - } - } - else = { - add_opinion = { - target = root - modifier = fp3_murdered_my_servants_opinion - opinion = -30 - } - } - } - } - } - } - } - } - - scope:murder_enthusiast = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 30 - } - } - - stress_impact = { - deceitful = minor_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = massive_stress_impact_gain - just = major_stress_impact_gain - forgiving = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 0.5 - ai_greed = 0.5 - ai_honor = -1 - ai_compassion = -1 - } - } - } - - option = { #you know what...there's no need to be discreet. - name = fp3_clan.8004.b - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:clan_member - VALUE = minor_unity_loss - DESC = clan_unity_murdered_servants.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_dread = major_dread_gain - - if = { - limit = { - root.faith = { - NOR = { - has_doctrine_parameter = adherents_more_likely_to_join_schemes - has_doctrine = doctrine_kinslaying_accepted - } - } - } - root = { add_piety_level = -1 } - } - - scope:clan_member = { - if = { - limit = { - ai_boldness < high_positive_ai_value - NOT = { has_relation_rival = root } - } - add_opinion = { - target = root - modifier = scared_opinion - opinion = -10 - } - } - else_if = { - limit = { - NOT = { - has_relation_rival = root - } - } - root = { - progress_towards_rival_effect = { - CHARACTER = scope:clan_member - REASON = rival_murdered_servants - OPINION = -25 - } - } - } - else = { - add_opinion = { - target = root - modifier = fp3_murdered_my_servants_opinion - opinion = -30 - } - } - } - - - stress_impact = { - compassionate = massive_stress_impact_gain - just = major_stress_impact_gain - forgiving = medium_stress_impact_gain - honest = medium_stress_impact_gain - callous = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 1 - ai_rationality = -0.8 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_clan.8004.c #be horrified - - scope:murder_enthusiast = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -20 - } - } - - stress_impact = { - sadistic = major_stress_impact_gain - callous = major_stress_impact_gain - paranoid = medium_stress_impact_gain - forgiving = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_compassion = 1 - ai_rationality = 0.3 - ai_vengefulness = -1 - ai_boldness = -0.3 - } - } - } -} - -################################### -# A Proper Position, by Ola Jentzsch -################################### - -scripted_trigger clan_harem_intrigue_parent_trigger = { - is_available_adult = yes - is_courtier = yes - NOT = { - has_trait = content - has_trait = craven - } - any_child = { - count > 0 - clan_harem_intrigue_child_trigger = yes - } -} - -scripted_trigger clan_harem_intrigue_child_trigger = { - is_available_child = yes - age > 5 - NOT = { is_primary_heir_of = root } - fp3_proper_gender_for_dynastic_ambition_trigger = yes - any_heir_title = { - count < 1 - tier >= tier_county - } -} - -fp3_clan.8005 = { #A Proper Position - type = character_event - title = fp3_clan.8005.t - desc = fp3_clan.8005.desc - theme = crown - - left_portrait = { - character = scope:ambitious_consort - animation = disapproval - triggered_animation = { - trigger = { - ai_vengefulness >= medium_positive_ai_value - } - animation = schadenfreude - } - triggered_animation = { - trigger = { - ai_boldness < low_positive_ai_value - } - animation = beg - } - } - - right_portrait = { - character = root - animation = personality_cynical - } - lower_left_portrait = { character = scope:empowered_child } - - lower_center_portrait = { character = scope:heir_parent } - - lower_right_portrait = { character = scope:heir_child } - - trigger = { - has_fp3_dlc_trigger = yes - government_has_flag = government_is_clan - - NOT = { - house = { - house_unity_value > very_high_house_unity - } - } - - any_held_title = { - title_tier = county - is_landless_type_title = no - this != root.capital_county - } - - domain_size > 4 - - any_consort = { - clan_harem_intrigue_parent_trigger = yes - save_temporary_scope_as = consort_1 - any_child = { - clan_harem_intrigue_child_trigger = yes - } - NOT = { - any_child = { is_primary_heir_of = root } - } - } - - any_consort = { - this != scope:consort_1 - is_available_adult = yes - is_courtier = yes - any_child = { - is_child_of = root - is_primary_heir_of = root - } - } - } - - cooldown = { years = 10 } - - immediate = { - save_scope_as = special_root_scope #this is used to trigger a player-facing toast in the hidden follow-up event - - random_consort = { - limit = { - clan_harem_intrigue_parent_trigger = yes - any_child = { clan_harem_intrigue_child_trigger = yes } - NOT = { - any_child = { is_primary_heir_of = root } - } - } - random_child = { - limit = { - clan_harem_intrigue_child_trigger = yes - } - save_scope_as = empowered_child - } - save_scope_as = ambitious_consort - } - - random_consort = { - limit = { - this != scope:ambitious_consort - is_available_adult = yes - is_courtier = yes - any_child = { - is_child_of = root - is_primary_heir_of = root - } - } - random_child = { - limit = { - this != scope:empowered_child - is_child_of = root - is_primary_heir_of = root - } - save_scope_as = heir_child - } - save_scope_as = heir_parent - } - - random_held_title = { - title_tier = county - limit = { - is_landless_type_title = no - this != root.capital_county - } - save_scope_as = title_to_grant - } - - scope:ambitious_consort = { - progress_towards_rival_effect = { - CHARACTER = scope:heir_parent - REASON = rival_harem_intrigue - OPINION = -25 - } - } - } - - option = { - name = fp3_clan.8005.a - - trigger = { #if you're a certain personality, you can scare them into submission - OR = { - dread >= high_dread - has_trait = vengeful - has_trait = wrathful - has_trait = arbitrary - } - } - - add_dread = minor_dread_gain - - scope:ambitious_consort = { - if = { - limit = { - OR = { - ai_vengefulness >= medium_positive_ai_value - ai_boldness >= medium_positive_ai_value - } - } - add_opinion = { - target = root - opinion = -40 - modifier = angry_opinion - } - scope:ambitious_consort = { - progress_towards_rival_effect = { - CHARACTER = scope:heir_parent - REASON = rival_harem_intrigue - OPINION = -25 - } - } - } - else = { - add_opinion = { - target = root - opinion = -25 - modifier = scared_opinion - } - } - } - - stress_impact = { - wrathful = minor_stress_impact_loss - calm = major_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - ai_greed = 0.4 - } - } - } - - option = { #Give the child the title - name = fp3_clan.8005.b - flavor = original_heir_upset_flavor - - scope:title_to_grant.current_heir = { - add_opinion = { - target = root - opinion = -30 - modifier = angry_opinion - } - } - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - } - scope:title_to_grant = { - change_title_holder = { - holder = scope:empowered_child - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - - scope:empowered_child = { - hidden_effect = { - trigger_event = { - id = fp3_clan.8007 - years = { 2 4 } - } - } - custom_tooltip = fp3_empowered_child.tt - } - - scope:ambitious_consort = { - add_opinion = { - target = root - opinion = 30 - modifier = happy_opinion - } - } - - stress_impact = { - generous = medium_stress_impact_loss - greedy = medium_stress_impact_gain - ambitious = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.6 - ai_compassion = 0.4 - ai_honor = 0.4 - } - } - } - - option = { #A bit young for a court position, don't you think? - name = fp3_clan.8005.d - - trigger = { - scope:empowered_child = { age <= 10 } - } - - scope:ambitious_consort = { - progress_towards_rival_effect = { - CHARACTER = scope:heir_parent - REASON = rival_harem_intrigue - OPINION = -25 - } - - add_opinion = { - target = root - opinion = -30 - modifier = angry_opinion - } - } - - stress_impact = { - generous = minor_stress_impact_gain - craven = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.8 - ai_compassion = -0.2 - } - } - } - - option = { #Reassure her - name = fp3_clan.8005.e - - duel = { - skill = diplomacy - value = scope:ambitious_consort.diplomacy - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - modifier = { - add = 100 - scope:ambitious_consort = { - opinion = { - target = root - value > 50 - } - } - } - - modifier = { - add = 50 - scope:ambitious_consort = { has_trait = trusting } - } - - desc = fp3_clan.8005.e.success - send_interface_toast = { - title = fp3_clan.8005.e.success.tt - left_icon = root - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:ambitious_consort - VALUE = minor_unity_gain - DESC = clan_unity_promise_inheritance.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:ambitious_consort = { - add_opinion = { - target = root - opinion = 20 - modifier = trust_opinion - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8005.e.failure - send_interface_toast = { - title = fp3_clan.8005.e.failure.tt - left_icon = root - - scope:ambitious_consort = { - add_opinion = { - target = root - opinion = -30 - modifier = angry_opinion - } - } - - scope:ambitious_consort = { - progress_towards_rival_effect = { - CHARACTER = scope:heir_parent - REASON = rival_harem_intrigue - OPINION = -25 - } - } - } - } - } - - stress_impact = { - wrathful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.7 - ai_honor = 0.4 - ai_sociability = 1 - ai_vengefulness = -1 - } - } - } -} - - -################################### -# Smaller Spies, by Ola Jentzsch -################################### - -scripted_trigger suitable_spy_child_trigger = { - is_child_of = root - is_available_child = yes - is_courtier_of = root - age >= 7 - age <= 14 - OR = { - has_trait = curious - has_trait = rowdy - has_trait = charming - has_trait = deceitful - has_trait = paranoid - has_trait = callous - } - NOT = { is_primary_heir_of = root } -} - -scripted_trigger assassin_spymaster_trigger = { - is_available_healthy_ai_adult = yes - ai_compassion <= low_positive_ai_value -} - -fp3_clan.8006 = { - type = character_event - title = fp3_clan.8006.t - desc = fp3_clan.8006.desc - theme = intrigue_skulduggery_focus - - left_portrait = { - character = scope:sneaky_child - animation = disapproval - triggered_animation = { - trigger = { - AND = { - ai_compassion < low_positive_ai_value - ai_vengefulness >= low_positive_ai_value - } - } - animation = personality_callous - } - triggered_animation = { - trigger = { - ai_compassion >= low_positive_ai_value - } - animation = paranoia - } - } - - right_portrait = { - character = scope:paranoia_enthusiast - animation = scheme - triggered_animation = { - trigger = { - ai_vengefulness >= medium_positive_ai_value - } - animation = schadenfreude - } - } - - lower_left_portrait = { character = root } - - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - government_has_flag = government_is_clan - - house = { - house_unity_value <= mediocre_house_unity - any_house_unity_member = { #checking that a decent amount of other adult clan members exists, this event wouldn't make sense otherwise - is_adult = yes - count >= 4 - } - } - - any_child = { - is_available_ai = yes - suitable_spy_child_trigger = yes - } - - OR = { - AND = { - exists = cp:councillor_spymaster - cp:councillor_spymaster = { - assassin_spymaster_trigger = yes - } - } - AND = { - employs_court_position = master_assassin_court_position - any_court_position_holder = { - type = master_assassin_court_position - assassin_spymaster_trigger = yes - } - } - } - } - - immediate = { - random_child = { - limit = { - is_available_ai = yes - suitable_spy_child_trigger = yes - } - save_scope_as = sneaky_child - } - - if = { - limit = { - employs_court_position = master_assassin_court_position - any_court_position_holder = { - has_court_position = master_assassin_court_position - assassin_spymaster_trigger = yes - } - } - random_court_position_holder = { - limit = { - has_court_position = master_assassin_court_position - assassin_spymaster_trigger = yes - } - save_scope_as = paranoia_enthusiast - } - } - else_if = { - limit = { - exists = cp:councillor_spymaster - cp:councillor_spymaster = { - assassin_spymaster_trigger = yes - } - } - cp:councillor_spymaster = { save_scope_as = paranoia_enthusiast } - } - - scope:sneaky_child = { - if = { - limit = { - any_relation = { - type = guardian - } - } - random_relation = { - type = guardian - save_scope_as = little_sneakys_guardian - } - } - } - } - - option = { - name = fp3_clan.8006.a - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:sneaky_child - VALUE = minor_unity_gain - DESC = clan_unity_asserted_child_status.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:paranoia_enthusiast = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - scope:sneaky_child = { - add_opinion = { - target = root - opinion = -30 - modifier = fp3_denied_me_an_opportunity_opinion - } - } - - stress_impact = { - ambitious = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_sociability = 1 - ai_vengefulness = -1 - ai_boldness = 0.5 - } - } - } - - option = { - name = fp3_clan.8006.b - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:sneaky_child - VALUE = minor_unity_loss - DESC = clan_unity_let_child_become_spy.desc - REVERSE_NON_HOUSE_TARGET = no - } - - add_character_modifier = { - modifier = fp3_minor_child_spy_network_modifier - years = 15 - } - - if = { - limit = { - exists = scope:little_sneakys_guardian - scope:little_sneakys_guardian = { - OR = { - is_ai = yes - this = root - } - this != scope:paranoia_enthusiast - } - } - scope:sneaky_child = { - remove_relation_guardian = scope:little_sneakys_guardian - } - } - - scope:sneaky_child = { - if = { - limit = { - OR = { - num_of_relation_guardian < 1 - any_relation = { - type = guardian - OR = { - is_ai = yes - this = root - } - this != scope:paranoia_enthusiast - } - } - } - set_relation_guardian = scope:paranoia_enthusiast - add_intrigue_skill = 1 - } - else = { - add_intrigue_skill = 1 - } - } - - scope:sneaky_child = { - add_opinion = { - target = root - opinion = 20 - modifier = happy_opinion - } - } - - scope:paranoia_enthusiast = { - add_opinion = { - target = root - opinion = 15 - modifier = took_my_advice_opinion - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - honest = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.3 - ai_sociability = 0.3 - ai_vengefulness = 1 - ai_honor = -0.5 - ai_compassion = -0.8 - } - } - } - - option = { - name = fp3_clan.8006.c - - pay_short_term_gold = { - target = scope:paranoia_enthusiast - gold = minor_gold_value - } - - add_character_modifier = { - modifier = fp3_minor_child_spy_network_modifier - years = 15 - } - - scope:sneaky_child = { - add_opinion = { - target = root - opinion = -30 - modifier = fp3_denied_me_an_opportunity_opinion - } - } - - stress_impact = { - deceitful = minor_stress_impact_gain - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_compassion = 1 - ai_rationality = 0.5 - ai_vengefulness = -1 - ai_boldness = -0.5 - } - } - } -} - -scripted_effect random_skill_chance_effect = { - send_interface_toast = { - title = fp3_8007_studies_pay_off_toast - left_icon = scope:empowered_child - scope:empowered_child = { - add_stewardship_skill = 1 - add_$SKILL_2$_skill = 1 - } - } -} - -fp3_clan.8007 = { #Hidden event to set up child's traits - hidden = yes - - trigger = { - has_fp3_dlc_trigger = yes - exists = scope:empowered_child - any_held_title = { - this = scope:title_to_grant - } - } - - immediate = { - random_list = { - 25 = { - random_skill_chance_effect = { SKILL_2 = martial } - } - 25 = { - random_skill_chance_effect = { SKILL_2 = diplomacy } - } - 25 = { - random_skill_chance_effect = { SKILL_2 = learning } - } - 25 = { - random_skill_chance_effect = { SKILL_2 = intrigue } - } - } - } -} - - - - - diff --git a/events/dlc/fp3/fp3_clan_events_persia_specific_ola.txt b/events/dlc/fp3/fp3_clan_events_persia_specific_ola.txt deleted file mode 100644 index 761d43a76..000000000 --- a/events/dlc/fp3/fp3_clan_events_persia_specific_ola.txt +++ /dev/null @@ -1,727 +0,0 @@ -namespace = fp3_clan - -########EVENT INDEX############ -#fp3_clan.8015 - Scandalous Scion -#fp3_clan.8016 - Hammam Havoc -#fp3_clan_8017 - A Questionable Position -#################### - -################################### -# Scandalous Scion -# By Ola Jentzsch -################################### -scripted_trigger fp3_scandalous_scion_trigger = { - NOT = { liege ?= root } - is_available_ai_adult = yes - is_landed = no - age < 45 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - ai_sociability > low_negative_ai_value - ai_compassion < low_positive_ai_value - NOR = { - is_child_of = root - this = root - } - any_parent = { - is_available_ai_adult = yes - NOT = { is_close_family_of = root } - } -} - -fp3_clan.8015 = { - type = character_event - title = fp3_clan.8015.t - desc = fp3_clan.8015.desc - - theme = martial - - left_portrait = { - character = scope:scandalous_scion - animation = dismissal - triggered_animation = { - trigger = { - OR = { - has_trait = craven - has_trait = shy - ai_boldness <= low_positive_ai_value - } - } - animation = shame - } - outfit_tags = { - military_outfit - } - } - right_portrait = { - character = scope:concerned_parent - animation = stress - } - lower_left_portrait = root - - override_background = { reference = throne_room } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - government_has_flag = government_is_clan - is_available_adult = yes - is_house_head = yes - - #culture = { has_cultural_tradition = tradition_futuwaa } - - house = { - any_house_member = { - fp3_scandalous_scion_trigger = yes - } - } - } - - cooldown = { years = 10 } - - immediate = { - house = { - random_house_member = { - limit = { - fp3_scandalous_scion_trigger = yes - } - save_scope_as = scandalous_scion - random_parent = { - limit = { - is_available_ai_adult = yes - NOT = { is_close_family_of = root } - } - save_scope_as = concerned_parent - } - } - } - } - - option = { - name = fp3_clan.8015.a - - add_courtier = scope:scandalous_scion - - scope:scandalous_scion = { - add_character_modifier = { - modifier = fp3_better_company_modifier - years = 10 - } - } - - scope:concerned_parent = { - add_opinion = { - target = root - opinion = 25 - modifier = fp3_grateful_for_discretion_opinion - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:scandalous_scion - VALUE = minor_unity_gain - DESC = clan_unity_scandalous_scion_desc - REVERSE_NON_HOUSE_TARGET = no - } - - stress_impact = { - paranoid = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 0.5 - ai_greed = -0.5 - ai_sociability = 1 - } - } - } - - option = { - name = fp3_clan.8015.b - - scope:concerned_parent = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:scandalous_scion - VALUE = minor_unity_loss - DESC = clan_unity_scandalous_scion_ignored_problem_desc - REVERSE_NON_HOUSE_TARGET = no - } - - stress_impact = { - generous = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -0.5 - ai_greed = -0.5 - ai_sociability = -1 - } - } - } -} - -################################### -# Hammam Havoc -# By Ola Jentzsch -################################### -scripted_trigger fp3_scandalous_traits_trigger = { - OR = { - has_trait = deviant - has_trait = drunkard - has_trait = rakish - has_trait = hashishiyah - } -} - -scripted_trigger fp3_suitable_for_islamic_bathhouse_events_trigger = { - OR = { #checking for adherence to Islamic / Zoroastrian gender norms - AND = { - root = { is_male = yes } - is_male = yes - } - AND = { - root = { is_female = yes } - is_female = yes - } - } -} - -fp3_clan.8016 = { - type = character_event - title = fp3_clan.8016.t - desc = { - desc = fp3_clan.8016.opening_desc - first_valid = { - triggered_desc = { - trigger = { - scope:scandalous_clan_member = { - has_trait = deviant - } - } - desc = fp3_clan.8016.deviant_desc - } - triggered_desc = { - trigger = { - scope:scandalous_clan_member = { - has_trait = drunkard - } - } - desc = fp3_clan.8016.drunkard_desc - } - triggered_desc = { - trigger = { - scope:scandalous_clan_member = { - has_trait = rakish - } - } - desc = fp3_clan.8016.rakish_desc - } - triggered_desc = { - trigger = { - scope:scandalous_clan_member = { - has_trait = hashishiyah - } - } - desc = fp3_clan.8016.hashishiyah_desc - } - } - desc = fp3_clan.8016.ending_desc - } - - theme = faith - - left_portrait = { - character = root - animation = disbelief - triggered_animation = { - trigger = { - OR = { - has_trait = craven - has_trait = shy - has_trait = paranoid - stress > medium_stress - } - } - animation = worry - } - } - right_portrait = { - character = scope:chaplain - animation = eyeroll - } - lower_left_portrait = scope:scandalous_clan_member - - override_background = { reference = bath_house } - override_effect_2d = { - reference = smoke - } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_adult = yes - is_dynast = yes - government_has_flag = government_is_clan - - faith = { - OR = { - has_doctrine_parameter = deviancy_illegal - has_doctrine_parameter = deviancy_shunned - } - } - - house = { - any_house_unity_member = { - this != root - is_available_ai_adult = yes - fp3_scandalous_traits_trigger = yes - fp3_suitable_for_islamic_bathhouse_events_trigger = yes - } - } - - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { - is_available_healthy_ai_adult = yes - fp3_scandalous_traits_trigger = no - fp3_suitable_for_islamic_bathhouse_events_trigger = yes - } - } - - cooldown = { years = 10 } - - immediate = { - house = { - random_house_unity_member = { - limit = { - this != root - is_available_ai_adult = yes - fp3_scandalous_traits_trigger = yes - fp3_suitable_for_islamic_bathhouse_events_trigger = yes - } - save_scope_as = scandalous_clan_member - } - } - - cp:councillor_court_chaplain = { save_scope_as = chaplain } - - hidden_effect = { - scope:scandalous_clan_member = { - set_location = { location = root.location } - } - } - add_character_flag = is_naked - scope:chaplain = { - add_character_flag = is_naked - } - } - - option = { - name = fp3_clan.8016.a - - add_piety = medium_piety_gain - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:scandalous_clan_member - VALUE = minor_unity_loss - DESC = clan_unity_denouncement.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:scandalous_clan_member = { - denounce_effect = { ACTOR = root RECIPIENT = scope:scandalous_clan_member } - } - - scope:chaplain = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - stress_impact = { - forgiving = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -0.9 - ai_vengefulness = 0.5 - ai_zeal = 1 - } - } - } - - option = { - name = fp3_clan.8016.b - - scope:chaplain = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:scandalous_clan_member - VALUE = minor_unity_gain - DESC = clan_unity_denouncement_refusal.desc - REVERSE_NON_HOUSE_TARGET = no - } - - stress_impact = { - zealous = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -0.5 - ai_rationality = 0.8 - ai_sociability = 0.5 - } - } - } - after = { - remove_character_flag = is_naked - scope:chaplain = { - remove_character_flag = is_naked - } - } -} - -################################### -# A Questionable Position -# By Ola Jentzsch -################################### -#Tax collector acting as muhtasib -fp3_clan.8017 = { - type = character_event - title = fp3_clan.8017.t - - desc = { - desc = fp3_clan.8017.opening_desc - first_valid = { - triggered_desc = { - trigger = { - scope:tax_collector = { - OR = { - has_trait = diligent - has_trait = zealous - has_trait = chaste - has_trait = just - has_trait = ambitious - ai_zeal >= medium_positive_ai_value - } - } - } - desc = fp3_clan.8017.overly_eager.desc - } - triggered_desc = { - trigger = { - scope:tax_collector = { - OR = { - has_trait = drunkard - has_trait = greedy - has_trait = deceitful - has_trait = arbitrary - AND = { - ai_greed >= medium_positive_ai_value - ai_honor < low_positive_ai_value - } - } - } - } - desc = fp3_clan.8017.corrupt.desc - } - triggered_desc = { - trigger = { - scope:tax_collector = { - NOT = { ai_compassion >= low_positive_ai_value } - OR = { - has_trait = sadistic - has_trait = wrathful - has_trait = callous - ai_vengefulness >= medium_positive_ai_value - } - } - } - desc = fp3_clan.8017.cruel.desc - } - desc = fp3_clan.8017.generic.desc - } - desc = fp3_clan.8017.ending.desc - } - - theme = realm - - left_portrait = { - character = root - animation = disapproval - triggered_animation = { - trigger = { - OR = { - has_trait = generous - has_trait = compassionate - stress > low_stress - } - } - animation = worry - } - } - right_portrait = { - character = scope:unclan_taxpayer - animation = stress - } - lower_left_portrait = scope:tax_collector - - trigger = { - - has_fp3_dlc_trigger = yes - is_available_adult = yes - government_has_flag = government_is_clan - - has_religion = religion:islam_religion - - any_tax_collector = { - is_in_same_clan_as_trigger = { CHARACTER = root } - has_religion = religion:islam_religion - any_tax_collector_vassal = { - NOT = { - is_in_same_clan_as_trigger = { CHARACTER = root } - } - is_landed = yes - } - } - } - - immediate = { - - random_tax_collector = { - limit = { - is_in_same_clan_as_trigger = { CHARACTER = root } - has_religion = religion:islam_religion - any_tax_collector_vassal = { - NOT = { - is_in_same_clan_as_trigger = { CHARACTER = root } - - } - } - } - random_tax_collector_vassal = { - limit = { - NOT = { - is_in_same_clan_as_trigger = { CHARACTER = root } - } - is_landed = yes - } - save_scope_as = unclan_taxpayer - } - save_scope_as = tax_collector - } - } - - option = { - name = fp3_clan.8017.a - flavor = fp3_clan_protect_kinsman_flavor - - if = { - limit = { - root != house.house_head - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:tax_collector - VALUE = minor_unity_gain - DESC = clan_unity_protected_muhtasib_position.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - else = { - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:tax_collector - VALUE = medium_unity_gain - DESC = clan_unity_protected_muhtasib_position.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - - - scope:unclan_taxpayer = { - add_opinion = { - target = root - opinion = -20 - modifier = frustrated_opinion - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - zealous = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - modifier = { - factor = 2 - has_trait = zealous - } - modifier = { - factor = 0 - OR = { - has_trait = just - has_trait = compassionate - } - } - } - } - - option = { - name = fp3_clan.8017.b - flavor = fp3_clan_accuse_accuser_flavor - trigger = { - scope:unclan_taxpayer = { num_sinful_traits = { value > 0 target = root.faith } } - } - - add_dread = minor_dread_gain - - scope:unclan_taxpayer = { - add_opinion = { - target = root - opinion = -30 - modifier = shamed_me_opinion - } - } - - stress_impact = { - wrathful = medium_stress_impact_loss - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - modifier = { - factor = 2 - has_trait = zealous - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = compassionate - } - } - } - } - - option = { - name = fp3_clan.8017.c - - if = { - limit = { - root != house.house_head - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:tax_collector - VALUE = minor_unity_loss - DESC = clan_unity_fired_from_muhtasib_position.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - else = { - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:tax_collector - VALUE = medium_unity_loss - DESC = clan_unity_fired_from_muhtasib_position.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - - if = { - limit = { - NOT = { - has_hook_of_type = { - target = scope:unclan_taxpayer - type = favor_hook - } - } - } - add_hook = { - target = scope:unclan_taxpayer - type = favor_hook - } - } - - stress_impact = { - trusting = medium_stress_impact_loss - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = -0.9 - ai_rationality = 0.9 - ai_sociability = 0.5 - } - } - } - - option = { - name = fp3_clan.8017.d - #Low effect opt out that is only needed if the taxpayer is not intimidated because of their sins - - trigger = { - scope:unclan_taxpayer = { num_sinful_traits = { value = 0 target = root.faith } } - } - - scope:unclan_taxpayer = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - stress_impact = { - trusting = major_stress_impact_gain - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 0.4 - ai_greed = 0.6 - ai_compassion = -0.5 - } - } - } -} - diff --git a/events/dlc/fp3/fp3_dynasty_decision_events.txt b/events/dlc/fp3/fp3_dynasty_decision_events.txt deleted file mode 100644 index 670c73165..000000000 --- a/events/dlc/fp3/fp3_dynasty_decision_events.txt +++ /dev/null @@ -1,1376 +0,0 @@ -namespace = fp3_dynasty_decision - -######################################### -# Embellish Capital Decision Events # -# By Ola Jentzsch # -# Reworked by Chad Uhl # -######################################### - -scripted_effect fp3_dynasty_decision_0003_fire_follow_up_event_effect = { - # Fire the event based on the option selected - if = { # Royal Architect - limit = { scope:embellish_capital_royal_architect = yes } - trigger_event = { - id = fp3_dynasty_decision.0004 - days = { 3 10 } - } - } - else_if = { # Consort or Courtier - limit = { scope:embellish_capital_consort_courtier = yes } - trigger_event = { - id = fp3_dynasty_decision.0005 - days = { 3 10 } - } - } - else_if = { # Court Chaplain - limit = { scope:embellish_capital_chaplain = yes } - trigger_event = { - id = fp3_dynasty_decision.0007 - days = { 3 10 } - } - } - else_if = { # Me - limit = { scope:embellish_capital_me = yes } - trigger_event = { - id = fp3_dynasty_decision.0008 - days = { 3 10 } - } - } -} - -# If you have both the gold and the recently conquered county for the Embellish Capital decision, we let you decide how to proceed here -fp3_dynasty_decision.0003 = { - type = character_event - title = fp3_dynasty_decision.0003.t - desc = { - desc = fp3_dynasty_decision.0003.intro - triggered_desc = { - trigger = { scope:chosen_architect != root } - desc = fp3_dynasty_decision.0003.char - } - desc = fp3_dynasty_decision.0003.desc - } - theme = realm - - left_portrait = { - character = root - animation = personality_greedy - } - right_portrait = { - trigger = { scope:chosen_architect != root } - character = scope:chosen_architect - animation = personality_honorable - } - - override_background = { reference = market_east } - - option = { # Pay by plundering the target conquered county - name = fp3_dynasty_decision.0003.a - - scope:target_county = { - add_county_modifier = { - modifier = fp3_plundered_county_modifier - years = 30 - } - } - - remove_variable = embellish_capital_cost - - # Fire the event based on the option selected - fp3_dynasty_decision_0003_fire_follow_up_event_effect = yes - - if = { - limit = { scope:chosen_architect != root } - reverse_add_opinion = { - target = scope:chosen_architect - modifier = trusted_me_opinion - opinion = 10 - } - } - - stress_impact = { - callous = minor_stress_impact_loss - } - - ai_chance = { #social AI prefer this option - base = 50 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { # Pay with gold - name = fp3_dynasty_decision.0003.b - - remove_treasury_or_gold = var:embellish_capital_cost - - # Fire the event based on the option selected - fp3_dynasty_decision_0003_fire_follow_up_event_effect = yes - - if = { - limit = { scope:chosen_architect != root } - reverse_add_opinion = { - target = scope:chosen_architect - modifier = trusted_me_opinion - opinion = 10 - } - } - - stress_impact = { - generous = minor_stress_impact_loss - } - - ai_chance = { #rational AI prefer this option - base = 50 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - option = { #I'd rather wait - name = fp3_dynasty_decision.0003.c - - # Clear the cooldown. - remove_decision_cooldown = fp3_embellish_capital_decision - - # No stress impact for opting out. - } -} - -# Royal Architect -fp3_dynasty_decision.0004 = { - type = character_event - title = fp3_dynasty_decision.0004.t - desc = { - desc = fp3_dynasty_decision.0004.intro - triggered_desc = { - trigger = { has_variable = embellish_capital_cost } - desc = fp3_dynasty_decision.0004.plunder.desc - } - desc = fp3_dynasty_decision.0004.desc - } - theme = realm - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:chosen_architect - animation = steward - } - - immediate = { - scope:capital_county = { - add_county_modifier = { - modifier = fp3_architectural_splendor_county_modifier - years = 30 - } - } - } - - option = { #New fountains and aqueducts - name = fp3_dynasty_decision.0004.a - - scope:chosen_architect = { - duel = { - skill = stewardship - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - dynasty ?= { add_dynasty_prestige = major_dynasty_prestige_value } - house = { - every_house_member = { - custom = every_house_member - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - dynasty = { add_dynasty_prestige = medium_dynasty_prestige_value } - } - } - } - } - } - - ai_chance = { #ambitious AI prefer this option - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 0.5 - } - } - } - - option = { #impress the local people - name = fp3_dynasty_decision.0004.b - - scope:chosen_architect = { - duel = { - skills = { stewardship diplomacy } - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = medium_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 20 - } - } - every_vassal = { - custom = every_minority_vassal - vassal_stance = minority - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = low_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 20 - } - } - } - } - } - } - } - - ai_chance = { #moderately ambitious, patient AI prefer this option - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_greed = 0.5 - ai_sociability = 0.5 - } - } - } - - option = { #New fountains and aqueducts - name = fp3_dynasty_decision.0004.c - - scope:chosen_architect = { - duel = { - skills = { stewardship learning } - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - scope:capital_county = { change_development_progress = medium_development_progress_gain } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - scope:capital_county = { change_development_progress = minor_development_progress_gain } - } - } - } - } - } - - ai_chance = { #pragmatic or compassionate AI prefer this option - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_compassion = 0.5 - } - } - } -} - -# Courtier -fp3_dynasty_decision.0005 = { - type = character_event - title = fp3_dynasty_decision.0005.t - desc = fp3_dynasty_decision.0005.desc - theme = realm - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:chosen_architect - animation = happiness - } - - immediate = { - scope:capital_county = { - add_county_modifier = { - modifier = fp3_architectural_splendor_county_modifier - years = 30 - } - } - } - - option = { #Magnificent bathhouse - name = fp3_dynasty_decision.0005.a - - scope:chosen_architect = { - #before the duel, we're checking for opinion gains - if = { - limit = { - OR = { - has_relation_lover = root - has_relation_soulmate = root - } - } - add_opinion = { - target = root - modifier = happy_opinion - opinion = 20 - } - } - else_if = { - limit = { is_consort_of = root } - custom_tooltip = fp3_decisons_closer_to_love.tt - hidden_effect = { - root = { - progress_towards_lover_effect = { - CHARACTER = scope:chosen_architect - REASON = lover_let_me_build_steamy_bath_house - OPINION = 20 - } - } - } - } - else = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - duel = { - skill = stewardship - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - add_character_modifier = { - modifier = fp3_luxurious_bathhouse_modifier - years = 30 - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - add_character_modifier = { - modifier = fp3_less_luxurious_bathhouse_modifier - years = 30 - } - } - } - } - } - } - - ai_chance = { #decadent or compassionate AI prefer this option - base = 100 - ai_value_modifier = { - ai_compassion = 0.3 - ai_greed = 0.8 - ai_sociability = 1 - } - } - - stress_impact = { #decadent characters loves this idea - lazy = minor_stress_impact_loss - lustful = minor_stress_impact_loss - gregarious = minor_stress_impact_loss - gluttonous = minor_stress_impact_loss - shy = medium_stress_impact_gain - } - } - - option = { #A temple - name = fp3_dynasty_decision.0005.b - - scope:chosen_architect = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -20 - } - duel = { - skills = { stewardship learning } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - add_piety = major_piety_gain - every_vassal = { - custom = every_zealot_vassal - vassal_stance = zealot - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - add_piety = medium_piety_gain - } - } - } - } - } - - stress_impact = { - callous = minor_stress_impact_loss - zealous = minor_stress_impact_loss - } - - ai_chance = { #zealous antisocial AI prefer this option - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_sociability = -1 - } - } - } - - option = { #A palace - name = fp3_dynasty_decision.0005.c - - scope:chosen_architect = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -20 - } - duel = { - skills = { stewardship diplomacy } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:royal_architect - - add_prestige = major_prestige_gain - every_vassal = { - custom = every_courtly_vassal - vassal_stance = courtly - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:royal_architect - - add_prestige = medium_prestige_gain - } - } - } - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - callous = minor_stress_impact_loss - } - - ai_chance = { #rational AI, who kinda just wanna put the courtier down, picks this option - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_vengefulness = 0.7 - ai_sociability = -1 - } - } - } -} - -# Chaplain -fp3_dynasty_decision.0007 = { - type = character_event - title = fp3_dynasty_decision.0007.t - desc = { - desc = { - desc = fp3_dynasty_decision.0007_desc_beginning - first_valid = { - triggered_desc = { - trigger = { - faith = { has_doctrine_parameter = sky_burials_active } - } - desc = fp3_dynasty_decision.0007_dakhma - } - triggered_desc = { - trigger = { - has_religion = religion:islam_religion - } - desc = fp3_dynasty_decision.0007_madrasa - } - } - } - desc = fp3_dynasty_decision.0007_outro - } - theme = realm - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:chosen_architect - animation = reading - } - - immediate = { - scope:capital_county = { - add_county_modifier = { - modifier = fp3_spiritual_splendor_county_modifier - years = 30 - } - } - } - - option = { #A great temple - name = fp3_dynasty_decision.0007.a - - scope:chosen_architect = { - duel = { - skills = { stewardship learning } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - add_piety = major_piety_gain - every_vassal = { - custom = every_zealot_vassal - vassal_stance = zealot - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - add_piety = medium_piety_gain - } - } - } - } - } - - ai_chance = { #zealous AI prefer this option - base = 100 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { #A great dakhma - name = fp3_dynasty_decision.0007.b - - trigger = { - faith = { - has_doctrine_parameter = sky_burials_active - } - NOR = { #fallback for future content - has_character_modifier = fp3_great_tower_of_silence_modifier - has_character_modifier = fp3_less_great_tower_of_silence_modifier - } - } - - scope:capital_county = { - add_county_modifier = { - modifier = fp3_spiritual_splendor_county_modifier - years = 30 - } - } - - scope:chosen_architect = { - duel = { - skill = stewardship - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - add_character_modifier = { - modifier = fp3_great_tower_of_silence_modifier - years = 30 - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - add_character_modifier = { - modifier = fp3_less_great_tower_of_silence_modifier - years = 30 - } - } - } - } - } - } - - ai_chance = { #zealous-hubris AI prefer this option - base = 100 - ai_value_modifier = { - ai_zeal = 0.5 - ai_greed = 0.5 - } - } - } - - option = { #A nice madrasa - name = fp3_dynasty_decision.0007.c - - trigger = { has_religion = religion:islam_religion } - - scope:chosen_architect = { - duel = { - skill = learning - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = medium_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 20 - } - } - every_vassal = { - custom = every_minority_vassal - vassal_stance = minority - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = low_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 10 - } - } - } - } - } - } - } - - ai_chance = { #rational-sociable AI prefer this option - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_sociability = 0.5 - } - } - } - - option = { #A sweet fresco - name = fp3_dynasty_decision.0007.d - - scope:chosen_architect = { - duel = { - skills = { stewardship diplomacy } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = scope:chosen_architect - - dynasty = { add_dynasty_prestige = major_dynasty_prestige_value } - house = { - every_house_member = { - custom = every_house_member - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = scope:chosen_architect - - dynasty = { add_dynasty_prestige = medium_dynasty_prestige_value } - } - } - } - } - } - - ai_chance = { #ambitious AI prefer this option - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_sociability = 0.5 - } - } - } -} - -# Myself -fp3_dynasty_decision.0008 = { - type = character_event - title = fp3_dynasty_decision.0008.t - desc = fp3_dynasty_decision.0008.desc - theme = realm - left_portrait = { - character = root - animation = reading - } - - override_background = { reference = relaxing_room } - - option = { #Roads and public works (Development bonus) - name = fp3_dynasty_decision.0008.a - - trigger = { has_lifestyle = stewardship_lifestyle } - - duel = { - skill = stewardship - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - scope:capital_county = { change_development_progress = medium_development_progress_gain } - add_stewardship_lifestyle_xp = massive_lifestyle_xp - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - scope:capital_county = { change_development_progress = minor_development_progress_gain } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - } - } - } - - ai_chance = { #compassionate-energetic AI prefer this option - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_energy = 0.5 - } - } - } - - option = { #Local monuments (Acceptance or Control) - name = fp3_dynasty_decision.0008.b - - trigger = { has_lifestyle = diplomacy_lifestyle } - - duel = { - skills = { stewardship diplomacy } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = medium_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 20 - } - } - add_diplomacy_lifestyle_xp = massive_lifestyle_xp - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - if = { - limit = { - scope:capital_county.culture != root.culture - } - culture = { - change_cultural_acceptance = { - target = scope:capital_county.culture - value = low_positive_culture_acceptance - desc = cultural_acceptance_built_magnificent_capital - } - } - } - else = { - scope:capital_county = { - change_county_control = 10 - } - } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - } - } - } - - ai_chance = { #rational AI prefer this option - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - option = { #Mausoleum (Renown) - name = fp3_dynasty_decision.0008.c - - trigger = { has_lifestyle = learning_lifestyle } - - duel = { - skills = { stewardship learning } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - dynasty = { add_dynasty_prestige = major_dynasty_prestige_value } - add_learning_lifestyle_xp = massive_lifestyle_xp - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - dynasty = { add_dynasty_prestige = medium_dynasty_prestige_value } - add_learning_lifestyle_xp = medium_lifestyle_xp - } - } - } - } - - - ai_chance = { #ambitious AI prefer this option - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - option = { #Hammam (Stress Loss) - name = fp3_dynasty_decision.0008.d - - trigger = { has_lifestyle = intrigue_lifestyle } - - duel = { - skills = { stewardship intrigue } - value = medium_skill_rating - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - add_character_modifier = { - modifier = fp3_luxurious_bathhouse_modifier - years = 30 - } - add_intrigue_lifestyle_xp = massive_lifestyle_xp - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - add_character_modifier = { - modifier = fp3_less_luxurious_bathhouse_modifier - years = 30 - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - } - } - } - - - ai_chance = { #social AI prefer this option - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - - option = { #Tower (Province improvement) - name = fp3_dynasty_decision.0008.e - - trigger = { has_lifestyle = martial_lifestyle } - - duel = { - skills = { stewardship martial } - value = medium_skill_rating - - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - add_character_modifier = { - modifier = fp3_very_lofty_tower_modifier - years = 30 - } - add_martial_lifestyle_xp = massive_lifestyle_xp - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - add_character_modifier = { - modifier = fp3_less_lofty_tower_modifier - years = 30 - } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - } - } - } - - ai_chance = { #warlike AI prefer this option - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - option = { #Palace (Prestige) - name = fp3_dynasty_decision.0008.f - - duel = { - skill = stewardship - value = medium_skill_rating - - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - add_prestige = major_prestige_gain - every_vassal = { - custom = every_courtly_vassal - vassal_stance = courtly - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - add_prestige = medium_prestige_gain - } - } - } - } - - ai_chance = { #honor-focused AI prefer this option - base = 100 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - option = { #Temple (Piety) - name = fp3_dynasty_decision.0008.g - - duel = { - skills = { stewardship learning } - value = medium_skill_rating - - 50 = { - desc = splurge_above_expectations_toast - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - root = { - send_interface_toast = { - title = splurge_above_expectations_toast - left_icon = root - - add_piety = major_piety_gain - every_vassal = { - custom = every_zealot_vassal - vassal_stance = zealot - add_opinion = { - target = root - modifier = approving_opinion - } - } - } - } - } - 50 = { - desc = splurge_as_expected_toast - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - root = { - send_interface_toast = { - title = splurge_as_expected_toast - left_icon = root - - add_piety = medium_piety_gain - } - } - } - } - - ai_chance = { #pious AI prefer this option - base = 100 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - after = { - scope:capital_county = { - add_county_modifier = { - modifier = fp3_architectural_splendor_county_modifier - years = 30 - } - } - } -} - - - diff --git a/events/dlc/fp3/fp3_extra_flavor_events.txt b/events/dlc/fp3/fp3_extra_flavor_events.txt deleted file mode 100644 index 20817aafc..000000000 --- a/events/dlc/fp3/fp3_extra_flavor_events.txt +++ /dev/null @@ -1,2221 +0,0 @@ -namespace = fp3_yearly - -########EVENT INDEX############ -#fp3_yearly.8037 - A Cure for Acedia (the Melancholia Chain) - #fp3_yearly.8038 - Black Bile - #fp3_yearly.8039 - Herbs & Humors - #fp3_yearly.8040 - Psychic Potency - #fp3_yearly.8041 - The Solace of Silence - #fp3_yearly.8042 - The Undying Spirit - #fp3_yearly.8043 - Remedies' End - #fp3_yearly.8044 - The Light of the World -#fp3_yearly.8045 - The Mysterious Bundle (Chess-Playing Monkey Chain) - #fp3_yearly.8046 - Monkey Medicine - #fp3_yearly.8047 - Feeling Better? - #fp3_yearly.8048 - Hidden event, triggering toast about monkey's death -#fp3_yearly.8050 - The Fate of the Dead -#fp3_yearly.8051 - The Purest Fire - #fp3_yearly.8052 - Chasing the Clouds - #fp3_yearly.8053 - The Fire of Victory - - -################################## -# A Cure for Acedia - the Melancholica chain -# By Ola Jentzsch -################################### - -fp3_yearly.8037 = { #A Cure for Acedia - type = character_event - title = fp3_yearly.8037.t - desc = fp3_yearly.8037.desc - theme = mental_health - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:court_physician - animation = personality_bold - } - lower_left_portrait = { - character = scope:persian_polymath - } - - override_background = { reference = corridor_night } - - trigger = { - - #standard sanity checks - has_fp3_dlc_trigger = yes - is_landed_or_landless_administrative = yes - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - root.capital_province = { geographical_region = world_persian_empire } - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - employs_court_position = court_physician_court_position - - any_court_position_holder = { - type = court_physician_court_position - is_available_healthy_ai_adult = yes - NOT = { has_trait = arrogant } - learning < excellent_skill_level #he can't be too smart for this story to work - } - } - - cooldown = { years = 50 } - - weight_multiplier = { #more likely to trigger if historical scholars can be used - base = 0.4 - modifier = { - OR = { - AND = { #for Rhazes - current_year >= 895 - current_year < 935 - } - AND = { #for Al-Akhwayni - current_year >= 936 - current_year < 983 - } - AND = { #for Avicenna - current_year >= 1000 - current_year < 1040 - } - } - add = 1.6 - } - } - - immediate = { - - save_court_physician_as_effect = { SCOPE_NAME = court_physician } #so we can use him in the event - - if = { #This looks to see if one of two historical alchemists will be used in the event - limit = { #their rough period of activity - is_ai = no - AND = { - current_year >= 895 - current_year < 935 - } - NOT = { exists = global_var:rhazes_created } #makes sure that he wasn't already spawned by any event elsewhere - } - create_character = { - location = root.capital_province - template = fp3_rhazes_template - save_scope_as = persian_polymath #this saves him as a scope so we can get nice effects to bounce off him! - } - set_global_variable = rhazes_created - } - else_if = { #This looks to see if one of two historical alchemists will be used in the event - limit = { #their rough period of activity - is_ai = no - AND = { - current_year >= 936 - current_year < 983 - } - NOT = { exists = global_var:al_akhwayni_created } #makes sure that he wasn't already spawned by any event elsewhere - } - create_character = { - location = root.capital_province - template = fp3_al_akhwayni_template - save_scope_as = persian_polymath #this saves him as a scope so we can get nice effects to bounce off him! - } - set_global_variable = al_akhwayni_created - } - else_if = { - limit = { #their rough period of activity - is_ai = no - AND = { - current_year >= 1000 - current_year < 1040 - } - NOT = { exists = global_var:avicenna_created } #makes sure that he wasn't already spawned by any event elsewhere - } - create_character = { - location = root.capital_province - template = fp3_avicenna_template - save_scope_as = persian_polymath #this saves him as a scope so we can get nice effects to bounce off him! - } - set_global_variable = avicenna_created - } - else = { - create_character = { - age = { 32 50 } - location = root.capital_province - template = scholar_character - trait = education_learning_3 - trait = lifestyle_herbalist - trait = lifestyle_physician - random_traits_list = { - count = 3 - diligent = {} - patient = {} - cynical = {} - humble = {} - greedy = {} - } - random_traits_list = { #for flavor - count = 1 - lunatic_1 = {} - deviant = {} - lifestyle_mystic = {} - hashishiyah = {} - witch = {} - } - culture = culture:persian - faith = root.faith - save_scope_as = persian_polymath - - after_creation = { - add_trait_xp = { - trait = lifestyle_physician - value = 100 - } - add_random_tiered_trait_xp_effect = { - TRAIT = lifestyle_mystic - LEVEL_1 = yes - LEVEL_3 = no - } - } - } - } - } - - option = { - name = fp3_yearly.8037.a - - remove_short_term_gold = medium_gold_value - - trigger_event = { - id = fp3_yearly.8038 - days = { 5 10 } - } - - stress_impact = { - content = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 0.5 - } - } - } - - option = { - name = fp3_yearly.8037.b - - stress_impact = { - base = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - shy = miniscule_stress_impact_loss - } - - ai_chance = { #most depressed AI would rather not deal with the situation - base = 150 - ai_value_modifier = { - ai_energy = -0.9 - ai_sociability = -0.5 - } - } - } -} - -fp3_yearly.8038 = { #Black Bile - type = character_event - title = fp3_yearly.8038.t - desc = fp3_yearly.8038.desc - theme = mental_health - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:persian_polymath - animation = personality_rational - } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - exists = scope:persian_polymath - scope:persian_polymath = { is_alive = yes } - } - - immediate = { - - add_courtier = scope:persian_polymath - - hidden_effect = { - scope:persian_polymath = { - set_knight_status = forbid #this is to prevent him being auto-turned into a knight during his stay. The player can still make him a knight manually if they insist on it. - } - } - } - - option = { - name = fp3_yearly.8038.a - - add_character_modifier = { - modifier = fp3_lackluster_diet_modifier - years = 10 - } - - if = { - limit = { - has_trait = comfort_eater - } - custom_tooltip = lackluster_diet.tt - } - - trigger_event = { - id = fp3_yearly.8039 - days = { 200 400 } - } - - stress_impact = { - temperate = minor_stress_impact_loss - gluttonous = major_stress_impact_gain - comfort_eater = massive_stress_impact_gain - gregarious = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 0.5 - } - } - } - - option = { - name = fp3_yearly.8038.b - - if = { - limit = { - OR = { - exists = global_var:avicenna_created - exists = global_var:rhazes_created - exists = global_var:al_akhwayni_created - } - } - scope:persian_polymath = { #Let's keep the historical characters around, if they were created - move_to_pool = yes - } - } - else = { - scope:persian_polymath = { #otherwise, let's just have him disappear - move_to_pool = yes - silent_disappearance_effect = yes - } - } - - stress_impact = { - lazy = minor_stress_impact_loss - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - stubborn = minor_stress_impact_loss - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = 0.5 - } - } - } -} - - -fp3_yearly.8039 = { #Herbs & Humors - type = character_event - title = fp3_yearly.8039.t - desc = fp3_yearly.8039.desc - theme = mental_health - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:persian_polymath - animation = personality_cynical - } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - has_character_modifier = fp3_lackluster_diet_modifier - - exists = scope:persian_polymath - - scope:persian_polymath = { - is_courtier_of = root - } - } - - option = { - name = fp3_yearly.8039.a - - remove_character_modifier = fp3_lackluster_diet_modifier - - add_character_modifier = { - modifier = fp3_herbal_remedies_modifier - } - - trigger_event = { - id = fp3_yearly.8040 - days = { 200 400 } - } - - stress_impact = { - temperate = minor_stress_impact_gain - content = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_rationality = 1 - } - } - } - - option = { - name = fp3_yearly.8039.b - - trigger_event = { - id = fp3_yearly.8040 - days = { 200 400 } - } - - stress_impact = { - content = minor_stress_impact_loss - temperate = minor_stress_impact_loss - gluttonous = major_stress_impact_gain - comfort_eater = massive_stress_impact_gain - gregarious = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_sociability = -0.1 - } - } - } - - option = { - name = fp3_yearly.8039.c - - if = { - limit = { - OR = { - exists = global_var:avicenna_created - exists = global_var:rhazes_created - exists = global_var:al_akhwayni_created - } - } - scope:persian_polymath = { #Let's keep the historical characters around, if they were created - move_to_pool = yes - } - } - else = { - scope:persian_polymath = { #otherwise, let's just have him disappear - move_to_pool = yes - silent_disappearance_effect = yes - } - } - - stress_impact = { - impatient = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - ambitious = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_vengefulness = 0.5 - } - } - } -} - -fp3_yearly.8040 = { #Psychic Potency - type = character_event - title = fp3_yearly.8040.t - desc = fp3_yearly.8040.desc - theme = mental_health - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:persian_polymath - animation = personality_compassionate - } - - lower_left_portrait = { - character = scope:court_chaplain - } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - exists = scope:persian_polymath - - scope:persian_polymath = { - is_courtier_of = root - } - } - - immediate = { - - if = { - limit = { - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { - AND = { - is_available_healthy_ai_adult = yes - this != scope:persian_polymath - } - } - } - cp:councillor_court_chaplain = { save_scope_as = court_chaplain } - } - } - - option = { - name = fp3_yearly.8040.a - - trigger = { - AND = { - has_religion = religion:islam_religion - NOT = { has_character_modifier = fp3_sufi_initiate_modifier } - } - } - - trigger_event = { - id = fp3_yearly.8041 - days = { 5 15 } - } - - stress_impact = { - #none for this option - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.9 - ai_boldness = 0.9 - } - } - } - - - option = { - name = fp3_yearly.8040.b - - trigger = { exists = scope:court_chaplain } - - trigger_event = fp3_yearly.8042 - - stress_impact = { - #none for this option - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.5 - ai_sociability = 0.8 - ai_compassion = 0.5 - ai_vengefulness = -0.5 - } - } - } - - option = { - name = fp3_yearly.8040.c - flavor = fp3_refusing_faith_treatment_flavor - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { - zealous = medium_stress_impact_loss - cynical = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_vengefulness = 0.5 - } - } - } - - option = { - name = fp3_yearly.8040.d - - if = { - limit = { - OR = { - exists = global_var:avicenna_created - exists = global_var:rhazes_created - exists = global_var:al_akhwayni_created - } - } - scope:persian_polymath = { #Let's keep the historical characters around, if they were created - move_to_pool = yes - } - } - else = { - scope:persian_polymath = { #otherwise, let's just have him disappear - move_to_pool = yes - silent_disappearance_effect = yes - } - } - - stress_impact = { - cynical = minor_stress_impact_loss - impatient = minor_stress_impact_loss - forgiving = medium_stress_impact_gain - patient = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_vengefulness = 1 - } - } - } -} - - -############################################################### -# The Solace of Silence - by Ola Jentzsch -############################################################### - -fp3_yearly.8041 = { - type = character_event - title = fp3_yearly.8041.t - desc = fp3_yearly.8041.desc - theme = learning_theology_focus - - left_portrait = { - character = scope:sufi_mystic - animation = personality_zealous - } - - right_portrait = { - character = root - animation = worry - } - - override_background = { - reference = relaxing_room - } - - immediate = { - - if = { - limit = { - any_relation = { - type = friend - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - fp3_sufism_enthusiast_trigger = yes - } - } - random_relation = { - type = friend - limit = { - AND = { - fp3_sufism_enthusiast_trigger = yes - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - } - } - save_scope_as = sufi_mystic - } - } - else_if = { - limit = { - any_relation = { - type = lover - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - fp3_sufism_enthusiast_trigger = yes - } - } - random_relation = { - type = lover - limit = { - AND = { - fp3_sufism_enthusiast_trigger = yes - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - } - } - save_scope_as = sufi_mystic - } - } - else_if = { - limit = { - any_courtier_or_guest = { - fp3_sufism_enthusiast_trigger = yes - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - } - } - random_courtier_or_guest = { - limit = { - AND = { - fp3_sufism_enthusiast_trigger = yes - NOR = { - this = scope:persian_polymath - this = scope:court_chaplain - } - } - } - save_scope_as = sufi_mystic - } - } - else = { - create_character = { - location = root.capital_province - template = fp3_sufi_mystic - gender_female_chance = root_faith_dominant_gender_female_chance - culture = culture:persian - save_scope_as = sufi_mystic - - after_creation = { - hidden_effect = { - root = { - add_courtier = scope:sufi_mystic - } - } - } - } - } - - hidden_effect = { - - scope:sufi_mystic = { - add_character_modifier = { - modifier = fp3_sufi_initiate_modifier #Unlocks the "Meditate in Seclusion" decision if you are a ruler - } - } - } - } - - option = { - name = fp3_yearly.8041.a - - duel = { - skill = learning - value = medium_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - send_interface_toast = { - title = learning_muraqaba_toast.success - left_icon = root - - custom_tooltip = fp3_unlock_meditation.tt - add_character_modifier = { - modifier = fp3_sufi_initiate_modifier #Unlocks the "Meditate in Seclusion" decision if you are a ruler - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = learning_muraqaba_toast.failure - left_icon = root - add_learning_lifestyle_xp = minor_lifestyle_experience - } - } - } - } - - scope:sufi_mystic = { - add_opinion = { - target = root - modifier = trusted_friend_opinion - } - } - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { #while the stress mods here are low, note that they stack with the base modifier - base = medium_stress_impact_gain - zealous = minor_stress_impact_loss - patient = minor_stress_impact_loss - arrogant = medium_stress_impact_gain - paranoid = minor_stress_impact_gain - callous = medium_stress_impact_gain - lazy = minor_stress_impact_gain - content = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_boldness = 0.5 - ai_energy = 0.5 - ai_zeal = 1 - } - } - } - - option = { - name = fp3_yearly.8041.b - - scope:sufi_mystic = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { - base = minor_stress_impact_loss - zealous = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_boldness = -0.5 - ai_zeal = -0.5 - } - } - } -} - -##### The Undying Spirit ##### - -fp3_yearly.8042 = { #The Undying Spirit - type = character_event - title = fp3_yearly.8042.t - desc = fp3_yearly.8042.desc - theme = faith - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:court_chaplain - animation = chancellor - } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - exists = scope:court_chaplain - } - - option = { - name = fp3_yearly.8042.a - - scope:court_chaplain = { - add_opinion = { - target = root - modifier = trusted_me_opinion - opinion = 15 - } - } - - add_character_modifier = { - modifier = focused_reading_modifier - years = 10 - } - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { - base = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - impatient = medium_stress_impact_gain - dull = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_rationality = 0.5 - ai_zeal = 0.5 - } - } - } - - option = { - name = fp3_yearly.8042.b - - scope:court_chaplain = { - add_opinion = { - target = root - modifier = trusted_me_opinion - opinion = 15 - } - } - - add_character_modifier = { - modifier = fp3_worshipping_in_solitude_modifier - years = 10 - } - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { - gregarious = medium_stress_impact_gain - cynical = medium_stress_impact_gain - impatient = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - ai_rationality = 0.5 - ai_zeal = 0.5 - } - } - } - - option = { - name = fp3_yearly.8042.c - - scope:court_chaplain = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - trigger_event = { - id = fp3_yearly.8043 - days = { 150 250 } - } - - stress_impact = { - base = minor_stress_impact_loss - humble = minor_stress_impact_gain - patient = medium_stress_impact_gain - trusting = medium_stress_impact_gain - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_vengefulness = 0.5 - } - } - } -} - -##### Remedies' End ##### - -fp3_yearly.8043 = { - type = character_event - title = fp3_yearly.8043.t - desc = fp3_yearly.8043.desc - theme = mental_health - left_portrait = { - character = root - animation = sadness - } - right_portrait = { - character = scope:persian_polymath - animation = personality_coward - } - - override_background = { reference = study } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - OR = { - has_trait = depressed_1 #non-genetic melancholia - has_trait = depressed_genetic #or the genetic kind, but they won't be able to cure this one... - } - - exists = scope:persian_polymath - - scope:persian_polymath = { - is_courtier_of = root - } - } - - option = { - name = fp3_yearly.8043.a - flavor = fp3_polymath_stays_flavor - - remove_short_term_gold = medium_gold_value - - hidden_effect = { - if = { - limit = { has_trait = depressed_1 } - random = { - chance = 50 - trigger_event = { - id = fp3_yearly.8044 - days = { 300 500 } - } - } - } - } - - stress_impact = { - greedy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_sociability = 1 - ai_boldness = -0.7 - } - } - } - - option = { - name = fp3_yearly.8043.b - - hidden_effect = { - if = { - limit = { has_trait = depressed_1 } - random = { - chance = 50 - trigger_event = { - id = fp3_yearly.8044 - days = { 300 500 } - } - } - } - } - - scope:persian_polymath = { #at this juncture, we want to keep the polymath around, and not disappeared, so the next event can trigger - move_to_pool = yes - } - - stress_impact = { - vengeful = minor_stress_impact_loss - generous = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - ai_vengefulness = 1 - } - } - } -} - - -##### The Light of the World ##### - -fp3_yearly.8044 = { - type = character_event - title = fp3_yearly.8044.t - desc = fp3_yearly.8044.desc - theme = mental_health - left_portrait = { - character = root - animation = happiness - } - - override_background = { reference = wilderness } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - has_trait = depressed_1 #non-genetic melancholia - - exists = scope:persian_polymath - - } - - immediate = { - - remove_trait = depressed_1 - } - - option = { - name = fp3_yearly.8044.a - - stress_impact = { - base = medium_stress_impact_loss - } - } -} - -################################## -# The Mysterious Bundle -# By Ola Jentzsch -################################### - -fp3_yearly.8045 = { #The Mysterious Bundle (sick monkey chain) - type = character_event - title = fp3_yearly.8045.t - desc = fp3_yearly.8045.desc - theme = pet - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:buzina_enthusiast - animation = newborn - } - lower_center_portrait = scope:court_physician - - override_background = { reference = fp3_courtyard_night } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - root.capital_province = { geographical_region = world_persian_empire } - is_available = yes - # Following checks that they are of the right age to play board games - can_start_board_game_eligibility_checks_trigger = yes - - employs_tax_collector = yes - any_tax_collector = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value >= 0 - } - save_temporary_scope_as = tax_collector_temp - } - employs_court_position = court_physician_court_position - any_court_position_holder = { - type = court_physician_court_position - is_available_healthy_ai_adult = yes - this != scope:tax_collector_temp - } - - NOR = { - has_character_flag = had_event_fp3_yearly_8045 - has_character_modifier = fp3_chess_playing_monkey_modifier - has_character_modifier = fp3_sickly_monkey_modifier - culture = { has_cultural_parameter = may_challenge_to_board_games } - } - } - - immediate = { - add_character_flag = had_event_fp3_yearly_8045 - random_tax_collector = { - limit = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value >= 0 - } - } - save_scope_as = buzina_enthusiast - } - save_court_physician_as_effect = { SCOPE_NAME = court_physician } - } - - option = { #My court physician can nurse her - name = fp3_yearly.8045.a - flavor = sick_monkey_flavor_desc - - scope:buzina_enthusiast = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - - custom_tooltip = playing_with_monkey.tt - - add_character_modifier = { - modifier = fp3_sickly_monkey_modifier - years = 10 - } - - trigger_event = { - id = fp3_yearly.8046 - days = { 1 2 } - } - - stress_impact = { - compassionate = minor_stress_impact_loss - generous = minor_stress_impact_loss - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_sociability = 0.5 - ai_vengefulness = -0.3 - } - modifier = { - factor = 0 - has_trait = arrogant - } - } - } - - option = { # You got yourself into this mess, you can handle it - name = fp3_yearly.8045.b - - add_prestige = minor_prestige_gain - - scope:buzina_enthusiast = { - add_opinion = { - target = root - modifier = was_scolded_opinion - opinion = -15 - } - add_character_flag = { - flag = fp3_inspired_tax_collector - years = 10 - } - custom_tooltip = fp3_inspired_tax_collector - } - - stress_impact = { - compassionate = minor_stress_impact_gain - arrogant = medium_stress_impact_loss - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_sociability = 0.2 - ai_boldness = 0.3 - ai_energy = 0.7 - } - modifier = { - has_trait = compassionate - factor = 0 - } - } - } - - option = { # Opt-out - name = fp3_yearly.8045.c - - stress_impact = { - compassionate = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - ai_energy = -0.5 - ai_boldness = -0.9 - } - } - } -} - - -fp3_yearly.8046 = { #Buzina - type = character_event - title = fp3_yearly.8046.t - desc = fp3_yearly.8046.desc - theme = medicine - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:court_physician - animation = newborn - } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - - has_character_modifier = fp3_sickly_monkey_modifier - - exists = scope:court_physician - } - - option = { - name = fp3_yearly.8046.a - flavor = fp3_wait_and_see.tt - remove_short_term_gold = minor_gold_value - custom_tooltip = monkey_recover_better_chances_tt - - hidden_effect = { - random_list = { - 80 = { - trigger_event = { - id = fp3_yearly.8047 - days = { 30 100 } - } - } - 20 = { - trigger_event = { - id = fp3_yearly.8048 - days = { 100 200 } - } - } - } - } - - stress_impact = { - compassionate = minor_stress_impact_loss - generous = minor_stress_impact_loss - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_rationality = 1 - ai_greed = -0.5 - } - } - } - - option = { - name = fp3_yearly.8046.b - flavor = fp3_wait_and_see.tt - hidden_effect = { - random_list = { - 50 = { - trigger_event = { - id = fp3_yearly.8047 - days = { 30 100 } - } - } - 50 = { - trigger_event = { - id = fp3_yearly.8048 - days = { 100 200 } - } - } - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - -fp3_yearly.8047 = { - type = character_event - title = fp3_yearly.8047.t - desc = fp3_yearly.8047.desc - theme = pet - - left_portrait = { - character = root - animation = chess_cocky - } - right_portrait = { - character = scope:court_physician - animation = newborn - } - - trigger = { has_character_modifier = fp3_sickly_monkey_modifier } - - immediate = { - remove_character_modifier = fp3_sickly_monkey_modifier - } - - option = { - name = fp3_yearly.8047.a - add_character_modifier = { - modifier = fp3_chess_playing_monkey_modifier - years = 15 - } - custom_tooltip = playing_chess_with_monkey.tt - } -} - -fp3_yearly.8048 = { - hidden = yes - - trigger = { has_character_modifier = fp3_sickly_monkey_modifier } - - immediate = { - root = { - send_interface_toast = { - title = monkey_died_from_sickness_toast - left_icon = root - remove_character_modifier = fp3_sickly_monkey_modifier - } - } - - } -} - -################################## -# The Fate of the Dead -# By Ola Jentzsch -################################### - -fp3_yearly.8050 = { #The Fate of the Dead - type = character_event - title = fp3_yearly.8050.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - has_religion = religion:zoroastrianism_religion - } - desc = fp3_yearly.8050_zoroastrian.desc - } - desc = fp3_yearly.8050_unzoroastrian.desc - } - first_valid = { - triggered_desc = { - trigger = { - current_year < 950 - } - desc = fp3_yearly.8050_early_period.desc - } - desc = fp3_yearly.8050_late_period.desc - } - } - - theme = skull - override_background = { reference = temple } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:dakhma_enthusiast - animation = personality_bold - } - lower_left_portrait = { - character = scope:architect - } - - cooldown = { years = 5 } - - weight_multiplier = { #more likely if root is zoroastrian - base = 0.4 - modifier = { - has_religion = religion:zoroastrianism_religion - add = 0.6 - } - } - - trigger = { - - #standard sanity checks - has_fp3_dlc_trigger = yes - is_ruler = yes - is_available_healthy_adult = yes - root.capital_province = { geographical_region = world_persian_empire } - - any_held_county = { - faith = { religion_tag = zoroastrianism_religion } - county_control <= 75 - any_county_province = { - has_holding_type = castle_holding - has_special_building_slot = no - has_special_building = no - NOR = { - has_building = tower_of_silence_01 - has_building = event_tower_of_silence_01 - } - } - } - - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { is_available_healthy_ai_adult = yes } - } - - immediate = { - - cp:councillor_court_chaplain = { save_scope_as = dakhma_enthusiast } - - if = { - limit = { - employs_court_position = royal_architect_court_position - any_court_position_holder = { - has_court_position = royal_architect_court_position - is_available_healthy_ai_adult = yes - } - } - random_court_position_holder = { - limit = { - has_court_position = royal_architect_court_position - is_available_healthy_ai_adult = yes - } - save_scope_as = architect - } - } - - random_held_county = { - limit = { - faith = { religion_tag = zoroastrianism_religion } - county_control < 75 - any_county_province = { - has_holding_type = castle_holding - has_special_building_slot = no - has_special_building = no - NOR = { - has_building = tower_of_silence_01 - has_building = event_tower_of_silence_01 - } - } - } - random_county_province = { - limit = { - has_holding_type = castle_holding - has_special_building_slot = no - has_special_building = no - } - save_scope_as = dakhma_province - } - save_scope_as = dakhma_county - } - } - - option = { - name = fp3_yearly.8050.a - - flavor = fp3_cheap_architecture_flavor - - trigger = { - exists = scope:architect - } - - remove_treasury_or_gold = medium_treasury_or_gold_value - - scope:dakhma_province = { - hidden_effect = { add_special_building_slot = event_tower_of_silence_01 } - add_special_building = event_tower_of_silence_01 - } - - scope:architect = { - duel = { - skill = learning - value = average_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - send_interface_toast = { - title = building_a_dakhma.success - left_icon = scope:architect - custom_tooltip = fp3_silence_architecture_success_toast - - scope:dakhma_county = { change_county_control = 15 } - - if = { - limit = { - OR = { - faith = { religion_tag = zoroastrianism_religion } - faith = { has_doctrine_parameter = sky_burials_active } - } - } - add_piety = major_piety_gain - } - else = { - add_character_modifier = { - modifier = fp3_promoting_zoroastrianism_modifier - years = 20 - } - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - send_interface_toast = { - title = building_a_dakhma.failure - left_icon = scope:architect - custom_tooltip = fp3_silence_architecture_failure_toast - - scope:dakhma_county = { - add_county_modifier = { - modifier = fp3_bad_tower_of_silence_county_modifier - years = 20 - } - } - } - } - } - } - } - - stress_impact = { - ambitious = minor_stress_impact_loss - greedy = minor_stress_impact_loss - trusting = medium_stress_impact_loss - content = medium_stress_impact_gain - generous = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.7 - ai_boldness = 0.7 - ai_vengefulness = -0.3 - } - } - } - - option = { - name = fp3_yearly.8050.b - - remove_treasury_or_gold = major_treasury_or_gold_value - - scope:dakhma_province = { - hidden_effect = { add_special_building_slot = event_tower_of_silence_01 } - add_special_building = event_tower_of_silence_01 - } - - scope:dakhma_county = { change_county_control = 15 } - - if = { #if you're zoroastrian or like sky burials in general, you earn piety for this, otherwise you might get an opinion bonus from zoroastrian subjects - limit = { - OR = { - faith = { religion_tag = zoroastrianism_religion } - faith = { has_doctrine_parameter = sky_burials_active } - } - } - add_piety = medium_piety_gain - } - else = { - custom_tooltip = fp3_zoroastrian_courtiers_and_vassals_happy - hidden_effect = { - every_courtier_or_guest = { - if = { - limit = { - AND = { - faith = { religion_tag = zoroastrianism_religion } - ai_zeal >= low_positive_ai_value - } - } - } - add_opinion = { - target = root - opinion = 15 - modifier = fp3_built_a_dakhma_opinion - } - } - every_vassal = { - if = { - limit = { - AND = { - faith = { religion_tag = zoroastrianism_religion } - ai_zeal >= low_positive_ai_value - } - } - } - add_opinion = { - target = root - opinion = 15 - modifier = fp3_built_a_dakhma_opinion - } - } - } - } - - stress_impact = { - generous = medium_stress_impact_loss - greedy = major_stress_impact_gain - callous = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.9 - ai_compassion = 0.7 - ai_rationality = 0.3 - } - } - } - - option = { - name = fp3_yearly.8050.c - - trigger = { - NOT = { - faith = { religion_tag = zoroastrianism_religion } - } - } - - scope:dakhma_enthusiast = { - add_opinion = { - target = root - opinion = -15 - modifier = disappointed_opinion - } - } - - stress_impact = { - zealous = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - cynical = minor_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_rationality = -0.5 - ai_vengefulness = 1 - ai_zeal = 1 - } - } - } - - option = { #zoroastrian variant option, with slightly different stress gains and AI weights - name = fp3_yearly.8050.d - - trigger = { - faith = { religion_tag = zoroastrianism_religion } - } - - scope:dakhma_enthusiast = { - add_opinion = { - target = root - opinion = -15 - modifier = disappointed_opinion - } - } - - stress_impact = { - zealous = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - cynical = minor_stress_impact_loss - greedy = medium_stress_impact_loss - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -0.5 - ai_zeal = -1 - ai_greed = 1 - ai_vengefulness = 1 - } - } - } -} - - -################################## -# The Purest Fire -# By Ola Jentzsch and Lucas Ribeiro Rodrigues -################################### - -fp3_yearly.8051 = { #The Purest Fire - type = character_event - title = fp3_yearly.8051.t - desc = { - desc = fp3_yearly.8051_opening.desc - random_valid = { - desc = fp3_yearly.8051_torrential_rain - desc = fp3_yearly.8051_earthquake - desc = fp3_yearly.8051_sandstorm - desc = fp3_yearly.8051_gust_of_wind - desc = fp3_yearly.8051_islamic_zealots - desc = fp3_yearly.8051_invisible_hand - } - desc = fp3_yearly.8051_ending.desc - } - - theme = faith - - left_portrait = { - character = root - animation = personality_honorable - triggered_animation = { - trigger = { - OR = { - has_trait = ambitious - has_trait = zealous - has_trait = arrogant - } - } - animation = personality_zealous - } - } - right_portrait = { - character = scope:magi - animation = worry - } - - cooldown = { years = 5 } - - trigger = { - - #standard sanity checks - has_fp3_dlc_trigger = yes - is_ruler = yes - is_available_healthy_adult = yes - root.capital_province = { geographical_region = world_persian_empire } - faith = { religion_tag = zoroastrianism_religion } - - any_held_county = { - faith = { religion_tag = zoroastrianism_religion } - any_county_province = { - has_holding_type = church_holding - } - } - - faith.religious_head != root - - NOT = { has_character_modifier = fp3_blessed_by_fire_modifier } #this would make some of the rewards redundant - - OR = { - AND = { - exists = root.faith.religious_head - root.faith.religious_head = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value > 0 - } - } - } - AND = { - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value > 0 - } - } - } - } - } - - immediate = { - random_held_county = { - limit = { - faith = { religion_tag = zoroastrianism_religion } - any_county_province = { - has_holding_type = church_holding - } - } - } - - if = { - limit = { - exists = root.faith.religious_head - root.faith.religious_head = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value > 0 - } - } - } - root.faith.religious_head = { save_scope_as = magi } - } - else = { - cp:councillor_court_chaplain = { save_scope_as = magi } - } - } - - option = { - name = fp3_yearly.8051.a - - scope:magi = { - add_opinion = { - target = root - opinion = 20 - modifier = happy_opinion - } - } - - custom_tooltip = fp3_yearly.8051_chasing_lightning.tt - - hidden_effect = { - random_list = { - 75 = { - trigger_event = { - id = fp3_yearly.8052 - days = { 25 100 } - } - } - 25 = { - trigger_event = { - id = fp3_yearly.8053 - days = { 25 100 } - } - } - } - } - - stress_impact = { - ambitious = medium_stress_impact_loss - content = medium_stress_impact_gain - cynical = medium_stress_impact_gain - lazy = major_stress_impact_gain - } - - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.7 - ai_zeal = 1 - ai_rationality = -1 - } - } - } - - option = { - name = fp3_yearly.8051.b - - remove_short_term_gold = medium_gold_value - - add_piety = medium_piety_gain - - scope:magi = { - add_opinion = { - target = root - opinion = 10 - modifier = pleased_opinion - } - } - - stress_impact = { - ambitious = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.7 - ai_zeal = 1 - ai_rationality = -1 - } - } - } - - option = { - name = fp3_yearly.8051.c - - scope:magi = { - add_opinion = { - target = root - opinion = -15 - modifier = disappointed_opinion - } - } - - stress_impact = { - cynical = minor_stress_impact_loss - generous = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - zealous = major_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.7 - ai_rationality = 0.4 - ai_zeal = -1 - ai_energy = -0.5 - } - } - } -} - - -fp3_yearly.8052 = { - type = character_event - title = fp3_yearly.8052.t - desc = fp3_yearly.8052.desc - theme = faith - - left_portrait = { - character = root - animation = sadness - triggered_animation = { - trigger = { - OR = { - has_trait = temperate - has_trait = patient - has_trait = calm - } - } - animation = stress - } - } - - - override_background = { reference = wilderness } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - } - - option = { - name = fp3_yearly.8052.a - - flavor = fp3_give_up_the_quest.flavor - - remove_short_term_gold = medium_gold_value - - add_piety = medium_piety_gain - - stress_impact = { - base = medium_stress_gain - patient = minor_stress_impact_loss - impatient = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_zeal = 0.5 - ai_boldness = 0.5 - ai_rationality = -1 - } - } - } - - option = { - name = fp3_yearly.8052.b - - flavor = fp3_give_up_the_quest.flavor - - stress_impact = { - impatient = minor_stress_impact_loss - lazy = minor_stress_impact_loss - content = minor_stress_impact_loss - ambitious = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_zeal = 0.5 - ai_boldness = -0.5 - ai_rationality = 1 - } - } - } -} - -fp3_yearly.8053 = { - type = character_event - title = fp3_yearly.8053.t - desc = fp3_yearly.8053.desc - theme = faith - - left_portrait = { - character = root - animation = lantern - triggered_animation = { - trigger = { - OR = { - has_trait = zealous - has_trait = ambitious - has_trait = calm - } - } - animation = disbelief - } - } - - - override_background = { reference = wilderness } - - trigger = { - - is_available = yes - is_incapable = no - has_contagious_deadly_disease_trigger = no - } - - option = { - name = fp3_yearly.8053.a - - add_character_modifier = { - modifier = fp3_blessed_by_fire_modifier - years = 15 - } - - stress_impact = { - base = medium_stress_loss - zealous = minor_stress_impact_loss - humble = minor_stress_impact_loss - trusting = minor_stress_impact_loss - arrogant = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } -} - - - - - - diff --git a/events/dlc/fp3/fp3_frontier_story_cycle.txt b/events/dlc/fp3/fp3_frontier_story_cycle.txt deleted file mode 100644 index 64a492bc6..000000000 --- a/events/dlc/fp3/fp3_frontier_story_cycle.txt +++ /dev/null @@ -1,2056 +0,0 @@ -namespace = fp3_frontier_story_cycle - -fp3_frontier_story_cycle.0001 = { - type = letter_event - opening = fp3_frontier_story_cycle.0001_opening - desc = fp3_frontier_story_cycle.0001_letter - sender = scope:upset_vassal - - trigger = { - - NOR = { - has_character_flag = had_event_fp3_frontier_story_cycle.0001 - has_character_flag = had_event_fp3_frontier_story_cycle.0002 - } - - exists = scope:story.var:upset_vassal - - exists = scope:story.var:turkic_leader - - scope:story = { - var:upset_vassal = { - is_alive = yes - is_imprisoned = no - NOT = { - has_trait = forgiving - } - } - } - } - - immediate = { - - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0001 - } - scope:story = { - var:upset_vassal = { - save_scope_as = upset_vassal - } - var:turkic_leader = { - save_scope_as = turkic_leader - } - } - } - - option = { - name = fp3_frontier_story_cycle.0001.a - - custom_tooltip = children_arriving_shortly.tt - - trigger_event = { - id = fp3_frontier_story_cycle.0004 - days = { 5 30 } - } - } -} - -fp3_frontier_story_cycle.0002 = { - type = letter_event - opening = fp3_frontier_story_cycle.0002_opening - desc = fp3_frontier_story_cycle.0002_letter - sender = scope:upset_vassal - - trigger = { - - NOT = { has_character_flag = had_event_fp3_frontier_story_cycle.0002 } - - - exists = scope:story.var:upset_vassal - - exists = scope:story.var:nomads_county - - scope:story = { - var:upset_vassal = { - is_alive = yes - is_imprisoned = no - is_vassal_of = root - NOT = { has_relation_rival = root } - OR = { - ai_vengefulness < medium_positive_ai_value - has_trait = craven - has_trait = forgiving - root = { - has_dread_level_towards = { - target = scope:story.var:upset_vassal - level = 2 - } - } - } - } - var:nomads_county = { - NOT = { has_county_modifier = fp3_nomad_friction_county_modifier } - } - } - } - - immediate = { - - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0002 - } - scope:story = { - var:upset_vassal = { - save_scope_as = upset_vassal - } - var:nomads_county = { - save_scope_as = nomads_county - } - } - - scope:upset_vassal = { - pay_short_term_gold = { - gold = 50 - target = root - } - } - } - - option = { - name = fp3_frontier_story_cycle.0002.a - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - stress_impact = { - forgiving = medium_stress_impact_loss - vengeful = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -1 - ai_honor = 0.7 - ai_greed = 0.5 - ai_compassion = 0.7 - } - } - } - - - option = { - name = fp3_frontier_story_cycle.0002.b - - pay_short_term_gold = { - gold = 50 - target = scope:upset_vassal - } - - add_dread = minor_dread_gain - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = -20 - modifier = scared_opinion - } - } - - stress_impact = { - vengeful = medium_stress_impact_loss - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_greed = -0.5 - ai_compassion = -0.5 - } - } - } -} - -fp3_frontier_story_cycle.0003 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0003.t - desc = { - desc = fp3_frontier_story_cycle.0003_beginning - first_valid = { - triggered_desc = { - trigger = { - has_religion = religion:islam_religion - } - desc = fp3_frontier_story_cycle.0003_jizya - } - desc = fp3_frontier_story_cycle.0003_not_jizya - } - desc = fp3_frontier_story_cycle.0003_ending - } - - theme = vassal - left_portrait = { - character = scope:turkic_leader - animation = dismissal - } - right_portrait = { - character = scope:greedy_chaplain - animation = personality_dishonorable - triggered_animation = { - trigger = { - ai_greed > medium_positive_ai_value - } - animation = personality_greedy - } - } - lower_left_portrait = { - character = root - } - - trigger = { - #standard checks - is_available_adult = yes - NOT = { has_character_flag = had_event_fp3_frontier_story_cycle.0003 } - #event fluff triggers - faith = { - NOR = { - has_doctrine_parameter = unreformed - has_doctrine = pagan_hostility_doctrine - } - } - any_held_title = { is_head_of_faith = no } - exists = scope:story.var:turkic_leader - exists = scope:story.var:nomads_new_county - exists = cp:councillor_court_chaplain - cp:councillor_court_chaplain = { - NOT = { has_trait = generous } - is_ai = yes - } - } - - immediate = { - cp:councillor_court_chaplain = { save_scope_as = greedy_chaplain } - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0003 - } - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - var:nomads_new_county = { - save_scope_as = nomads_new_county - } - } - } - - option = { - name = fp3_frontier_story_cycle.0003.a - trigger = { - OR = { - has_trait = greedy - has_trait = arbitrary - gold < 0 - } - } - if = { - limit = { - faith = { has_doctrine = doctrine_theocracy_temporal } - } - add_treasury_or_gold = medium_treasury_or_gold_value - scope:greedy_chaplain = { add_treasury_or_gold = major_treasury_or_gold_value } - } - else = { add_treasury_or_gold = major_treasury_or_gold_value } - if = { - limit = { - scope:turkic_leader = { - NOT = { - has_relation_rival = root - has_relation_nemesis = root - } - } - } - root = { - progress_towards_rival_effect = { - CHARACTER = scope:turkic_leader - REASON = rival_brutal_taxation - OPINION = -20 - } - } - } - else = { - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -40 - modifier = hate_opinion - } - } - } - scope:nomads_new_county = { - add_county_modifier = { - modifier = fp3_resentful_nomads_county_modifier - years = 20 - } - } - stress_impact = { - generous = medium_stress_impact_gain - just = medium_stress_impact_gain - humble = medium_stress_impact_gain - arrogant = minor_stress_impact_loss - greedy = major_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_boldness = 1 - ai_greed = 1 - ai_compassion = -0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0003.b - - if = { - limit = { - faith = { has_doctrine = doctrine_theocracy_temporal } - } - add_treasury_or_gold = minor_treasury_or_gold_value - scope:greedy_chaplain = { add_treasury_or_gold = medium_treasury_or_gold_value } - } - else = { add_treasury_or_gold = medium_treasury_or_gold_value } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -20 - modifier = fp3_resentful_opinion - } - } - - random = { - chance = 50 - send_interface_toast = { - left_icon = root - right_icon = scope:turkic_leader - title = resentful_nomads.toast - - scope:nomads_new_county = { - add_county_modifier = { - modifier = fp3_resentful_nomads_county_modifier - years = 20 - } - } - } - } - - stress_impact = { - generous = medium_stress_impact_gain - just = minor_stress_impact_gain - cynical = minor_stress_impact_gain - arbitrary = minor_stress_impact_loss - greedy = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_greed = 1 - ai_compassion = -0.3 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0003.c - - - scope:greedy_chaplain = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - add_hook = { - type = favor_hook - target = scope:turkic_leader - } - - stress_impact = { - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.7 - ai_rationality = 1 - ai_compassion = 0.5 - } - } - } -} - - -fp3_frontier_story_cycle.0004 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0004.t - desc = fp3_frontier_story_cycle.0004.desc - theme = bastardy - left_portrait = { - character = scope:orphan_girl - animation = worry - } - right_portrait = { - character = scope:orphan_boy - animation = sick - } - lower_left_portrait = { - character = root - } - lower_center_portrait = { - character = scope:upset_vassal - } - lower_right_portrait = { - character = scope:turkic_leader - } - - trigger = { - - #event fluff triggers - - exists = scope:story.var:turkic_leader - - exists = scope:story.var:upset_vassal - } - - immediate = { - - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - var:upset_vassal = { - save_scope_as = upset_vassal - } - } - - create_character = { - age = { 35 40 } - gender = male - dynasty = none - faith = scope:upset_vassal.faith - culture = scope:upset_vassal.culture - location = scope:upset_vassal.capital_province - template = peasant_character - save_scope_as = orphan_baby_daddy - - after_creation = { - death = { - death_reason = death_starved - } - } - } - - create_character = { - age = { 30 33 } - gender = female - dynasty = none - faith = scope:upset_vassal.faith - culture = scope:upset_vassal.culture - location = scope:upset_vassal.capital_province - template = peasant_character - save_scope_as = orphan_baby_momma - - after_creation = { - death = { - death_reason = death_starved - } - } - } - - create_character = { - age = { 11 13 } - gender = female - dynasty = none - father = scope:orphan_baby_daddy - mother = scope:orphan_baby_momma - faith = scope:upset_vassal.faith - culture = scope:upset_vassal.culture - location = root.capital_province - template = fp3_adorable_orphan - save_scope_as = orphan_girl - } - - create_character = { - age = { 6 8 } - gender = male - dynasty = none - father = scope:orphan_baby_daddy - mother = scope:orphan_baby_momma - faith = scope:upset_vassal.faith - culture = scope:upset_vassal.culture - location = root.capital_province - template = fp3_adorable_orphan - save_scope_as = orphan_boy - - after_creation = { - increase_wounds_effect = { REASON = attacked } - } - } - } - - option = { - name = fp3_frontier_story_cycle.0004.a - flavor = fp3_pay_for_upkeep_flavor - - add_courtier = scope:orphan_girl - add_courtier = scope:orphan_boy - - remove_short_term_gold = minor_gold_value - - hidden_effect = { - reverse_add_opinion = { - target = scope:orphan_girl - modifier = grateful_opinion - opinion = 30 - } - add_hook = { - target = scope:orphan_girl - type = loyalty_hook - } - reverse_add_opinion = { - target = scope:orphan_boy - modifier = grateful_opinion - opinion = 30 - } - add_hook = { - target = scope:orphan_boy - type = loyalty_hook - } - } - - if = { - limit = { - faith = { - OR = { - trait_is_virtue = compassionate - trait_is_virtue = generous - } - } - } - add_piety = medium_piety_gain - } - else = { - add_prestige = minor_prestige_gain - } - - stress_impact = { - ambitious = minor_stress_impact_loss #You can mold them to awesomeness - compassionate = massive_stress_impact_loss #Yay, a kid! - gregarious = medium_stress_impact_loss #The more the merrier! - arrogant = medium_stress_impact_gain #why would I? - callous = major_stress_impact_gain #ew, no - paranoid = major_stress_impact_gain #wat, no more strangers in my court - } - ai_chance = { - base = 30 - modifier = { - add = 50 - has_trait = generous - } - modifier = { - add = 50 - has_trait = compassionate - } - modifier = { #Weight down for stress. - add = -20 - has_trait = paranoid - } - modifier = { - add = -100 - has_trait = callous - } - modifier = { - add = -100 - has_trait = arrogant - } - } - } - - option = { - name = fp3_frontier_story_cycle.0004.b - - #One shiny new child for you! - scope:turkic_leader = { - if = { - limit = { is_female = yes } - scope:orphan_girl = { set_mother = scope:turkic_leader } - scope:orphan_boy = { set_mother = scope:turkic_leader } - } - else = { - scope:orphan_girl = { set_father = scope:turkic_leader } - scope:orphan_boy = { set_father = scope:turkic_leader } - } - } - - if = { - limit = { - scope:turkic_leader = { - OR = { - has_relation_friend = root - ai_boldness < low_positive_ai_value - ai_compassion > medium_positive_ai_value - } - } - } - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -20 - modifier = unfair_expectations_opinion - } - } - } - else = { - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -40 - modifier = fp3_unjust_burden_opinion - } - } - } - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - hidden_effect = { - #We take care of the sundries in a hidden effect so as not to put too much into the tooltip. - scope:orphan_girl = { - set_house = scope:turkic_leader.house - add_trait = disputed_heritage - } - scope:orphan_boy = { - set_house = scope:turkic_leader.house - add_trait = disputed_heritage - } - add_courtier = scope:orphan_girl - add_courtier = scope:orphan_boy - - #And they're pretty happy about being stepping up in life. - reverse_add_opinion = { - target = scope:orphan_girl - modifier = grateful_opinion - opinion = 30 - } - reverse_add_opinion = { - target = scope:orphan_boy - modifier = grateful_opinion - opinion = 30 - } - scope:turkic_leader = { - every_consort = { - custom = custom.every_opposite_sex_consort - limit = { - sex_opposite_of = scope:turkic_leader - } - add_opinion = { - modifier = ep1_disagreed_with_lowborn_adoption_opinion - target = scope:turkic_leader - opinion = -60 - } - } - } - } - - - stress_impact = { - vengeful = minor_stress_impact_loss - lazy = medium_stress_impact_loss - just = medium_stress_impact_loss #the accusations might be true, after all? - trusting = medium_stress_impact_gain - craven = minor_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { #Weight up for stress. - add = 20 - has_trait = just - } - modifier = { - add = 50 - has_trait = craven - } - modifier = { #Weight down for stress. - add = -20 - has_trait = trusting - } - modifier = { #We favour the other trait specific options for callous & sadistic - add = -100 - has_trait = callous - } - } - } - - option = { - name = fp3_frontier_story_cycle.0004.c - flavor = fp3_pay_for_upkeep_flavor - - - trigger = { - OR = { - faith = { - has_doctrine = tenet_monasticism - } - has_religion = religion:buddhism_religion #far from all buddhist religions have monastics, but this option would still make sense - } - } - - remove_short_term_gold = minor_gold_value - - if = { - limit = { - faith = { - OR = { - trait_is_virtue = compassionate - trait_is_virtue = generous - } - } - } - add_piety = major_piety_gain - } - else = { - add_prestige = medium_piety_gain - } - - scope:orphan_girl = { - select_and_move_to_pool_effect = yes - add_trait = devoted - } - scope:orphan_boy = { - select_and_move_to_pool_effect = yes - add_trait = devoted - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.9 - ai_rationality = 0.5 - ai_compassion = -0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0004.d - - if = { - limit = { - faith = { - OR = { - trait_is_virtue = compassionate - trait_is_virtue = generous - } - } - } - add_piety = minor_piety_loss - } - - scope:orphan_girl = { - select_and_move_to_pool_effect = yes - } - scope:orphan_boy = { - select_and_move_to_pool_effect = yes - } - - stress_impact = { #many chances for stress loss here, to make this "opting out" option potentially more worthwile - compassionate = major_stress_impact_gain - generous = major_stress_impact_gain - callous = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - cynical = medium_stress_impact_loss - lazy = medium_stress_impact_loss - paranoid = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.3 - ai_compassion = -0.9 - } - } - } -} - - -fp3_frontier_story_cycle.0005 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0005.t - desc = fp3_frontier_story_cycle.0005.desc - theme = war - left_portrait = { - character = scope:turkic_leader - animation = war_over_loss - triggered_animation = { - trigger = { - ai_boldness > medium_positive_ai_value - } - animation = personality_bold - } - } - right_portrait = { - character = root - animation = stress - triggered_animation = { - trigger = { - OR = { - has_trait = brave - has_trait = wrathful - has_trait = vengeful - has_trait = organizer - has_trait = strategist - } - } - animation = scheme - } - } - - - trigger = { - - #event fluff triggers - - NOT = { has_character_flag = had_event_fp3_frontier_story_cycle.0005 } - - exists = scope:story.var:turkic_leader - - NOT = { - scope:story.var:turkic_leader = { has_hook = root } - } - - is_at_war = yes - } - - immediate = { - - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0005 - } - - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - } - } - - option = { - name = fp3_frontier_story_cycle.0005.a - - scope:turkic_leader = { - add_hook = { - type = favor_hook - target = root - } - } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - spawn_army = { - men_at_arms = { - type = horse_archers - stacks = 2 - } - location = root.capital_province - war_keep_on_attacker_victory = no - uses_supply = yes - inheritable = no - save_scope_as = new_horsemen_army - name = turkic_tribal_event_troops - } - - stress_impact = { - craven = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.7 - ai_sociability = 0.2 - ai_vengefulness = -0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0005.b - - trigger = { - OR = { - has_trait = arrogant - has_trait = callous - has_trait = wrathful - has_trait = stubborn - } - } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -40 - modifier = hurt_opinion - } - } - - stress_impact = { - humble = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - calm = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0005.c - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - stress_impact = { - ambitious = medium_stress_impact_gain - craven = medium_stress_impact_gain - trusting = medium_stress_impact_gain - paranoid = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } -} - -scripted_trigger suitable_one_eyed_child_trigger = { - NOT = { has_trait = wounded_3 } - OR = { - has_trait = rowdy - has_trait = curious - } - age >= 6 - is_adult = no - is_courtier_of = root - is_available = yes - NOR = { - has_trait = blind - has_trait = one_eyed - } -} - -fp3_frontier_story_cycle.0006 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0006.t - desc = { - desc = fp3_frontier_story_cycle.0006_beginning - first_valid = { - triggered_desc = { - trigger = { - exists = scope:scoped_physician - } - desc = fp3_frontier_story_cycle.0006_has_court_physician - } - desc = fp3_frontier_story_cycle.0006_no_court_physician - } - desc = fp3_frontier_story_cycle.0006_ending - } - theme = family - left_portrait = { - character = scope:turkic_leader - animation = beg - triggered_animation = { - trigger = { - ai_boldness > medium_positive_ai_value - } - animation = worry - } - } - right_portrait = { - character = scope:one_eyed_child - animation = sadness - triggered_animation = { - trigger = { - ai_vengefulness > medium_positive_ai_value - } - animation = personality_vengeful - } - } - lower_left_portrait = root - - lower_right_portrait = scope:scoped_physician #this is your court physician if you have one - - - trigger = { - - #event fluff triggers - - NOT = { has_character_flag = had_event_fp3_frontier_story_cycle.0006 } - - exists = scope:story.var:turkic_leader - - any_close_family_member = { suitable_one_eyed_child_trigger = yes } - } - - immediate = { - - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0006 - } - - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - } - - random_close_family_member = { - limit = { - suitable_one_eyed_child_trigger = yes - is_primary_heir_of = root - } - alternative_limit = { - suitable_one_eyed_child_trigger = yes - is_child_of = root - } - alternative_limit = { - suitable_one_eyed_child_trigger = yes - } - save_scope_as = one_eyed_child - } - - scope:one_eyed_child = { - increase_wounds_effect = { REASON = archery_accident } - add_trait = one_eyed - add_character_flag = { flag = had_event_fp3_frontier_story_cycle.0006 } #this is to make sure that the child cannot trigger this event themselves in the unlikely case that they become the story_owner of the same story cycle in the future, since it'd feel too weird - } - - if = { #if you have a court physician, he has a stake in this! - limit = { - court_physician_available_trigger = yes - } - save_court_physician_as_effect = { SCOPE_NAME = scoped_physician } - } - } - - option = { - name = fp3_frontier_story_cycle.0006.a - - add_dread = medium_dread_gain - - scope:turkic_leader = { - imprison_character_effect = { - TARGET = this - IMPRISONER = root - } - } - - if = { - limit = { - scope:one_eyed_child = { - ai_vengefulness > low_positive_ai_value - } - } - scope:one_eyed_child = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - if = { - limit = { - NOT = { has_trait = vengeful } - number_of_personality_traits < personality_trait_limit - root = { is_ai = no } - } - random = { - chance = 25 - add_trait = vengeful - } - } - } - } - else = { - scope:one_eyed_child = { - add_opinion = { - target = root - opinion = -10 - modifier = fp3_mildly_terrified_opinion - } - } - } - - stress_impact = { - vengeful = medium_stress_impact_loss - wrathful = medium_stress_impact_loss - forgiving = major_stress_impact_gain - calm = minor_stress_impact_gain - trusting = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - ai_rationality = 0.2 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0006.b - - add_prestige = medium_prestige_gain - - add_character_modifier = { - modifier = fp3_banning_archery_modifier - } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - if = { - limit = { exists = scope:scoped_physician } - scope:scoped_physician = { - add_opinion = { - target = root - opinion = 30 - modifier = took_my_advice_opinion - } - } - } - - if = { - limit = { - scope:one_eyed_child = { - ai_vengefulness > medium_positive_ai_value - } - } - scope:one_eyed_child = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - if = { - limit = { - NOT = { has_trait = vengeful } - number_of_personality_traits < personality_trait_limit - root = { is_ai = no } - } - random = { - chance = 25 - add_trait = vengeful - } - } - } - } - else = { - scope:one_eyed_child = { - add_opinion = { - target = root - opinion = 20 - modifier = relieved_opinion - } - } - } - - stress_impact = { - ambitious = medium_stress_impact_gain - craven = medium_stress_impact_gain - trusting = medium_stress_impact_gain - paranoid = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0006.c - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - if = { - limit = { - scope:one_eyed_child = { - ai_vengefulness > medium_positive_ai_value - } - } - scope:one_eyed_child = { - add_opinion = { - target = scope:turkic_leader - opinion = -30 - modifier = hate_opinion - } - add_opinion = { - target = root - opinion = -20 - modifier = hurt_opinion - } - if = { - limit = { - NOT = { has_trait = vengeful } - number_of_personality_traits < personality_trait_limit - root = { is_ai = no } - } - random = { - chance = 50 - add_trait = vengeful - } - } - } - } - else = { - scope:one_eyed_child = { - add_opinion = { - target = root - opinion = -10 - modifier = neglected_opinion - } - } - } - - stress_impact = { - humble = medium_stress_impact_loss - vengeful = major_stress_impact_gain - wrathful = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - cynical = minor_stress_impact_gain - - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 0.5 - ai_compassion = 0.5 - } - } - } -} - -scripted_trigger suitable_turk_rival_councillor_trigger = { - is_ai = yes - NOT = { - has_trait = craven - } - opinion = { - target = scope:story.var:turkic_leader - value < 0 - } -} - -scripted_trigger bandit_infested_county_trigger = { - NOR = { - has_county_modifier = fp3_nomad_friction_county_modifier - has_county_modifier = fp3_vengeful_nomads_county_modifier - this = scope:story.var:nomads_new_county - } -} - - -fp3_frontier_story_cycle.0007 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0007.t - desc = fp3_frontier_story_cycle.0007.desc - theme = realm - left_portrait = { - character = scope:turkic_leader - animation = personality_bold - triggered_animation = { - trigger = { - ai_greed > medium_positive_ai_value - } - animation = personality_callous - } - } - right_portrait = { - character = scope:warmonger_councillor - animation = personality_bold - triggered_animation = { - trigger = { - OR = { - has_trait = paranoid - has_trait = wrathful - has_trait = vengeful - has_trait = organizer - has_trait = strategist - } - } - animation = disapproval - } - } - - trigger = { - - #event fluff triggers - - NOT = { has_character_flag = had_event_fp3_frontier_story_cycle.0007 } - - exists = scope:story.var:turkic_leader - - scope:story.var:turkic_leader = { - NOR = { - has_trait = content - has_trait = lazy - } - } - - any_councillor = { suitable_turk_rival_councillor_trigger = yes } - - any_held_county = { bandit_infested_county_trigger = yes } - } - - immediate = { - - add_character_flag = { - flag = had_event_fp3_frontier_story_cycle.0007 - } - - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - } - - random_councillor = { - limit = { - suitable_turk_rival_councillor_trigger = yes - has_council_position = councillor_marshal - } - alternative_limit = { - suitable_turk_rival_councillor_trigger = yes - has_lifestyle = martial_lifestyle - } - alternative_limit = { - suitable_turk_rival_councillor_trigger = yes - OR = { - has_trait = ambitious - ai_boldness >= high_positive_ai_value - } - } - alternative_limit = { - suitable_turk_rival_councillor_trigger = yes - opinion = { - target = scope:turkic_leader - value < -25 - } - } - alternative_limit = { suitable_turk_rival_councillor_trigger = yes } - save_scope_as = warmonger_councillor - } - - random_held_county = { - limit = { #finding the most suitable county for the story! - bandit_infested_county_trigger = yes - has_county_corruption_trigger = yes - } - alternative_limit = { - bandit_infested_county_trigger = yes - county_control < medium_county_control - } - alternative_limit = { - bandit_infested_county_trigger = yes - county_control < full_county_control - any_county_province = { geographical_region = dlc_fp3_eastern_persian_frontier_regions } - } - alternative_limit = { - bandit_infested_county_trigger = yes - any_county_province = { geographical_region = dlc_fp3_eastern_persian_frontier_regions } - } - alternative_limit = { - bandit_infested_county_trigger = yes - county_control < full_county_control - } - alternative_limit = { - bandit_infested_county_trigger = yes - } - save_scope_as = bandits_county - } - - scope:bandits_county = { - add_county_modifier = { - modifier = fp3_nomad_attacks_county_modifier - years = 20 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0007.a - - scope:bandits_county = { - add_county_modifier = { - modifier = fp3_nomad_friction_county_modifier - years = 30 - } - } - - scope:bandits_county = { - remove_county_modifier = fp3_nomad_attacks_county_modifier - add_county_modifier = { - modifier = fp3_silk_road_secure_county_modifier - years = 40 - } - } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = 30 - modifier = fp3_supports_my_tribe_opinion - } - } - - scope:warmonger_councillor = { - add_opinion = { - target = root - opinion = -20 - modifier = ignored_opinion - } - } - - stress_impact = { - ambitious = medium_stress_impact_loss - content = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.6 - ai_boldness = 1 - ai_compassion = -0.2 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0007.b - - scope:warmonger_councillor = { - add_opinion = { - target = root - opinion = 20 - modifier = trusted_me_opinion - } - } - - scope:turkic_leader = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - - scope:warmonger_councillor = { - duel = { - skill = martial - value = high_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - custom_tooltip = fp3_investigating_attacks_successful - send_interface_toast = { - title = fp3_investigating_attacks_toast_successful - left_icon = scope:warmonger_councillor - - scope:bandits_county = { - remove_county_modifier = fp3_nomad_attacks_county_modifier - } - - scope:warmonger_councillor = { - add_martial_skill = 1 - add_intrigue_skill = 1 - } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - custom_tooltip = fp3_investigating_attacks_dismal_failure - send_interface_toast = { - title = fp3_investigating_attacks_toast_dismal_failure - left_icon = scope:possibly_capable_marshal - - scope:warmonger_councillor = { - add_character_modifier = { - modifier = fp3_crushed_by_failure_modifier - years = 20 - } - } - } - } - } - } - } - - stress_impact = { - trusting = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -0.5 - ai_compassion = 0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0007.c - - random = { - chance = 25 - send_interface_toast = { - left_icon = root - title = attacks_abated.toast - - scope:bandits_county = { - remove_county_modifier = fp3_nomad_attacks_county_modifier - } - } - } - - stress_impact = { - content = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - just = medium_stress_impact_gain - impatient = medium_stress_impact_gain - diligent = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - - -fp3_frontier_story_cycle.0099 = { #Nomads story cycle - type = character_event - title = fp3_frontier_story_cycle.0099.t - desc = fp3_frontier_story_cycle.0099.desc - theme = realm - left_portrait = { - character = scope:turkic_leader - animation = marshal - triggered_animation = { - trigger = { - ai_greed > medium_positive_ai_value - } - animation = schadenfreude - } - } - right_portrait = { - character = root - animation = personality_rational - triggered_animation = { - trigger = { - OR = { - has_trait = paranoid - has_trait = craven - has_trait = shy - } - } - animation = disbelief - } - triggered_animation = { - trigger = { - OR = { - has_trait = greedy - has_trait = stubborn - has_trait = callous - } - } - animation = personality_cynical - } - } - - trigger = { - - exists = scope:story.var:turkic_leader - - scope:story.var:turkic_leader = { is_landed = no } - - has_character_flag = turkic_tribe_story_end - - any_held_title = { - title_tier = county - is_landless_type_title = no - this != root.capital_county - } - - domain_size > 4 - } - - immediate = { - - scope:story = { - var:turkic_leader = { - save_scope_as = turkic_leader - } - } - - random_held_title = { - title_tier = county - limit = { - is_landless_type_title = no - this != root.capital_county - has_county_modifier = fp3_nomad_friction_county_modifier - } - alternative_limit = { - is_landless_type_title = no - this != root.capital_county - development_level <= bad_development_level - } - alternative_limit = { - is_landless_type_title = no - this != root.capital_county - development_level <= medium_development_level - } - alternative_limit = { - is_landless_type_title = no - this != root.capital_county - } - save_scope_as = title_to_grant - } - - if = { - limit = { - any_held_title = { - title_tier = county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - } - } - } - random_held_title = { - title_tier = county - limit = { - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - } - has_county_modifier = fp3_nomad_friction_county_modifier - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - } - development_level <= bad_development_level - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - } - development_level <= medium_development_level - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - } - } - save_scope_as = extra_title_to_grant - } - } - - if = { - limit = { - any_held_title = { - title_tier = county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - this = scope:extra_title_to_grant - } - } - } - random_held_title = { - title_tier = county - limit = { - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - this = scope:extra_title_to_grant - } - has_county_modifier = fp3_nomad_friction_county_modifier - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - this = scope:extra_title_to_grant - } - development_level <= bad_development_level - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - this = scope:extra_title_to_grant - } - development_level <= medium_development_level - } - alternative_limit = { - tier = tier_county - is_landless_type_title = no - NOR = { - this = root.capital_county - this = scope:title_to_grant - this = scope:extra_title_to_grant - } - } - save_scope_as = extra_extra_title_to_grant - } - } - } - - option = { - name = fp3_frontier_story_cycle.0099.a - - dynasty = { - add_dynasty_modifier = { - modifier = fp3_nomad_recruits_modifier - years = 150 - } - } - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - } - scope:title_to_grant = { - change_title_holder = { - holder = scope:turkic_leader - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - if = { - limit = { - NOT = { has_relation_friend = scope:turkic_leader } - } - progress_towards_friend_effect = { - REASON = friend_landed - CHARACTER = scope:turkic_leader - OPINION = default_friend_opinion - } - } - else = { - scope:turkic_leader = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 30 - } - } - } - stress_impact = { - generous = major_stress_impact_loss - trusting = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - greedy = massive_stress_impact_gain - } - - ai_chance = { - base = 100 #the dynasty modifier is intended to be pretty good, so the AI could feasibly do this - ai_value_modifier = { - ai_greed = -1 - ai_vengefulness = -0.5 - ai_rationality = 0.5 - ai_boldness = 0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0099.b - - trigger = { - exists = scope:extra_title_to_grant - } - - dynasty = { - add_dynasty_modifier = { - modifier = fp3_nomad_recruits_modifier - years = 150 - } - } - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - } - scope:extra_title_to_grant = { - change_title_holder = { - holder = scope:turkic_leader - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - if = { - limit = { - NOT = { has_relation_friend = scope:turkic_leader } - } - progress_towards_friend_effect = { - REASON = friend_landed - CHARACTER = scope:turkic_leader - OPINION = default_friend_opinion - } - } - else = { - scope:turkic_leader = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 30 - } - } - } - stress_impact = { - generous = major_stress_impact_loss - trusting = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - greedy = massive_stress_impact_gain - } - - ai_chance = { - base = 100 #the dynasty modifier is intended to be pretty good, so the AI could feasibly do this - ai_value_modifier = { - ai_greed = -1 - ai_vengefulness = -0.5 - ai_rationality = 0.5 - ai_boldness = 0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0099.c - - trigger = { - exists = scope:extra_extra_title_to_grant - } - - dynasty = { - add_dynasty_modifier = { - modifier = fp3_nomad_recruits_modifier - years = 150 - } - } - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - } - scope:extra_extra_title_to_grant = { - change_title_holder = { - holder = scope:turkic_leader - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - if = { - limit = { - NOT = { has_relation_friend = scope:turkic_leader } - } - progress_towards_friend_effect = { - REASON = friend_landed - CHARACTER = scope:turkic_leader - OPINION = default_friend_opinion - } - } - else = { - scope:turkic_leader = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 30 - } - } - } - stress_impact = { - generous = major_stress_impact_loss - trusting = medium_stress_impact_loss - arrogant = medium_stress_impact_gain - greedy = massive_stress_impact_gain - } - - ai_chance = { - base = 100 #the dynasty modifier is intended to be pretty good, so the AI could feasibly do this - ai_value_modifier = { - ai_greed = -1 - ai_vengefulness = -0.5 - ai_rationality = 0.5 - ai_boldness = 0.5 - } - } - } - - option = { - name = fp3_frontier_story_cycle.0099.d - - scope:turkic_leader = { - add_opinion = { - target = root - modifier = spurned_opinion - opinion = -40 - } - } - - if = { - limit = { is_ai = yes } - scope:turkic_leader = { - silent_disappearance_effect = yes - } - } - else = { - scope:turkic_leader = { - select_and_move_to_pool_effect = yes - } - } - - every_sub_realm_county = { - if = { - limit = { has_county_modifier = fp3_nomad_friction_county_modifier } - remove_county_modifier = fp3_nomad_friction_county_modifier - } - } - - every_sub_realm_county = { - if = { - limit = { has_county_modifier = fp3_vengeful_nomads_county_modifier } - remove_county_modifier = fp3_vengeful_nomads_county_modifier - } - } - - stress_impact = { - stubborn = medium_stress_impact_loss - trusting = medium_stress_impact_gain - generous = medium_stress_impact_gain - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 100 #the dynasty modifier is intended to be pretty good, so the AI could feasibly do this - ai_value_modifier = { - ai_greed = 1 - ai_sociability = -0.5 - ai_boldness = 0.5 - } - } - } -} - - - diff --git a/events/dlc/fp3/fp3_heritage_events.txt b/events/dlc/fp3/fp3_heritage_events.txt index 8eaf2ba03..c9de81860 100644 --- a/events/dlc/fp3/fp3_heritage_events.txt +++ b/events/dlc/fp3/fp3_heritage_events.txt @@ -29,7 +29,7 @@ scripted_trigger fp3_hateful_ruler_trigger = { NOR = { target_is_liege_or_above = root faith = { has_doctrine = special_doctrine_is_gnostic_faith } - faith = { has_doctrine = doctrine_pluralism_pluralistic } + rite = { rite_has_doctrine = doctrine_pluralism_pluralistic } has_trait = compassionate has_trait = forgiving } @@ -40,7 +40,7 @@ scripted_trigger fp3_hateful_ruler_trigger = { has_trait = zealous has_trait = sadistic has_trait = paranoid - faith = { has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } } } @@ -145,13 +145,13 @@ fp3_yearly.8019 = { factor = 70 any_county_province = { barony = { - is_holy_site_of = faith:manichean #This will typically be Samarkand + is_holy_site_of = faith:manichaean_faith #This will typically be Samarkand } } } modifier = { factor = 50 - faith = faith:manichean + faith = faith:manichaean_faith } modifier = { factor = 50 @@ -176,13 +176,13 @@ fp3_yearly.8019 = { gender_female_chance = { if = { limit = { - faith:manichean = { has_doctrine = doctrine_gender_male_dominated } + faith:manichaean_faith = { main_rite = { rite_has_doctrine = doctrine_gender_male_dominated } } } add = 0 } else_if = { limit = { - faith:manichean = { has_doctrine = doctrine_gender_female_dominated } + faith:manichaean_faith = { main_rite = { rite_has_doctrine = doctrine_gender_female_dominated } } } add = 100 } @@ -238,7 +238,7 @@ fp3_yearly.8019 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -249,14 +249,12 @@ fp3_yearly.8019 = { name = fp3_yearly.8019.b trigger = { - faith = { - AND = { - OR = { - has_doctrine = tenet_tax_nonbelievers - has_doctrine = special_doctrine_jizya - } - NOT = { has_doctrine = special_doctrine_is_gnostic_faith } + AND = { + OR = { + rite = { rite_has_tenet = tenet_tax_nonbelievers } + faith = { has_doctrine = special_doctrine_jizya } } + faith = { NOT = { has_doctrine = special_doctrine_is_gnostic_faith } } } } @@ -291,7 +289,7 @@ fp3_yearly.8019 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -320,7 +318,7 @@ fp3_yearly.8019 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_gain compassionate = minor_stress_impact_gain generous = major_stress_impact_gain @@ -345,7 +343,7 @@ scripted_trigger fp3_zealous_caliph_trigger = { is_ai = yes NOR = { is_vassal_of = root - faith = { has_doctrine = doctrine_pluralism_pluralistic } + rite = { rite_has_doctrine = doctrine_pluralism_pluralistic } has_trait = compassionate has_trait = forgiving } @@ -357,7 +355,7 @@ scripted_trigger fp3_zealous_caliph_trigger = { has_trait = zealous has_trait = sadistic has_trait = paranoid - faith = { has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } } } @@ -432,7 +430,7 @@ fp3_yearly.8020 = { has_game_rule = default_gender_equality #this triggers an error. Suspected code issue. NOT = { - faith = { has_doctrine = doctrine_gender_female_dominated } + rite = { rite_has_doctrine = doctrine_gender_female_dominated } } #checking for approppriate county @@ -453,9 +451,9 @@ fp3_yearly.8020 = { root.faith.religious_head = { fp3_zealous_caliph_trigger = yes #checking that his Islam hasn't been reformed into something that'd make the event's premise weird - faith = { + rite = { NOT = { - has_doctrine = doctrine_gender_female_dominated + rite_has_doctrine = doctrine_gender_female_dominated } } } @@ -493,9 +491,9 @@ fp3_yearly.8020 = { if = { limit = { fp3_zealous_caliph_trigger = yes - faith = { + rite = { NOT = { - has_doctrine = doctrine_gender_female_dominated + rite_has_doctrine = doctrine_gender_female_dominated } } } @@ -604,7 +602,11 @@ fp3_yearly.8020 = { opinion = 20 } } - else = { + else_if = { + limit = { + matching_gender_and_sexuality_with_trigger = { CHARACTER = root } + likely_to_commit_incest_with_trigger = { CHARACTER_1 = root CHARACTER_2 = scope:pious_woman } + } root = { progress_towards_lover_effect = { CHARACTER = scope:pious_woman @@ -623,7 +625,7 @@ fp3_yearly.8020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = major_stress_impact_gain shy = medium_stress_impact_gain zealous = major_stress_impact_gain @@ -669,7 +671,7 @@ fp3_yearly.8020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss cynical = medium_stress_impact_gain zealous = major_stress_impact_gain @@ -734,7 +736,7 @@ fp3_yearly.8020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss compassionate = medium_stress_impact_gain content = medium_stress_impact_gain @@ -772,12 +774,11 @@ scripted_trigger fp3_not_super_relevant_yet_suitable_person_trigger = { } NAND = { is_female = yes - root.faith = { #this is basically checking for Islam, but in a more emergent way. In medieval Islam, it wouldn't generally make sense for a noble woman to work together with a man in the way this event presupposes. - AND = { - has_doctrine = doctrine_gender_male_dominated - has_doctrine = doctrine_polygamy - } - } + #this is basically checking for Islam, but in a more emergent way. In medieval Islam, it wouldn't generally make sense for a noble woman to work together with a man in the way this event presupposes. + root.rite = { + rite_has_doctrine = doctrine_gender_male_dominated + rite_has_doctrine = doctrine_polygamy + } } } @@ -918,6 +919,7 @@ fp3_yearly.8021 = { } culture = scope:alchemy_enthusiast.culture faith = root.faith + rite = root.rite save_scope_as = enthusiastic_alchemist after_creation = { @@ -990,7 +992,7 @@ fp3_yearly.8021 = { trigger_event = fp3_yearly.8022 - stress_impact = { + stress_and_fulfillment_impact = { fickle = minor_stress_impact_loss vengeful = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -1063,7 +1065,7 @@ fp3_yearly.8021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss sadistic = medium_stress_impact_loss just = major_stress_impact_gain @@ -1108,7 +1110,7 @@ fp3_yearly.8021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss compassionate = medium_stress_impact_gain just = medium_stress_impact_gain @@ -1146,7 +1148,7 @@ fp3_yearly.8021 = { } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain craven = minor_stress_impact_gain forgiving = medium_stress_impact_loss @@ -1225,10 +1227,10 @@ fp3_yearly.8022 = { if = { limit = { - faith = { + rite = { OR = { - has_doctrine = tenet_dharmic_pacifism - has_doctrine = tenet_pacifism + rite_has_tenet = tenet_dharmic_pacifism + rite_has_tenet = tenet_pacifism } } } @@ -1240,7 +1242,7 @@ fp3_yearly.8022 = { years = 25 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain } } @@ -1271,7 +1273,7 @@ fp3_yearly.8022 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss ambitious = medium_stress_impact_gain } @@ -1367,7 +1369,7 @@ fp3_yearly.8023 = { years = 25 } - stress_impact = { + stress_and_fulfillment_impact = { #no stress for this event } } @@ -1398,7 +1400,7 @@ fp3_yearly.8023 = { } } - stress_impact = { + stress_and_fulfillment_impact = { #no stress for this event } } @@ -1411,14 +1413,14 @@ fp3_yearly.8023 = { scripted_trigger non_zoroastrian_faith_trigger = { NOT = { - faith = { has_doctrine_parameter = sky_burials_active } + rite = { rite_has_parameter = sky_burials_active } } } scripted_trigger dakhma_nostalgic_trigger = { culture = { has_cultural_pillar = heritage_iranian } OR = { - faith = { has_doctrine_parameter = sky_burials_active } + rite = { rite_has_parameter = sky_burials_active } has_trait = stubborn learning > 14 has_character_modifier = hallucinogenic_visions_uplifting_modifier @@ -1432,7 +1434,7 @@ scripted_trigger dakhma_nostalgic_trigger = { scripted_trigger loyal_discreet_courtier_trigger = { OR = { - faith = { has_doctrine_parameter = sky_burials_active } + rite = { rite_has_parameter = sky_burials_active } has_trait = trusting has_trait = compassionate reverse_opinion = { @@ -1485,7 +1487,7 @@ fp3_yearly.8024 = { root.capital_province = { geographical_region = world_persian_empire } NOT = { - faith = { has_doctrine_parameter = sky_burials_active } + rite = { rite_has_parameter = sky_burials_active } } any_consort = { #we need a dying consort @@ -1582,7 +1584,7 @@ fp3_yearly.8024 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss honest = medium_stress_impact_loss callous = medium_stress_impact_gain @@ -1666,7 +1668,7 @@ fp3_yearly.8024 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain honest = medium_stress_impact_gain } @@ -1691,7 +1693,7 @@ fp3_yearly.8024 = { death = natural } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss compassionate = medium_stress_impact_gain loyal = medium_stress_impact_gain @@ -1792,7 +1794,7 @@ fp3_yearly.8026 = { target = scope:helpful_courtier } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss paranoid = medium_stress_impact_loss compassionate = massive_stress_impact_gain @@ -1904,11 +1906,12 @@ fp3_yearly.8027 = { location = root.capital_province template = writer_character gender_female_chance = root_faith_dominant_gender_female_chance - faith = faith:maturidi + faith = faith:sunni + rite = rite:hanafi culture = culture:persian trait = lifestyle_poet trait = shrewd - save_scope_as = snubbed_poet + save_scope_as = snubbed_poet } } } @@ -1942,7 +1945,7 @@ fp3_yearly.8027 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss content = medium_stress_impact_gain greedy = medium_stress_impact_gain @@ -2035,7 +2038,7 @@ fp3_yearly.8027 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_loss arrogant = medium_stress_impact_gain cynical = medium_stress_impact_gain @@ -2059,7 +2062,7 @@ fp3_yearly.8027 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss ambitious = medium_stress_impact_gain generous = medium_stress_impact_gain @@ -2394,7 +2397,7 @@ fp3_yearly.8032 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss compassionate = medium_stress_impact_gain humble = minor_stress_impact_gain @@ -2446,7 +2449,7 @@ fp3_yearly.8032 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss shy = major_stress_impact_gain } @@ -2457,7 +2460,7 @@ fp3_yearly.8032 = { dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_value } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss humble = medium_stress_impact_gain } @@ -2475,7 +2478,7 @@ fp3_yearly.8032 = { years = 15 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain craven = miniscule_stress_impact_gain } @@ -2498,7 +2501,7 @@ scripted_trigger fp3_loves_faloodeh_trigger = { has_trait = temperate has_trait = inappetetic AND = { - faith = { has_doctrine = tenet_asceticism } + rite = { rite_has_tenet = tenet_asceticism } ai_zeal >= medium_positive_ai_value } } @@ -2662,7 +2665,7 @@ fp3_yearly.8033 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss just = medium_stress_impact_gain temperate = medium_stress_impact_gain @@ -2702,7 +2705,7 @@ fp3_yearly.8033 = { years = 25 } - stress_impact = { + stress_and_fulfillment_impact = { temperate = minor_stress_impact_loss gluttonous = major_stress_impact_gain gregarious = medium_stress_impact_gain @@ -2734,7 +2737,7 @@ fp3_yearly.8033 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss greedy = medium_stress_impact_gain } @@ -2758,7 +2761,7 @@ fp3_yearly.8033 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain gregarious = medium_stress_impact_gain @@ -2919,7 +2922,7 @@ fp3_yearly.8034 = { add_tyranny = medium_tyranny_value - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss just = massive_stress_impact_gain craven = medium_stress_impact_gain @@ -2961,7 +2964,7 @@ fp3_yearly.8034 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = minor_stress_impact_loss just = medium_stress_impact_gain } @@ -2984,11 +2987,11 @@ fp3_yearly.8034 = { if = { limit = { - faith = { + rite = { OR = { - trait_is_virtue = compassionate - trait_is_virtue = generous - trait_is_virtue = peasant_leader + trait_is_virtue_rite = compassionate + trait_is_virtue_rite = generous + trait_is_virtue_rite = peasant_leader } } } @@ -3013,7 +3016,7 @@ fp3_yearly.8034 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss arrogant = medium_stress_impact_gain greedy = medium_stress_impact_gain @@ -3053,7 +3056,7 @@ fp3_yearly.8034 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss craven = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -3134,7 +3137,7 @@ fp3_yearly.8035 = { add = 1.6 } modifier = { #Sufis don't get along with legalists, so legalist faiths are less likely to have sufi events - faith = { has_doctrine = tenet_legalism } + rite = { rite_has_tenet = tenet_legalism } add = -0.2 } } @@ -3234,7 +3237,7 @@ fp3_yearly.8035 = { } } - stress_impact = { #while the stress mods here are low, note that they stack with the base modifier + stress_and_fulfillment_impact = { #while the stress mods here are low, note that they stack with the base modifier base = medium_stress_impact_gain zealous = minor_stress_impact_loss patient = minor_stress_impact_loss @@ -3270,7 +3273,7 @@ fp3_yearly.8035 = { } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_loss zealous = minor_stress_impact_loss ambitious = medium_stress_impact_gain @@ -3298,7 +3301,7 @@ fp3_yearly.8035 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss zealous = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -3405,7 +3408,7 @@ fp3_yearly.8036 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain impatient = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -3437,7 +3440,7 @@ fp3_yearly.8036 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain cynical = medium_stress_impact_gain } @@ -3467,7 +3470,7 @@ fp3_yearly.8036 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain callous = medium_stress_impact_gain paranoid = medium_stress_impact_gain @@ -3488,7 +3491,7 @@ fp3_yearly.8036 = { add_piety = minor_piety_value - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain brave = medium_stress_impact_gain } diff --git a/events/dlc/fp3/fp3_misc_decision_events.txt b/events/dlc/fp3/fp3_misc_decision_events.txt index e4eb31b80..ee60cba67 100644 --- a/events/dlc/fp3/fp3_misc_decision_events.txt +++ b/events/dlc/fp3/fp3_misc_decision_events.txt @@ -447,7 +447,7 @@ fp3_misc_decisions.0020 = { # Actor Duel Outcome(s) } } trigger_event = fp3_misc_decisions.0041 - stress_impact = { + stress_and_fulfillment_impact = { content = major_stress_impact_gain just = medium_stress_impact_gain forgiving = medium_stress_impact_gain @@ -509,7 +509,7 @@ fp3_misc_decisions.0020 = { # Actor Duel Outcome(s) REVERSE_NON_HOUSE_TARGET = yes } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain ambitious = medium_stress_impact_gain } @@ -1617,7 +1617,7 @@ fp3_misc_decisions.0029 = { # Actor response } save_scope_as = negotiate_bargain_accept scope:recipient = { trigger_event = fp3_misc_decisions.0030 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arrogant = minor_stress_impact_gain content = minor_stress_impact_gain @@ -1636,7 +1636,7 @@ fp3_misc_decisions.0029 = { # Actor response } save_scope_as = negotiate_bargain_reject scope:recipient = { trigger_event = fp3_misc_decisions.0030 } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_gain humble = minor_stress_impact_gain ambitious = minor_stress_impact_gain @@ -1654,7 +1654,7 @@ fp3_misc_decisions.0029 = { # Actor response exists = scope:negotiate_accept } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain ambitious = minor_stress_impact_gain wrathful = minor_stress_impact_gain @@ -2047,6 +2047,7 @@ scripted_effect fp3_misc_decisions_0031_create_char_no_dynasty_effect = { dynasty = none culture = scope:batch_$BATCH$_county.culture faith = scope:batch_$BATCH$_county.faith + rite = scope:batch_$BATCH$_county.rite after_creation = { add_to_list = batch_$BATCH$_characters_list # Set an employer if there's a valid one available. @@ -2110,6 +2111,7 @@ scripted_effect fp3_misc_decisions_0031_create_char_with_dynasty_effect = { location = scope:batch_$BATCH$_county.title_province culture = scope:batch_$BATCH$_county.culture faith = scope:batch_$BATCH$_county.faith + rite = scope:batch_$BATCH$_county.rite after_creation = { add_to_list = batch_$BATCH$_characters_list # Set an employer if there's a valid one available. diff --git a/events/dlc/fp3/fp3_religious_decision_events.txt b/events/dlc/fp3/fp3_religious_decision_events.txt index 6ed862b4a..939a508ea 100644 --- a/events/dlc/fp3/fp3_religious_decision_events.txt +++ b/events/dlc/fp3/fp3_religious_decision_events.txt @@ -45,12 +45,8 @@ fp3_decision.0001 = { OR = { has_faith = faith:mazdakism has_faith = faith:zurvanism #Behafaridism - faith = { - OR = { - has_doctrine_parameter = vows_of_poverty_active - has_doctrine = tenet_gnosticism - } - } + rite = { rite_has_parameter = vows_of_poverty_active } + rite = { rite_has_tenet = tenet_gnosticism } } } @@ -64,7 +60,7 @@ fp3_decision.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_loss ambitious = minor_stress_loss } @@ -100,8 +96,8 @@ fp3_decision.0001 = { has_religion = religion:zoroastrianism_religion } OR = { - faith = { has_doctrine = doctrine_pluralism_fundamentalist } - faith = { has_doctrine = doctrine_pluralism_righteous } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_righteous } } } add_opinion = { @@ -125,8 +121,8 @@ fp3_decision.0001 = { has_religion = religion:zoroastrianism_religion } OR = { - faith = { has_doctrine = doctrine_pluralism_fundamentalist } - faith = { has_doctrine = doctrine_pluralism_righteous } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_righteous } } } add_opinion = { @@ -153,7 +149,7 @@ fp3_decision.0001 = { } } - stress_impact = { #Ambitious rulers of course like this, but paranoid ones are worried about offending people. + stress_and_fulfillment_impact = { #Ambitious rulers of course like this, but paranoid ones are worried about offending people. ambitious = medium_stress_impact_loss arrogant = medium_stress_impact_loss zealous = medium_stress_impact_loss @@ -186,8 +182,8 @@ fp3_decision.0001 = { has_religion = religion:zoroastrianism_religion } OR = { - faith = { has_doctrine = doctrine_pluralism_fundamentalist } - faith = { has_doctrine = doctrine_pluralism_righteous } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_righteous } } } add_opinion = { @@ -211,8 +207,8 @@ fp3_decision.0001 = { has_religion = religion:zoroastrianism_religion } OR = { - faith = { has_doctrine = doctrine_pluralism_fundamentalist } - faith = { has_doctrine = doctrine_pluralism_righteous } + rite = { rite_has_doctrine = doctrine_pluralism_fundamentalist } + rite = { rite_has_doctrine = doctrine_pluralism_righteous } } } add_opinion = { @@ -239,7 +235,7 @@ fp3_decision.0001 = { } } - stress_impact = { #Wasteful or ambitious rulers loathe this more moderate option, but temperate and content rulers love it. + stress_and_fulfillment_impact = { #Wasteful or ambitious rulers loathe this more moderate option, but temperate and content rulers love it. ambitious = minor_stress_impact_gain zealous = miniscule_stress_impact_gain august = minor_stress_impact_gain @@ -420,7 +416,7 @@ fp3_decision.0003 = { #This is triggered from the restore_badd_fortress_decision } triggered_desc = { trigger = { - faith = { has_doctrine = doctrine_heretic_branch_zandik } + rite = { rite_has_doctrine = doctrine_heretic_branch_zandik } } desc = fp3_decision.0003.desc_zandik } @@ -456,7 +452,7 @@ fp3_decision.0003 = { #This is triggered from the restore_badd_fortress_decision # Add a unique nickname. give_nickname = nick_the_fortress_builder - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_loss diligent = minor_stress_loss greedy = minor_stress_loss @@ -556,7 +552,7 @@ fp3_decision.0004 = { #This is triggered from the destroy_the_magi_decision, and give_nickname = nick_the_reformer - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_loss arrogant = minor_stress_loss vengeful = minor_stress_loss @@ -610,12 +606,14 @@ fp3_decision.0011 = { first_valid = { triggered_desc = { trigger = { - faith = { - OR = { - has_doctrine = tenet_fp3_fedayeen - has_doctrine = tenet_warmonger - has_doctrine_parameter = pluralism_fundamentalist_proselytization_bonus + OR = { + rite = { + OR = { + rite_has_tenet = tenet_fp3_fedayeen + rite_has_tenet = tenet_warmonger + } } + rite = { rite_has_parameter = pluralism_fundamentalist_proselytization_bonus } } } desc = fp3_decision.0011_fanatic_murderer.desc @@ -645,7 +643,7 @@ fp3_decision.0011 = { avenge_the_battle_of_nahrawan_scripted_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { zealous = major_stress_impact_loss vengeful = major_stress_impact_loss ambitious = medium_stress_impact_loss @@ -735,6 +733,7 @@ fp3_decision.0013 = { age = { 25 75 } location = root.capital_province faith = root.faith.religious_head.faith + rite = root.faith.religious_head.rite gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. trait = diplomat template = priest_character_template @@ -765,7 +764,7 @@ fp3_decision.0013 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss arrogant = minor_stress_impact_loss craven = medium_stress_impact_gain @@ -804,7 +803,7 @@ fp3_decision.0013 = { target = flag:promote_persian_scripture_decision } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_loss craven = medium_stress_impact_loss arrogant = medium_stress_impact_gain @@ -865,6 +864,7 @@ fp3_decision.0014 = { age = { 40 75 } location = root.capital_province faith = root.faith + rite = root.rite gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. trait = shrewd trait = theologian @@ -922,7 +922,7 @@ fp3_decision.0014 = { ################################################## scripted_effect fp3_decision_0015_apply_rebellious_stress_effect = { - stress_impact = { + stress_and_fulfillment_impact = { arrogant = miniscule_stress_impact_loss ambitious = minor_stress_impact_loss disloyal = minor_stress_impact_loss diff --git a/events/dlc/fp3/fp3_scholarship_events.txt b/events/dlc/fp3/fp3_scholarship_events.txt deleted file mode 100644 index b68cafdd9..000000000 --- a/events/dlc/fp3/fp3_scholarship_events.txt +++ /dev/null @@ -1,1918 +0,0 @@ -namespace = fp3_scholarship - -# ========================= Persian Scholarship Events ========================= -# = Events that relate to sponsoring scholars and innovation in your realm = -# ============================================================================== -# = -# 0000 – 0999: Hidden decision events = -# 1000 – 1999: Scholarship events that don't need a court scholar to trigger = -# 2000 – 2999: Events that fire when you employ a court scholar = -# 8000 – 8999: Research Project events = -# 9000 – 9999: Research Project conclusion events = -# = -# ============================================================================== - -# Sponsor Persian Scholars -fp3_scholarship.0001 = { - hidden = yes - - trigger = { - exists = var:number_of_invite_scholars_countdown - } - - immediate = { - #Set up a list of provinces, one per duchy in the realm, find all relevant pool characters there - every_realm_province = { - if = { - limit = { - save_temporary_scope_as = potential_province - NOT = { - any_in_list = { - list = pool_provinces - county.duchy = scope:potential_province.county.duchy - } - } - } - add_to_temporary_list = pool_provinces - } - } - - every_in_list = { - list = pool_provinces - save_temporary_scope_as = pool_province - - every_pool_character = { - province = scope:pool_province - limit = { - learning >= 10 - has_trait = education_learning - NOT = { has_trait = intellect_bad } - } - add_to_temporary_list = potential_scholars - } - } - - #Prioritize good scholars - random_in_list = { - list = potential_scholars - limit = { is_alive = yes } - weight = { - base = 1 - modifier = { - add = { - value = learning - subtract = 12 - multiply = 5 - } - } - } - save_scope_as = scholar - } - - #If no one was found, make a new scholar - if = { - limit = { NOT = { exists = scope:scholar } } - - # Can be either anywhere from a great to mediocre scholar - - create_character = { - location = root.capital_province - age = { 20 70 } - gender_female_chance = { - if = { - limit = { - faith = { has_doctrine = doctrine_gender_male_dominated } - } - add = 0 - } - else_if = { - limit = { - faith = { has_doctrine = doctrine_gender_female_dominated } - } - add = 100 - } - else = { - add = 50 - } - } - culture = root.culture - faith = root.faith - - random_traits = yes - diplomacy = { 2 10 } - martial = { 0 8 } - stewardship = { 2 10 } - intrigue = { 2 10 } - learning = { 10 18 } - prowess = { 0 8 } - - random_traits_list = { - count = { 0 2 } - scholar = {} - theologian = {} - lifestyle_physician = {} - } - - dynasty = none - - after_creation = { - remove_any_education_traits_effect = yes - random_list = { - 10 = { add_trait = education_learning_1 } - 35 = { add_trait = education_learning_2 } - 35 = { add_trait = education_learning_3 } - 20 = { add_trait = education_learning_4 } - } - random = { - chance = 10 - add_trait = shrewd - } - random_list = { - 85 = {} - 20 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_1 - } - 10 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_2 - } - } - add_random_tiered_trait_xp_effect = { - TRAIT = lifestyle_physician - LEVEL_1 = yes - LEVEL_3 = yes - } - random = { - chance = 2 - add_trait = depressed_1 - } - random = { - chance = 2 - add_trait = reclusive - } - random = { - chance = 2 - add_trait = journaller - } - } - - save_scope_as = scholar - } - } - - #Add scholar to court - send_interface_message = { - type = event_learning_good_with_text - title = fp3_scholarship.0001.t - desc = fp3_scholarship.0001.desc - left_icon = scope:scholar - add_visiting_courtier = scope:scholar - } - - #Count down the number of extra scholars and either end the chain or resend this event - change_variable = { - name = number_of_invite_scholars_countdown - subtract = 1 - } - - if = { - limit = { var:number_of_invite_scholars_countdown = 0 } - remove_variable = number_of_invite_scholars_countdown - } - else = { - clear_saved_scope = scholar - trigger_event = { - id = fp3_scholarship.0001 - days = { 100 200 } - } - } - } -} - -########################################## -# 1000 - 1999: No Court Scholar Required # -########################################## - -# A Second Aryabhata -# Ask a neighboring Indo-Aryan ruler to send you some scholars - -scripted_trigger fp3_scholarship_1000_neighboring_ruler_is_valid = { - this != root - is_ai = yes - culture = { - OR = { - has_cultural_pillar = heritage_indo_aryan - has_cultural_pillar = heritage_dravidian - } - NOT = { has_cultural_pillar = ethos_bellicose } - } -} - -# A Second Aryabhata -# Contemplate asking a neighboring Indo-Aryan ruler for some mathematician courtiers -fp3_scholarship.1000 = { - type = character_event - title = fp3_scholarship.1000.t - desc = fp3_scholarship.1000.desc - theme = education - left_portrait = { - character = root - animation = personality_rational - } - lower_left_portrait = scope:nearby_indian_ruler - - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - NOT = { employs_court_position = court_scholar_court_position } - can_employ_court_position_type = court_scholar_court_position - any_neighboring_top_liege_realm_owner = { - fp3_scholarship_1000_neighboring_ruler_is_valid = yes - } - } - - # Find an appropriate neighboring Indian ruler - immediate = { - save_scope_as = actor # Required for gift_value - random_neighboring_top_liege_realm_owner = { - limit = { - fp3_scholarship_1000_neighboring_ruler_is_valid = yes - } - save_scope_as = nearby_indian_ruler - save_scope_as = recipient # Required for gift_value - save_scope_value_as = { - name = bribe_value - value = { - value = gift_value - divide = 2 - } - } - } - } - - option = { # Ask nicely - name = fp3_scholarship.1000.a - duel = { - skill = diplomacy - target = scope:nearby_indian_ruler - 50 = { - desc = fp3_scholarship.1000.duel_success - min = 15 - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - opinion_modifier = { - who = scope:nearby_indian_ruler - opinion_target = root - multiplier = 1.5 - min = -49 - } - send_interface_toast = { - title = fp3_scholarship.1000.duel_success - left_icon = scope:nearby_indian_ruler - custom_tooltip = fp3_scholarship.1000.duel_success_tt - } - trigger_event = { - id = fp3_scholarship.1001 - days = { 7 14 } - } - hidden_effect = { - add_opinion = { - target = scope:nearby_indian_ruler - modifier = grateful_opinion - opinion = 20 - } - } - } - 50 = { - desc = fp3_scholarship.1000.duel_failure - min = 15 - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - opinion_modifier = { - who = scope:nearby_indian_ruler - opinion_target = root - multiplier = -1.5 - min = -49 - } - send_interface_toast = { - title = fp3_scholarship.1000.duel_failure - left_icon = scope:nearby_indian_ruler - reverse_add_opinion = { - target = scope:nearby_indian_ruler - modifier = fp3_disrespected_me_opinion - } - } - hidden_effect = { - add_opinion = { - target = scope:nearby_indian_ruler - modifier = disappointed_opinion - opinion = -10 - } - } - } - } - stress_impact = { - paranoid = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - scholar = minor_stress_impact_loss - } - ai_chance = { - base = 10 #We don't want too many Indian mathematicians in Persia from this event - modifier = { - factor = 5 - has_trait = scholar - } - } - } - - option = { # Offer some gold - name = fp3_scholarship.1000.b - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - remove_short_term_gold = scope:bribe_value - custom_tooltip = fp3_scholarship.1000.duel_success_tt - reverse_add_opinion = { - target = scope:nearby_indian_ruler - modifier = grateful_opinion - opinion = 20 - } - trigger_event = { - id = fp3_scholarship.1001 - days = { 7 14 } - } - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - scholar = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - has_trait = greedy - } - } - } - - option = { # Focus on improving local mathematics - name = fp3_scholarship.1000.c - remove_treasury_or_gold = medium_treasury_or_gold_value - custom_tooltip = fp3_scholarship.1000.native_tt - add_character_modifier = { - modifier = fp3_promoted_persian_mathematics_modifier - years = 10 - } - hidden_effect = { - create_character = { - location = root.capital_province - template = scholar_character - save_scope_as = mathematician - } - - send_interface_message = { - type = event_learning_good_with_text - title = fp3_scholarship.1001.t - desc = fp3_scholarship.1001.native.desc - left_icon = scope:mathematician - add_courtier = scope:mathematician - } - } - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - scholar = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - factor = 0 - has_trait = greedy - } - } - } - option = { # Complete Opt Out - name = fp3_scholarship.1000.d - stress_impact = { - scholar = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } -} - -scripted_effect fp3_scholarship_1001_create_indian_mathematician_effect = { - create_character = { - location = root.capital_province - age = { 20 70 } - gender_female_chance = { - if = { - limit = { - scope:nearby_indian_ruler.faith = { has_doctrine = doctrine_gender_male_dominated } - } - add = 0 - } - else_if = { - limit = { - scope:nearby_indian_ruler.faith = { has_doctrine = doctrine_gender_female_dominated } - } - add = 100 - } - else = { - add = 50 - } - } - culture = scope:nearby_indian_ruler.culture - faith = scope:nearby_indian_ruler.faith - - random_traits_list = { - count = 3 - chaste = {} - content = {} - ambitious = {} - diligent = {} - stubborn = {} - forgiving = {} - shy = {} - just = {} - patient = {} - cynical = {} - craven = {} - } - random_traits = no - diplomacy = { 2 10 } - martial = { 0 8 } - stewardship = { 2 10 } - intrigue = { 0 8 } - learning = { 8 14 } - prowess = { 0 8 } - - dynasty = none - - after_creation = { - remove_any_education_traits_effect = yes - random_list = { - 10 = { add_trait = education_learning_2 } - 30 = { add_trait = education_learning_3 } - 10 = { add_trait = education_learning_4 } - } - random = { - chance = 25 - add_trait = scholar - } - random = { - chance = 10 - add_trait = shrewd - } - random_list = { - 85 = {} - 20 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_1 - } - 10 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_2 - } - } - random = { - chance = 2 - add_trait = depressed_1 - } - random = { - chance = 2 - add_trait = reclusive - } - random = { - chance = 5 - add_trait = hashishiyah - } - random = { - chance = 2 - add_trait = journaller - } - } - - save_temporary_scope_as = mathematician - } - send_interface_message = { - type = event_learning_good_with_text - title = fp3_scholarship.1001.t - desc = fp3_scholarship.1001.desc - left_icon = scope:mathematician - add_courtier = scope:mathematician - } -} - -# 1-2 mathematician Indo-Aryan courtiers arrive -fp3_scholarship.1001 = { - hidden = yes - - trigger = { - exists = scope:nearby_indian_ruler # Sanity check - } - - immediate = { - fp3_scholarship_1001_create_indian_mathematician_effect = yes - fp3_scholarship_1001_create_indian_mathematician_effect = yes - } -} - -scripted_trigger fp3_scholarship_1010_is_valid_magus_county = { - county.holder = { #Holder must be ROOT or a direct vassal of ROOT in order for root to grant protection - OR = { - this = root - liege ?= root - } - } - faith = { - religion_tag = zoroastrianism_religion - faith_hostility_level = { - target = root.faith - value > faith_astray_level - } - } - # Don't target repeat counties - NOT = { has_variable = cannot_be_converted_by_value } -} - -# The Lone Magus -# You encounter an extant fire temple. Do you ignore it, destroy it, or recruit the Magus? -#Travel Event -fp3_scholarship.1010 = { - type = character_event - title = fp3_scholarship.1010.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - # Consider the zoroastrian faith "dying" if it has no religious head of faith - NOT = { exists = scope:magus_faith.religious_head } - } - desc = fp3_scholarship.1010.desc_dying_faith - } - desc = fp3_scholarship.1010.desc_living_faith - } - } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:magus - animation = beg - } - theme = travel - override_background = { - reference = fp3_zoroastrian_temple - } - - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - NOT = { employs_court_position = court_scholar_court_position } - can_employ_court_position_type = court_scholar_court_position - faith = { - NOT = { religion_tag = zoroastrianism_religion } - } - location = { fp3_scholarship_1010_is_valid_magus_county = yes } - NOT = { - has_character_modifier = fp3_denied_religious_protection_modifier - } - } - - immediate = { - # Grab scopes for the event - location = { - save_scope_as = magus_location - county = { save_scope_as = magus_county } - faith = { save_scope_as = magus_faith } - } - create_character = { - location = scope:magus_location - age = { 30 70 } - gender_female_chance = { - if = { - limit = { - scope:magus_faith = { has_doctrine = doctrine_clerical_gender_male_only } - } - add = 0 - } - else_if = { - limit = { - scope:magus_faith = { has_doctrine = doctrine_clerical_gender_female_only } - } - add = 100 - } - else = { - add = 50 - } - } - culture = scope:magus_county.culture - faith = scope:magus_county.faith - - trait = brave - trait = devoted - random_traits_list = { - count = 2 - zealous = {} - chaste = {} - diligent = {} - stubborn = {} - just = {} - patient = {} - impatient = {} - honest = {} - temperate = {} - humble = {} - calm = {} - wrathful = {} - forgiving = {} - } - random_traits = no - diplomacy = { 2 10 } - martial = { 0 8 } - stewardship = { 2 10 } - intrigue = { 0 8 } - learning = { 10 16 } - prowess = { 0 8 } - - dynasty = none - - after_creation = { - remove_any_education_traits_effect = yes - random_list = { - 5 = { add_trait = education_learning_2 } - 30 = { add_trait = education_learning_3 } - 15 = { add_trait = education_learning_4 } - } - random = { - chance = 15 - add_trait = scholar - } - random = { - chance = 60 - add_trait = theologian - } - random = { - chance = 10 - add_trait = shrewd - } - random_list = { - 85 = {} - 20 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_1 - } - 10 = { - trigger = { - NOR = { - has_trait = intellect_good_1 - has_trait = intellect_good_2 - has_trait = intellect_good_3 - } - } - add_trait = intellect_good_2 - } - } - random = { - chance = 5 - add_trait = depressed_1 - } - random = { - chance = 90 - add_trait = celibate - } - random = { - chance = 25 - add_trait = infertile - } - random = { - chance = 2 - add_trait = contrite - } - random = { - chance = 5 - add_trait = reclusive - } - } - - save_scope_as = magus - } - } - option = { # Deny the request - name = fp3_scholarship.1010.a - add_character_modifier = { - modifier = fp3_denied_religious_protection_modifier - years = 10 - } - scope:magus = { - death = { - death_reason = death_execution - killer = root - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - just = minor_stress_impact_gain - forgiving = minor_stress_impact_gain - generous = minor_stress_impact_gain - zealous = minor_stress_impact_loss - callous = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0.25 - has_trait = just - } - modifier = { - factor = 0 - has_trait = compassionate - } - } - } - - option = { # Gain the magus as a courtier - name = fp3_scholarship.1010.b - trigger = { - is_ai = no - } - add_courtier = scope:magus - custom_tooltip = fp3_scholarship.1010.b.tt - scope:magus_county = { - set_variable = { - name = cannot_be_converted_by_value - value = root - years = 20 - } - } - scope:magus = { - set_variable = { - name = cannot_be_converted_by_value - value = root - years = 100 - } - add_character_flag = { - flag = blocked_from_leaving - years = 10 - } - } - stress_impact = { - zealous = medium_stress_impact_gain - callous = minor_stress_impact_gain - forgiving = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - } - } - - option = { # Just Leave - name = fp3_scholarship.1010.c - add_piety = minor_piety_loss - scope:magus = { - silent_disappearance_effect = yes - } - ai_chance = { - base = 100 - } - } -} - -######################################## -# 2000 - 2999: Court Scholar Required # -######################################## - -# Worth Its Weight -# Requisition paper for your court scholar? -fp3_scholarship.2000 = { - type = character_event - title = fp3_scholarship.2000.t - desc = fp3_scholarship.2000.desc - theme = education - left_portrait = { - character = scope:court_scholar - animation = reading - } - - cooldown = { years = 5 } - - trigger = { - # Don't give the court scholar multiple paper surpluses - any_court_position_holder = { - type = court_scholar_court_position - NOT = { has_character_modifier = fp3_paper_surplus_modifier } - } - # Paper should be abundant by the late medieval era - culture = { NOT = { has_cultural_era_or_later = culture_era_late_medieval } } - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - save_scope_as = court_scholar - } - } - - option = { # Requisition the paper - name = fp3_scholarship.2000.a - capital_county = { - change_county_control = -25 - } - scope:court_scholar = { - add_character_modifier = { - modifier = fp3_paper_surplus_modifier - years = 10 - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 10 - } - } - stress_impact = { - just = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - } - ai_chance = { - base = 0 - } - } - - option = { # Import the Paper - name = fp3_scholarship.2000.b - remove_treasury_or_gold = medium_treasury_or_gold_value - scope:court_scholar = { - add_character_modifier = { - modifier = fp3_paper_surplus_modifier - } - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - stress_impact = { - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -1 - } - } - } - - option = { # We cannot afford it - name = fp3_scholarship.2000.c - scope:court_scholar = { - add_character_modifier = { - modifier = fp3_paper_shortage_modifier - years = 10 - } - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - stress_impact = { - diligent = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - } - } - } -} - -# Liquid Wisdom -# Your court scholar is drinking with a foreign scholar, do you stop them in the name of piety? -fp3_scholarship.2010 = { - type = character_event - title = fp3_scholarship.2010.t - desc = fp3_scholarship.2010.desc - theme = education - override_background = { - reference = tavern - } - left_portrait = { - character = scope:court_scholar - animation = thinking - } - right_portrait = { - character = scope:foreign_scholar - animation = toast - } - - cooldown = { years = 10 } - - trigger = { - faith = { trait_is_sin = drunkard } - any_court_position_holder = { - type = court_scholar_court_position - NOT = { has_trait = zealous } - } - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - save_scope_as = court_scholar - } - # Find a random faraway county to pull a character from - random_county_in_region = { - region = world_india - limit = { - faith = { - NOT = { trait_is_sin = drunkard } - } - } - save_scope_as = foreign_county - } - create_character = { - age = { 35 50 } - random_traits_list = { - count = 1 - education_learning_2 = {} - education_learning_3 = {} - education_learning_4 = {} - } - random_traits = yes - location = root.capital_province - faith = scope:foreign_county.faith - culture = scope:foreign_county.culture - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - learning = { - min_template_high_skill - max_template_high_skill - } - save_scope_as = foreign_scholar - } - } - - option = { # Stop court scholar - name = fp3_scholarship.2010.a - add_piety = minor_piety_gain - reverse_add_opinion = { - target = scope:court_scholar - modifier = fp3_killjoy_opinion - opinion = -15 - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # Let them continue drinking - name = fp3_scholarship.2010.b - add_piety = minor_piety_loss - random = { - chance = 50 - scope:court_scholar = { - add_learning_skill = 1 - } - } - scope:court_scholar = { - add_character_modifier = { - modifier = fp3_liquid_wisdom_modifier - years = 5 - } - } - stress_impact = { - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -1 - } - } - } - - after = { - scope:foreign_scholar = { silent_disappearance_effect = yes } - } -} - -# Morbid Insights -# Give a prisoner to your court scholar to experiment on? -fp3_scholarship.2020 = { - type = character_event - title = fp3_scholarship.2020.t - desc = fp3_scholarship.2020.desc - theme = prison - left_portrait = { - character = scope:court_scholar - animation = thinking - } - right_portrait = { - character = scope:specimen - animation = fear - } - - cooldown = { years = 10 } - - trigger = { - any_prisoner = { - is_adult = yes - } - any_court_position_holder = { - type = court_scholar_court_position - ai_compassion < very_high_positive_ai_value # A compassionate person would not endanger another's life - } - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - save_scope_as = court_scholar - assign_quirk_effect = yes - } - random_prisoner = { - limit = { is_adult = yes } - # Try to pull an important person; this event is more interesting if the prisoner isn't Guy McNobody - weight = { - base = 1 - modifier = { - exists = dynasty - add = dynasty.dynasty_prestige_level - } - } - save_scope_as = specimen - } - } - - option = { # Allow the experimentation - name = fp3_scholarship.2020.a - random_list = { # 40% chance of prisoner death - 3 = { add_learning_skill = 2 } - 2 = { - scope:specimen = { - death = { - death_reason = death_treatment - killer = scope:court_scholar - } - } - } - } - scope:court_scholar = { - add_character_modifier = { - modifier = fp3_morbid_insights_modifier - years = 20 - } - } - stress_impact = { - compassionate = major_stress_impact_gain - sadistic = minor_stress_impact_loss - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = -1 - } - modifier = { - NOT = { has_execute_reason = scope:specimen } - ai_honor >= high_positive_ai_value - add = -50 - } - } - } - - option = { # Forbid experimentation - name = fp3_scholarship.2020.b - reverse_add_opinion = { - target = scope:court_scholar - modifier = disappointed_opinion - opinion = -15 - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 1 - } - } - } -} - -#Treatice Published (Your Scholar is levelling up) -#By Henrik Lohmander -fp3_scholarship.2030 = { - type = character_event - title = fp3_scholarship.2030.t - desc = fp3_scholarship.2030.desc - theme = education - left_portrait = { - character = scope:court_scholar - animation = reading - } - override_background = { - reference = bp2_study_indian - } - - cooldown = { years = 10 } #This will keep happening with regular intervals once the cooldown is over, if you keep a scholar on for long enough they will be increasingly learned - - trigger = { - any_court_position_holder = { - type = court_scholar_court_position - is_available_healthy_adult = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - any_realm_province = { - is_higher_studies_location = yes - } - } - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - save_scope_as = court_scholar - } - random_list = { - 33 = { - trigger = { - scope:court_scholar = { - NOT = { has_trait = scholar } - learning > 15 - } - } - save_scope_value_as = { - name = personal_development_time - value = flag:scholar_trait - } - } - 33 = { - trigger = { - scope:court_scholar = { - NOT = { has_trait = theologian } - learning > 20 - } - } - save_scope_value_as = { - name = personal_development_time - value = flag:theologian_trait - } - } - 33 = { - save_scope_value_as = { - name = personal_development_time - value = flag:learning - } - } - 33 = { - trigger = { - any_realm_province = { - is_higher_studies_location = yes - } - scope:court_scholar = { - has_education_learning_trigger = yes - NOT = { has_trait = education_learning_5 } - } - } - save_scope_value_as = { - name = personal_development_time - value = flag:learning_education - } - } - } - } - - option = { - name = fp3_scholarship.2030.a - switch = { - trigger = scope:personal_development_time - flag:learning = { - scope:court_scholar = { - add_learning_skill = 2 - } - } - flag:theologian_trait = { - scope:court_scholar = { - add_trait = theologian - } - } - flag:scholar_trait = { - scope:court_scholar = { - add_trait = scholar - } - } - flag:learning_education = { - custom_tooltip = fp3_scholarship.2030.tt - scope:court_scholar = { - switch = { - trigger = has_trait - education_learning_1 = { - remove_trait = education_learning_1 - add_trait_force_tooltip = education_learning_2 - } - education_learning_2 = { - remove_trait = education_learning_2 - add_trait_force_tooltip = education_learning_3 - } - education_learning_3 = { - remove_trait = education_learning_3 - add_trait_force_tooltip = education_learning_4 - } - education_learning_4 = { - remove_trait = education_learning_4 - add_trait_force_tooltip = education_learning_5 - } - } - } - } - } - } -} - -################################## -# 8000 - 8999: Innovation Events # -################################## - -# Determines whether the research project was a success or failure, given $SUCCESS_CHANCE$ -scripted_effect fp3_research_completion_effect = { - # For loc - if = { - limit = { NOT = { exists = scope:court_scholar } } - random_court_position_holder = { - type = court_scholar_court_position - save_scope_as = court_scholar - } - } - random_list = { - 65 = { # Failure - modifier = { - add = { - value = 0 - subtract = $SUCCESS_CHANCE$ - } - } - custom_tooltip = fp3_scholarship.8999.tt_failure - trigger_event = fp3_scholarship.9000 - } - 34 = { # Regular Success - modifier = { - add = { - value = $SUCCESS_CHANCE$ - multiply = 0.75 - } - } - custom_tooltip = fp3_scholarship.8999.tt_success - trigger_event = fp3_scholarship.9100 - } - 1 = { # Critical Success: Unlock Innovation - trigger = { - trigger_if = { - limit = { - NOT = { culture = { has_innovation = fp3_innovation_mural_sextant } } - } - culture = { has_cultural_era_or_later = culture_era_early_medieval } - } - trigger_if = { - limit = { - NOT = { culture = { has_innovation = fp3_innovation_fritware } } - } - culture = { has_cultural_era_or_later = culture_era_late_medieval } - } - } - modifier = { - add = { - value = $SUCCESS_CHANCE$ - multiply = 0.25 - } - } - custom_tooltip = fp3_scholarship.8999.tt_crit_success - trigger_event = fp3_scholarship.9200 - } - } -} - -scripted_effect add_research_cooldown_effect = { - add_character_flag = { - flag = fund_research_inspiration_event_cooldown - days = { 30 60 } - } -} - -scripted_trigger has_no_research_event_cooldown = { - NOT = { has_character_flag = fund_research_inspiration_event_cooldown } -} - -# Scholar announces initial plans to begin a research project -fp3_scholarship.8000 = { - type = character_event - title = fp3_scholarship.8000.t - desc = fp3_scholarship.8000.desc - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:court_scholar - animation = reading - } - theme = education - override_background = { - reference = bp2_university - } - - cooldown = { - years = 5 - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - limit = { - exists = inspiration - is_available_healthy_adult = yes - } - save_scope_as = court_scholar - } - } - - option = { - name = fp3_scholarship.8000.a - } -} - -# Scholar wants to begin an alchemy inspiration -fp3_scholarship.8500 = { - type = character_event - title = fp3_scholarship.8500.t - desc = fp3_scholarship.8500.desc - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:court_scholar - animation = reading - } - theme = education - override_background = { - reference = bp2_university - } - - cooldown = { - years = 5 - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - limit = { - NOT = { exists = inspiration } - is_available_healthy_adult = yes - } - save_scope_as = court_scholar - } - scope:court_scholar = { - save_scope_as = recipient - } - save_scope_as = actor - } - - trigger = { - has_fp3_dlc_trigger = yes - has_royal_court = yes #Yes, for this you need both fp3 and Royal Court - any_court_position_holder = { - type = court_scholar_court_position - NOT = { exists = inspiration } - is_available_healthy_adult = yes - has_completed_inspiration = no - learning > 20 - } - } - - option = { - name = fp3_scholarship.8000.a - remove_short_term_gold = fp3_research_base_cost - custom_tooltip = fp3_scholarship.8500.a.tt - hidden_effect = { - scope:court_scholar = { - create_inspiration = alchemy_inspiration - fund_inspiration_effect = yes - } - } - } - - option = { - name = fp3_scholarship.8000.b - add_prestige = minor_prestige_loss - reverse_add_opinion = { - target = scope:court_scholar - modifier = disappointed_opinion - opinion = -10 - } - } -} - -# Scholar wants to begin a book inspiration -fp3_scholarship.8600 = { - type = character_event - title = fp3_scholarship.8600.t - desc = fp3_scholarship.8600.desc - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:court_scholar - animation = throne_room_writer - } - theme = education - override_background = { - reference = study - } - - trigger = { - has_fp3_dlc_trigger = yes - has_royal_court = yes #Yes, for this you need both fp3 and Royal Court - any_court_position_holder = { - type = court_scholar_court_position - NOT = { exists = inspiration } - has_completed_inspiration = no - is_available_healthy_adult = yes - learning > 20 - } - } - - cooldown = { - years = 5 - } - - immediate = { - random_court_position_holder = { - type = court_scholar_court_position - limit = { - NOT = { exists = inspiration } - is_available_healthy_adult = yes - } - save_scope_as = court_scholar - } - scope:court_scholar = { - save_scope_as = recipient - } - save_scope_as = actor - } - - option = { - name = fp3_scholarship.8000.a - show_as_tooltip = { remove_short_term_gold = medium_gold_value } # gold is removed by sponsor_inspiration effect (inside fund_inspiration_effect) - custom_tooltip = fp3_scholarship.8600.a.tt - hidden_effect = { - scope:court_scholar = { - create_inspiration = { - type = book_inspiration - gold = root.medium_gold_value - } - fund_inspiration_effect = yes - } - } - } - - option = { - name = fp3_scholarship.8000.b - add_prestige = minor_prestige_loss - reverse_add_opinion = { - target = scope:court_scholar - modifier = disappointed_opinion - opinion = -10 - } - } -} - -# Scholar asks for more texts -fp3_scholarship.8100 = { - type = character_event - title = fp3_scholarship.8100.t - desc = fp3_scholarship.8100.desc - theme = education - left_portrait = scope:inspiration_owner - - cooldown = { years = 2 } - - trigger = { - exists = scope:inspiration - scope:inspiration_owner = { - is_available_ai_adult = yes - has_no_research_event_cooldown = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 0.5 - scope:inspiration_owner = { - ai_energy >= medium_positive_ai_value - } - } - } - - immediate = { - scope:inspiration_owner = { - add_research_cooldown_effect = yes - } - } - - option = { # Furnish the library - name = fp3_scholarship.8100.a - if = { - limit = { exists = scope:inspiration } - scope:inspiration = { - invest_gold = 50 - } - } - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = 6 } - } - stress_impact = { - arrogant = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - add = -50 - short_term_gold < 50 - } - } - } - - option = { # The library is fine as-is - name = fp3_scholarship.8100.b - scope:inspiration_owner = { - change_artifact_quality_effect = { AMOUNT = -2 } - add_opinion = { - target = root - modifier = refusal_opinion - opinion = -10 - } - } - stress_impact = { - arrogant = minor_stress_impact_loss - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = 0.75 - } - } - } -} - -# Roll for project outcome -fp3_scholarship.8999 = { - hidden = yes - - # Roll for success - immediate = { - if = { - limit = { exists = scope:inspiration_owner } - scope:inspiration_owner = { - if = { - limit = { has_variable = research_success_chance } - scope:inspiration_sponsor = { - fp3_research_completion_effect = { SUCCESS_CHANCE = prev.var:research_success_chance } - } - } - } - } - } - } - -# Research project was a failure -fp3_scholarship.9000 = { - type = character_event - title = fp3_scholarship.9000.t - desc = fp3_scholarship.9000.desc - theme = education - left_portrait = { - character = scope:inspiration_owner - animation = worry - } - - immediate = { - scope:inspiration_owner = { - add_character_flag = { - flag = research_invalidated - days = 1 - } - } - } - - option = { # These things happen - name = fp3_scholarship.9000.a - add_prestige = minor_prestige_loss - } -} - -# Research project minor success -scripted_effect fp3_scholarship_9100_reward_effect = { - house = { - add_house_modifier = { - modifier = $MODIFIER$ - years = 30 - } - } -} - -fp3_scholarship.9100 = { - type = character_event - title = fp3_scholarship.9100.t - desc = fp3_scholarship.9100.desc - theme = education - left_portrait = { - character = scope:inspiration_owner - animation = personality_honorable - } - - immediate = { - hidden_effect = { - random_list = { - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = civil_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_development_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_development_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = civil_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_building_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_building_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = civil_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_control_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_control_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = civil_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_mathematics_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_mathematics_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = civil_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_taxation_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_taxation_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = military_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_light_warfare_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_light_warfare_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = military_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_heavy_warfare_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_heavy_warfare_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = military_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_cavalry_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_cavalry_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = military_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_siege_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_siege_modifier - } - } - 30 = { - trigger = { - scope:inspiration_owner = { has_character_flag = military_research } - house = { - NOT = { has_house_modifier = fp3_treatise_on_strategy_modifier } - } - } - save_scope_value_as = { - name = researched_house_modifier - value = flag:fp3_treatise_on_strategy_modifier - } - } - 1 = { - save_scope_value_as = { - name = researched_house_modifier - value = flag:prestige - } - } - } - } - } - - option = { - name = fp3_scholarship.9100.a - ai_chance = { - base = 100 - } - switch = { - trigger = scope:researched_house_modifier - flag:fp3_treatise_on_development_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_development_modifier } - } - flag:fp3_treatise_on_building_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_building_modifier } - } - flag:fp3_treatise_on_control_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_control_modifier } - } - flag:fp3_treatise_on_mathematics_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_mathematics_modifier } - } - flag:fp3_treatise_on_taxation_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_taxation_modifier } - } - flag:fp3_treatise_on_light_warfare_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_light_warfare_modifier } - } - flag:fp3_treatise_on_heavy_warfare_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_heavy_warfare_modifier } - } - flag:fp3_treatise_on_cavalry_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_cavalry_modifier } - } - flag:fp3_treatise_on_siege_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_siege_modifier } - } - flag:fp3_treatise_on_strategy_modifier = { - fp3_scholarship_9100_reward_effect = { MODIFIER = fp3_treatise_on_strategy_modifier } - } - flag:prestige = { - custom_tooltip = patron_of_the_sciences - add_prestige = massive_prestige_value - } - } - } -} - -# Research project critical success! New innovation discovered -fp3_scholarship.9200 = { - type = character_event - title = fp3_scholarship.9200.t - desc = fp3_scholarship.9200.desc - theme = education - left_portrait = { - character = scope:inspiration_owner - animation = happiness - } - - immediate = { - play_music_cue = "mx_cue_epic_sacral_moment" - hidden_effect = { - random_list = { - 30 = { - trigger = { - culture = { - NOT = { has_innovation = fp3_innovation_mural_sextant } - has_cultural_era_or_later = culture_era_early_medieval - } - } - save_scope_value_as = { - name = research_cultural_innovation - value = flag:fp3_innovation_mural_sextant - } - } - 30 = { - trigger = { - culture = { - NOT = { has_innovation = fp3_innovation_fritware } - has_cultural_era_or_later = culture_era_late_medieval - } - } - save_scope_value_as = { - name = research_cultural_innovation - value = flag:fp3_innovation_fritware - } - } - } - } - } - - option = { - name = fp3_scholarship.9200.a - switch = { - trigger = scope:research_cultural_innovation - flag:fp3_innovation_mural_sextant = { - culture = { add_innovation = fp3_innovation_mural_sextant } - } - flag:fp3_innovation_fritware = { - culture = { add_innovation = fp3_innovation_fritware } - } - } - } -} diff --git a/events/dlc/fp3/fp3_story_cycle_seljuks_invasion_events.txt b/events/dlc/fp3/fp3_story_cycle_seljuks_invasion_events.txt deleted file mode 100644 index 858b45111..000000000 --- a/events/dlc/fp3/fp3_story_cycle_seljuks_invasion_events.txt +++ /dev/null @@ -1,153 +0,0 @@ -namespace = fp3_story_cycle_seljuks_invasion_events - -### RISE OF THE SELJUKS ############################################# -## 0001 Leader and Story Cycle Creation by Maxence Voleau -## 0002 The First Settlers by Hugo Cortell -##################################################################### - -################################### -# Setup: we create the leader and start the story cycle -# By Maxence Voleau -################################### -fp3_story_cycle_seljuks_invasion_events.0001 = { - scope = none - hidden = yes - - immediate = { - spawn_seljuk_character_effect = yes - scope:lead_seljuk = { - create_story = story_seljuk_invasion - } - } -} - -################################### -# The First Settlers -# By Hugo Cortell -################################### -fp3_story_cycle_seljuks_invasion_events.0002 = { - type = character_event - title = fp3_story_cycle_seljuks_invasion_events.0001.t - desc = { - desc = fp3_story_cycle_seljuks_invasion_events.0001.desc - first_valid = { - triggered_desc = { - trigger = { highest_held_title_tier > tier_duchy } - desc = fp3_story_cycle_seljuks_invasion_events.0001.desc_vassal - } - desc = fp3_story_cycle_seljuks_invasion_events.0001.desc_independent - } - } - theme = realm - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:lead_seljuk - animation = personality_honorable - } - - immediate = { - save_scope_as = seljuk_victim - random_sub_realm_county = { - limit = { - any_neighboring_county = { - exists = holder - holder.top_liege != scope:seljuk_victim - } - de_jure_liege = scope:fp3_seljuk_settle_target - } - alternative_limit = { - any_neighboring_county = { - exists = holder - holder.top_liege != scope:seljuk_victim - } - any_neighboring_county = { de_jure_liege = scope:fp3_seljuk_settle_target } - } - alternative_limit = { - any_neighboring_county = { - exists = holder - holder.top_liege != scope:seljuk_victim - } - } - random_county_province = { - limit = { - this != scope:fp3_seljuk_settle_target.title_capital_county.title_province - } - save_scope_as = spawn_location - } - } - save_scope_value_as = { - name = victim_strength_modifier - value = { - value = current_military_strength - divide = 10000 - add = 1.25 - } - } - scope:lead_seljuk = { - #move to the army spawn location, so it's less confusing when you want to see where they are - set_location = scope:spawn_location - var:seljuk_birthplace = { save_scope_as = seljuk_birthplace } - } - } - - option = { # Yes - Serve me well! - name = fp3_story_cycle_seljuks_invasion_events.0001.a_liege - - fp3_story_cycle_seljuks_invasion_events_grant_seljuks_land_effect = yes - scope:lead_seljuk = { - add_trait = loyal - culture = { - change_cultural_acceptance = { - target = scope:seljuk_victim.culture - value = 30 - desc = STEWARD_PROMOTE_CULTURE_ALLOWED_NOMAD_SETTLEMENT - } - } - } - create_seljuk_army_at_peace_effect = yes - debug_log = "Seljuk got the land and were vassalized" - ai_chance = { - base = 50 - - ai_value_modifier = { - ai_boldness = -0.5 - ai_compassion = 0.2 - ai_greed = -0.5 - ai_energy = -0.5 - ai_rationality = 0.3 - ai_sociability = 0.3 - } - } - } - - option = { # No - To war with you! - name = fp3_story_cycle_seljuks_invasion_events.0001.b - - # Start war - scope:lead_seljuk = { - start_war = { - casus_belli = fp3_seljuk_invasion_cb - target = root - target_title = scope:fp3_seljuk_settle_target - } - random_character_war = { save_scope_as = war } - } - - create_seljuk_army_effect = yes - debug_log = "Seljuk have to win a war" - ai_chance = { - base = 50 - - ai_value_modifier = { - ai_boldness = 0.5 - ai_greed = 0.5 - ai_energy = 0.5 - ai_vengefulness = 0.5 - } - } - } -} diff --git a/events/dlc/fp3/fp3_tax_collector_events_ola.txt b/events/dlc/fp3/fp3_tax_collector_events_ola.txt deleted file mode 100644 index 779a85417..000000000 --- a/events/dlc/fp3/fp3_tax_collector_events_ola.txt +++ /dev/null @@ -1,1416 +0,0 @@ -namespace = fp3_clan - -########EVENT INDEX############ -#fp3_clan.8008 - Bleeding them Dry, by Ola Jentzsch -#fp3_clan.8009 - Popular with the People, by Ola Jentzsch -#fp3_clan.8010 - Competent Qadis / More Magistrates, by Ola Jentzsch -#fp3_clan.8011 - A Proper Paymaster, by Ola Jentzsch -#fp3_clan.8012 - Auspicious Avarice, by Ola Jentzsch -#fp3_clan.8013 - The Burden of Tax Farming, by Ola Jentzsch - - -###########fp3_clan.8008 - Bleeding them Dry, by Ola Jentzsch############### -scripted_trigger tax_collector_8008_trigger = { - is_available_ai_adult = yes - tax_collector_aptitude = { - target = clan_tax_slot - value >= 4 - } - ai_honor <= low_positive_ai_value -} - -scripted_trigger house_unity_8008_member_trigger = { - is_available_ai_adult = yes - is_vassal_of = root - opinion = { - target = root - value <= 75 - } - reverse_opinion = { - target = scope:$SCOPE$ - value < 0 - } -} - -fp3_clan.8008 = { - type = character_event - title = fp3_clan.8008.t - desc = fp3_clan.8008.desc - theme = intrigue_intimidation_focus - - left_portrait = { - character = root - animation = personality_cynical - triggered_animation = { - trigger = { - OR = { - has_trait = ambitious - has_trait = sadistic - has_trait = greedy - } - } - animation = personality_greedy - } - } - right_portrait = { - character = scope:ambitious_tax_collector - animation = chancellor - triggered_animation = { - trigger = { ai_greed >= high_positive_ai_value } - animation = personality_dishonorable - } - } - lower_left_portrait = { - character = scope:beleaguered_clan_member - } - - override_background = { reference = corridor_night } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_healthy_adult = yes - - any_vassal = { #checking that it would be beneficial to gain the Extort Subjects decision - highest_held_title_tier >= tier_county - } - - any_tax_collector = { - tax_collector_8008_trigger = yes - save_temporary_scope_as = tax_collector_temp - } - - house = { - any_house_unity_member = { - house_unity_8008_member_trigger = { SCOPE = tax_collector_temp } - } - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - tax_collector_8008_trigger = yes - } - save_scope_as = ambitious_tax_collector - } - - house = { - random_house_unity_member = { - limit = { - house_unity_8008_member_trigger = { SCOPE = ambitious_tax_collector } - } - save_scope_as = beleaguered_clan_member - } - } - } - - option = { - name = fp3_clan.8008.a - - add_tyranny = medium_tyranny_value - - add_character_modifier = { - modifier = fp3_justification_for_taxation_modifier - years = 20 - } - - if = { - limit = { - NOR = { - has_perk = it_is_my_domain_perk - has_lifestyle = stewardship_lifestyle - } - } - custom_tooltip = unlock_extortion.tt - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:beleaguered_clan_member - VALUE = minor_unity_loss - DESC = clan_unity_extorted_vassal.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:ambitious_tax_collector = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 20 - } - } - - stress_impact = { - greedy = medium_stress_impact_loss - ambitious = minor_stress_impact_loss - just = medium_stress_impact_gain - honest = medium_stress_impact_gain - generous = medium_stress_impact_gain - content = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = 1 - ai_energy = 0.5 - ai_honor = -0.7 - ai_compassion = -0.2 - } - } - } - - option = { - name = fp3_clan.8008.b - - scope:beleaguered_clan_member = { - pay_short_term_gold = { - target = root - gold = medium_gold_value - } - add_opinion = { - target = root - modifier = extorted_me_opinion - } - } - - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:beleaguered_clan_member - VALUE = minor_unity_loss - DESC = clan_unity_extorted_vassal.desc - REVERSE_NON_HOUSE_TARGET = no - } - - scope:ambitious_tax_collector = { - add_opinion = { - target = root - modifier = trusted_me_opinion - opinion = 10 - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - just = minor_stress_impact_gain - generous = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.8 - ai_energy = 0.3 - ai_honor = -0.4 - ai_compassion = -0.7 - } - } - } - - option = { - name = fp3_clan.8008.c - - scope:ambitious_tax_collector = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - - stress_impact = { - content = minor_stress_impact_loss - greedy = medium_stress_impact_gain - ambitious = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.8 - ai_energy = 0.3 - ai_honor = -0.4 - ai_compassion = -0.7 - } - } - } -} - -#############fp3_clan.8009 - Popular with the People, by Ola Jentzsch############ -scripted_trigger fp3_clan_8009_province_trigger = { - has_holding_type = city_holding - barony = { - is_under_holy_order_lease = no - holder = { fp3_clan_suitable_holder_trigger = yes } - } -} - -scripted_trigger fp3_clan_suitable_holder_trigger = { - stewardship >= average_skill_rating - NOR = { - has_trait = sadistic - has_trait = honest - has_trait = content - has_trait = lazy - has_trait = arrogant - has_trait = callous - has_relation_friend = root - has_relation_lover = root - is_close_family_of = root - - } -} - -scripted_trigger tax_collector_8009_trigger = { - is_available_ai_adult = yes - tax_collector_aptitude = { - target = clan_tax_slot - value >= 2 - } - OR = { - ai_honor <= low_positive_ai_value - ai_compassion < low_positive_ai_value - ai_greed >= medium_positive_ai_value - } -} - -fp3_clan.8009 = { - type = character_event - title = fp3_clan.8009.t - desc = fp3_clan.8009.desc - theme = realm - - left_portrait = { - character = root - animation = boredom - triggered_animation = { - trigger = { - OR = { - has_trait = vengeful - has_trait = paranoid - has_trait = sadistic - } - } - animation = personality_vengeful - } - } - right_portrait = { - character = scope:righteous_tax_collector - animation = reading - } - lower_right_portrait = { - character = scope:corrupt_mayor - } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_healthy_adult = yes - - any_tax_collector = { - tax_collector_8009_trigger = yes - save_temporary_scope_as = tax_collector_temp - } - - any_held_county = { any_county_province = { fp3_clan_8009_province_trigger = yes } } - } - - cooldown = { years = 20 } - - immediate = { - random_tax_collector = { - limit = { - tax_collector_8009_trigger = yes - } - save_scope_as = righteous_tax_collector - } - - random_held_county = { - limit = { - any_county_province = { fp3_clan_8009_province_trigger = yes } - } - save_scope_as = fawazil_county - - random_county_province = { - limit = { fp3_clan_8009_province_trigger = yes } - barony = { - save_scope_as = fawazil_barony - - holder = { - save_scope_as = corrupt_mayor - } - } - } - } - - hidden_effect = { - scope:corrupt_mayor = { - add_gold = major_gold_value #this is the corruption money - add_gold = major_gold_value - } - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = eccentric - } - desc = fp3_clan.8009.a.eccentric - } - desc = fp3_clan.8009.a - } - } - - } - - scope:corrupt_mayor = { - pay_short_term_gold = { - target = root - gold = scope:corrupt_mayor.gold - } - death = { - death_reason = death_crucified - killer = root - } - } - - scope:fawazil_county = { - add_county_modifier = { - modifier = fp3_locals_infuriated_county_modifier - years = 8 - } - } - - stress_impact = { - sadistic = major_stress_impact_loss - vengeful = major_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 0.9 - ai_honor = -0.5 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_clan.8009.b - - scope:corrupt_mayor = { banish = yes } - - scope:fawazil_county = { - add_county_modifier = { - modifier = fp3_locals_intimidated_county_modifier - years = 4 - } - } - - stress_impact = { - forgiving = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.6 - ai_greed = 0.5 - ai_rationality = 0.4 - ai_compassion = -0.5 - } - } - } - - option = { - name = fp3_clan.8009.c - - add_character_modifier = { - modifier = fp3_looking_the_other_way_modifier - years = 6 - } - - stress_impact = { - base = medium_stress_impact_loss - shy = major_stress_impact_loss - vengeful = major_stress_impact_gain - wrathful = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -1 - ai_boldness = -0.7 - ai_rationality = 0.6 - ai_compassion = 0.5 - } - } - } -} - -################fp3_clan.8010 - Competent Qadis / More Magistrates, by Ola Jentzsch################# -scripted_trigger fp3_suitable_magistrate_courtier_trigger = { - save_temporary_scope_as = temp_magistrate - is_available_ai_adult = yes - any_child = { count < 1 } - NOT = { is_of_major_or_minor_interest_trigger = { CHARACTER = root } } - can_be_clergy_due_to_gender_trigger = yes - OR = { - learning >= high_skill_rating - stewardship >= high_skill_rating - } - scope:temp_magistrate != scope:$SCOPE$ -} - -scripted_trigger tax_collector_8010_trigger = { - is_available_ai_adult = yes - tax_collector_aptitude = { - target = clan_tax_slot - value >= 1 - } - tax_collector_aptitude = { #since this would make the modifier redundant - target = clan_tax_slot - value < 4 - } -} - -fp3_clan.8010 = { #More Magistrates - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { - has_religion = religion:islam_religion - } - desc = fp3_clan.8010_muslim.t - } - desc = fp3_clan.8010.t - } - } - desc = { - desc = fp3_clan.8010.desc_beginning - first_valid = { - triggered_desc = { - trigger = { - has_religion = religion:islam_religion - } - desc = fp3_clan.8010_muslim_version - } - desc = fp3_clan.8010_non_muslim_version - } - } - theme = corruption - - left_portrait = { - character = scope:competent_tax_collector - animation = stress - triggered_animation = { - trigger = { ai_vengefulness >= low_positive_ai_value } - animation = anger - } - } - right_portrait = { - character = root - animation = personality_rational - triggered_animation = { - trigger = { - OR = { - has_trait = lazy - has_trait = content - has_trait = greedy - has_trait = callous - } - } - animation = dismissal - } - } - - lower_left_portrait = { character = scope:capable_magistrate_candidate } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - is_available_healthy_adult = yes - - any_tax_collector = { - tax_collector_8010_trigger = yes - save_temporary_scope_as = competent_tax_collector_temp - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - tax_collector_8010_trigger = yes - } - save_scope_as = competent_tax_collector - } - - if = { - limit = { - any_courtier = { - fp3_suitable_magistrate_courtier_trigger = { SCOPE = competent_tax_collector } - } - } - random_courtier = { - limit = { - fp3_suitable_magistrate_courtier_trigger = { SCOPE = competent_tax_collector } - } - save_scope_as = capable_magistrate_candidate - } - } - } - - option = { - name = fp3_clan.8010.a - flavor = tax_farming_capable_courtier_flavor - - trigger = { - exists = scope:capable_magistrate_candidate - } - - remove_courtier_or_guest = scope:capable_magistrate_candidate - - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = slightly_disappointed_opinion - opinion = -10 - } - add_character_modifier = { - modifier = fp3_capable_magistrates_modifier - years = 25 - } - custom_tooltip = increase_aptitude.tt - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.5 - ai_sociability = 0.7 - ai_greed = 0.2 - } - } - } - - option = { - name = fp3_clan.8010.b - - remove_treasury_or_gold = major_treasury_or_gold_value - - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = trusted_me_opinion - opinion = 20 - } - add_character_modifier = { - modifier = fp3_capable_magistrates_modifier - years = 25 - } - custom_tooltip = increase_aptitude.tt - } - - stress_impact = { - greedy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - ai_rationality = 0.6 - } - } - } - - option = { - name = fp3_clan.8010.c - - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = fp3_resentful_opinion - opinion = -15 - } - } - - stress_impact = { - diligent = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - patient = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_rationality = -0.6 - ai_energy = -0.3 - } - } - } -} - -##################fp3_clan.8011 - A Proper Paymaster, by Ola Jentzsch########################### -scripted_trigger fp3_suitable_extra_tax_collector_competence_traits_trigger = { - is_available_ai_adult = yes - NOT = { has_trait = content } - OR = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 4 - } - AND = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 3 - } - OR = { - has_trait = ambitious - has_trait = diligent - has_trait = organizer - has_trait = overseer - has_trait = administrator - martial >= high_skill_rating - } - } - } -} - -fp3_clan.8011 = { #A Proper Paymaster - type = character_event - title = fp3_clan.8011.t - desc = fp3_clan.8011.desc - theme = stewardship_wealth_focus - - left_portrait = { - character = scope:competent_tax_collector - animation = personality_greedy - triggered_animation = { - trigger = { ai_boldness >= low_positive_ai_value } - animation = personality_honorable - } - } - right_portrait = { - character = root - animation = personality_content - triggered_animation = { - trigger = { - OR = { - has_trait = paranoid - has_trait = ambitious - has_trait = diligent - has_trait = brave - } - } - animation = dismissal - } - } - - lower_left_portrait = { character = scope:concerned_marshal } - - override_background = { reference = army_camp } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_healthy_adult = yes - - number_of_maa_regiments >= 1 - - exists = cp:councillor_marshal - - any_tax_collector = { - fp3_suitable_extra_tax_collector_competence_traits_trigger = yes - NOT = { - this = root.cp:councillor_marshal - } - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - fp3_suitable_extra_tax_collector_competence_traits_trigger = yes - } - save_scope_as = competent_tax_collector - } - - cp:councillor_marshal = { save_scope_as = concerned_marshal } - } - - option = { - name = fp3_clan.8011.a - - add_character_modifier = { - modifier = fp3_delegated_payments_modifier - years = 25 - } - - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 15 - } - add_character_modifier = { - modifier = fp3_army_influence_modifier - years = 25 - } - } - - scope:concerned_marshal = { - add_opinion = { - target = root - modifier = fp3_meddling_in_my_privileges_opinion - opinion = -30 - } - if = { - limit = { - NOT = { has_relation_rival = scope:competent_tax_collector } - } - set_relation_rival = { - target = scope:competent_tax_collector - reason = rival_over_position - } - } - } - - stress_impact = { - diligent = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - content = medium_stress_impact_gain - just = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.3 - ai_greed = 0.7 - ai_energy = -0.4 - } - } - } - - option = { - name = fp3_clan.8011.b - - duel = { - skill = diplomacy - value = average_skill_rating - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - modifier = { - add = 50 - scope:concerned_marshal = { - OR = { - has_trait = trusting - has_trait = humble - has_trait = content - } - } - } - - modifier = { - add = -50 - scope:concerned_marshal = { - OR = { - has_trait = paranoid - has_trait = arrogant - has_trait = ambitious - } - } - } - - modifier = { - add = -50 - scope:competent_tax_collector = { - OR = { - has_trait = greedy - has_trait = arrogant - has_trait = ambitious - } - } - } - - modifier = { - add = 50 - scope:concerned_marshal = { - OR = { - has_trait = humble - has_trait = trusting - has_trait = loyal - } - } - } - - desc = fp3_clan.8011.b.success - send_interface_toast = { - title = fp3_clan.8011.b.success.tt - left_icon = root - - add_character_modifier = { - modifier = fp3_delegated_payments_modifier - years = 10 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8011.b.failure - send_interface_toast = { - title = fp3_clan.8011.b.failure.tt - left_icon = root - - add_character_modifier = { - modifier = fp3_messy_payments_modifier - years = 25 - } - - scope:concerned_marshal = { - add_opinion = { - target = root - modifier = fp3_meddling_in_my_privileges_opinion - opinion = -30 - } - if = { - limit = { - NOT = { has_relation_rival = scope:competent_tax_collector } - } - set_relation_rival = { - target = scope:competent_tax_collector - reason = rival_over_position - } - } - } - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = fp3_frustrated_opinion - opinion = -10 - } - } - } - } - } - - stress_impact = { - trusting = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.8 - ai_honor = 0.8 - ai_vengefulness = -0.4 - } - } - } - - option = { - name = fp3_clan.8011.c - - scope:competent_tax_collector = { - add_opinion = { - target = root - modifier = fp3_resentful_opinion - opinion = -15 - } - } - - stress_impact = { - diligent = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_energy = -0.5 - ai_compassion = 0.2 - } - } - } -} - -##############fp3_clan.8012 - Auspicious Avarice, by Ola Jentzsch################### -scripted_trigger tax_collector_8012_trigger = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 3 - } - is_available_ai_adult = yes - ai_honor < medium_positive_ai_value -} - -scripted_trigger vassal_check_8012_trigger = { - has_any_good_relationship_with_root_trigger = no - is_ai = yes - reverse_opinion = { - target = scope:$SCOPE$ - value < 25 - } -} - -fp3_clan.8012 = { - type = character_event - title = fp3_clan.8012.t - desc = fp3_clan.8012.desc - theme = stewardship_wealth_focus - - left_portrait = { - character = root - animation = personality_compassionate - triggered_animation = { - trigger = { - OR = { - has_trait = ambitious - has_trait = sadistic - has_trait = greedy - } - } - animation = personality_dishonorable - } - } - right_portrait = { - character = scope:greedy_tax_collector - animation = personality_greedy - triggered_animation = { - trigger = { - OR = { - ai_greed >= high_positive_ai_value - ai_honor < low_positive_ai_value - } - } - animation = schadenfreude - } - } - lower_left_portrait = { - character = scope:extorted_vassal - } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_healthy_adult = yes - - any_tax_collector = { - tax_collector_8012_trigger = yes - save_temporary_scope_as = greedy_tax_collector_temp - any_tax_collector_vassal = { - vassal_check_8012_trigger = { SCOPE = greedy_tax_collector_temp } - } - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - tax_collector_8012_trigger = yes - save_temporary_scope_as = greedy_tax_collector_temp - any_tax_collector_vassal = { - vassal_check_8012_trigger = { SCOPE = greedy_tax_collector_temp } - } - } - save_scope_as = greedy_tax_collector - random_tax_collector_vassal = { - limit = { - vassal_check_8012_trigger = { SCOPE = greedy_tax_collector_temp } - } - save_scope_as = extorted_vassal - } - } - - hidden_effect = { - scope:extorted_vassal = { - pay_short_term_gold = { - target = scope:greedy_tax_collector - gold = medium_gold_value - } - } - } - - save_scope_value_as = { - name = vassal_medium_gold_halved - value = { - value = scope:extorted_vassal.medium_gold_value - divide = 2 - } - } - } - - option = { - name = fp3_clan.8012.a - - scope:greedy_tax_collector = { - pay_short_term_gold = { - target = root - gold = scope:extorted_vassal.medium_gold_value - } - } - - scope:extorted_vassal = { - add_opinion = { - target = root - modifier = extorted_me_opinion - } - } - - stress_impact = { - greedy = medium_stress_impact_loss - generous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_compassion = -0.4 - ai_honor = -0.4 - } - } - } - - option = { - name = fp3_clan.8012.b - - add_piety = medium_piety_gain - - scope:greedy_tax_collector = { - remove_short_term_gold = scope:extorted_vassal.medium_gold_value - } - - stress_impact = { - zealous = minor_stress_impact_loss - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - ai_compassion = 1 - ai_rationality = 0.6 - } - } - } - - option = { - name = fp3_clan.8012.c - - add_prestige = minor_prestige_gain - - scope:greedy_tax_collector = { - pay_short_term_gold = { - target = scope:extorted_vassal - gold = scope:vassal_medium_gold_halved - } - } - scope:greedy_tax_collector = { - pay_short_term_gold = { - target = root - gold = scope:vassal_medium_gold_halved - } - } - - scope:extorted_vassal = { - add_opinion = { - target = root - modifier = fp3_frustrated_opinion - opinion = -10 - } - } - - stress_impact = { - generous = minor_stress_impact_loss - forgiving = minor_stress_impact_loss - vengeful = minor_stress_impact_gain - greedy = minor_stress_impact_gain - - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_vengefulness = -0.5 - ai_compassion = 0.5 - ai_rationality = 0.8 - } - } - } -} - -############fp3_clan.8013 - The Burden of Tax Farming, by Ola Jentzsch######### -scripted_trigger tax_collector_8013_trigger = { - tax_collector_aptitude = { - target = clan_tax_slot - value >= 2 - } - is_available_ai_adult = yes - has_any_bad_relationship_with_root_trigger = no -} - -fp3_clan.8013 = { - type = character_event - title = fp3_clan.8013.t - desc = fp3_clan.8013.desc - theme = learning_scholarship_focus - - left_portrait = { - character = root - animation = personality_forgiving - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = sadistic - has_trait = arrogant - has_trait = vengeful - has_trait = wrathful - } - } - animation = personality_cynical - } - } - right_portrait = { - character = scope:stressed_tax_collector - animation = boredom - triggered_animation = { - trigger = { - ai_energy >= low_positive_ai_value - } - animation = stress - } - } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed = yes - is_available = yes - is_healthy = yes - age > 10 - - any_tax_collector = { - tax_collector_8013_trigger = yes - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - tax_collector_8013_trigger = yes - } - save_scope_as = stressed_tax_collector - } - - scope:stressed_tax_collector = { - add_stress = major_stress_gain - } - } - - option = { # Assuage tax collector's stress - name = fp3_clan.8013.a - - duel = { - skill = stewardship - target = scope:stressed_tax_collector - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - max = 40 - min = -40 - } - - modifier = { - add = 10 - scope:stressed_tax_collector = { - OR = { - has_trait = diligent - has_trait = ambitious - has_trait = patient - has_trait = trusting - } - } - } - - modifier = { - add = -10 - scope:stressed_tax_collector = { - OR = { - has_trait = lazy - has_trait = paranoid - has_trait = arrogant - } - } - } - - modifier = { - add = -10 - scope:stressed_tax_collector = { - opinion = { - target = root - value <= 25 - } - } - } - - desc = fp3_clan.8013.a.success - send_interface_toast = { - title = fp3_clan.8013.a.success.tt - left_icon = root - - if = { - limit = { - NOT = { has_relation_friend = scope:stressed_tax_collector } - } - progress_towards_friend_effect = { - CHARACTER = scope:stressed_tax_collector - REASON = friend_reassurance - OPINION = 25 - } - } - - scope:stressed_tax_collector = { - add_learning_skill = 1 - add_stewardship_skill = 1 - add_stress = medium_stress_impact_loss - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - max = 40 - min = -40 - } - - desc = fp3_clan.8013.a.failure - send_interface_toast = { - title = fp3_clan.8013.a.failure.tt - left_icon = root - - scope:stressed_tax_collector = { - add_character_modifier = { - modifier = fp3_cutting_corners_modifier - years = 10 - } - } - } - } - } - - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = -0.5 - ai_energy = 0.3 - ai_sociability = 0.7 - ai_compassion = 0.8 - } - } - } - - option = { # Threaten tax collector with violence - name = fp3_clan.8013.b - - trigger = { - scope:stressed_tax_collector = { - NOT = { has_trait = brave } # Brave tax collectors won't be intimidated - } - } - - scope:stressed_tax_collector = { - add_stress = major_stress_gain - add_opinion = { - target = root - modifier = cruelty_opinion - opinion = -20 - } - add_learning_skill = 1 - add_stewardship_skill = 1 - } - - stress_impact = { - wrathful = minor_stress_impact_loss - compassionate = medium_stress_impact_gain - calm = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_boldness = 0.4 - ai_sociability = -0.6 - ai_compassion = -0.7 - } - } - } - - option = { #Just move on - name = fp3_clan.8013.c - - stress_impact = { - compassionate = medium_stress_impact_gain - diligent = medium_stress_impact_gain - curious = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_energy = -0.5 - ai_sociability = -1 - ai_vengefulness = 0.3 - } - } - } -} diff --git a/events/dlc/fp3/fp3_tax_collector_flavor_events.txt b/events/dlc/fp3/fp3_tax_collector_flavor_events.txt deleted file mode 100644 index 3d4c5a467..000000000 --- a/events/dlc/fp3/fp3_tax_collector_flavor_events.txt +++ /dev/null @@ -1,1063 +0,0 @@ -namespace = fp3_clan - -# FP3: Additional Tax Collector Flavor Events -# by Chad Uhl - -##################################################################### -# Worth more than Gold? # -# Tax Collector learns of a secret held by one of their taxees # -# by Chad Uhl # -##################################################################### -fp3_clan.1000 = { - type = character_event - title = fp3_clan.1000.t - desc = fp3_clan.1000.desc - theme = realm - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:target_tax_collector - animation = personality_dishonorable - } - lower_center_portrait = scope:secret_holder - - trigger = { - has_fp3_dlc_trigger = yes - is_valid_for_narrow_yearly_events = yes - # Do any of their taxed vassals have a secret that you don't know about? - any_tax_collector = { - save_temporary_scope_as = temp_tax_collector - tax_slot = { - any_tax_slot_vassal = { - # Don't let the tax collector tell on themself - this != scope:temp_tax_collector - # Ensure they have a secret that ROOT doesn't already know - any_secret = { - NOT = { is_known_by = root } - } - } - } - } - } - - immediate = { - random_tax_collector = { - limit = { - save_temporary_scope_as = temp_tax_collector - tax_slot = { - any_tax_slot_vassal = { - # Don't let the tax collector tell on themself - this != scope:temp_tax_collector - # Ensure they have a secret that ROOT doesn't already know - any_secret = { - NOT = { is_known_by = root } - } - } - } - } - weight = { - base = 1 - modifier = { # Base tax collector weighting - add = preferred_tax_collector_modifier - } - modifier = { # Diligent or Ambitious tax collectors are more likely - add = 10 - OR = { - has_trait = diligent - has_trait = ambitious - } - } - modifier = { # Being patient is also useful - add = 5 - has_trait = patient - } - modifier = { # And so is being stubborn - add = 5 - has_trait = stubborn - } - modifier = { # And so is being deceitful - add = 5 - has_trait = deceitful - } - } - save_scope_as = target_tax_collector - tax_slot = { - random_tax_slot_vassal = { - limit = { - any_secret = { - NOT = { is_known_by = root } - } - this != scope:target_tax_collector - } - save_scope_as = secret_holder - random_secret = { - limit = { - NOT = { is_known_by = root } - } - save_scope_as = target_secret - reveal_to = root - hidden_effect = { reveal_to = scope:target_tax_collector } - } - } - } - } - } - - option = { # Some coin for your troubles - name = fp3_clan.1000.a - trigger = { - short_term_gold > minor_gold_value - } - show_as_unavailable = { - short_term_gold < minor_gold_value - } - pay_short_term_gold = { - target = scope:target_tax_collector - gold = minor_gold_value - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = grateful_opinion - opinion = 30 - } - - ai_chance = { - base = 30 - } - - stress_impact = { - #paranoid = medium_stress_impact_loss - } - } - - option = { # take this artifact - name = fp3_clan.1000.b - trigger = { - any_character_artifact = { - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:target_tax_collector } - } - } - show_as_unavailable = { - always = yes - } - - random_character_artifact = { - limit = { - artifact_can_be_gift_to_trigger = { RECIPIENT = scope:target_tax_collector } - } - save_scope_as = target_artifact - set_owner = scope:target_tax_collector - add_artifact_history = { - type = given - actor = root - recipient = scope:target_tax_collector - } - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = grateful_opinion - opinion = 40 - } - - ai_chance = { - base = 30 - } - - stress_impact = { - #paranoid = medium_stress_impact_loss - } - } - - option = { # Wow thanks for this tasty info - name = fp3_clan.1000.c - reverse_add_opinion = { - target = scope:target_tax_collector - # labelled spouse, but is generic and can work in this situation - modifier = spouse_praised_me_opinion - } - - ai_chance = { - base = 30 - } - - stress_impact = { - paranoid = medium_stress_impact_loss - } - } -} - -##################################################################### -# GetHerHis Cup Runneth Over # -# Tax Collector is embezzling money # -# by Chad Uhl # -##################################################################### -fp3_clan.1010 = { - type = character_event - title = fp3_clan.1010.t - desc = fp3_clan.1010.desc - theme = realm - - left_portrait = { - character = scope:steward - animation = thinking - } - right_portrait = { - character = scope:target_tax_collector - animation = shame - } - - trigger = { - has_fp3_dlc_trigger = yes - is_valid_for_narrow_yearly_events = yes - # Check that tax collector is not trustworthy - exists = cp:councillor_steward - any_tax_collector = { - NOT = { this = root.cp:councillor_steward } - root = { - NOT = { has_imprisonment_reason = prev } - } - } - } - - cooldown = { years = 10 } - - immediate = { - cp:councillor_steward = { save_scope_as = steward } - random_tax_collector = { - limit = { - this != scope:steward - } - weight = { - base = 1 - modifier = { # Base tax collector weighting - add = preferred_tax_collector_modifier - } - modifier = { # Deceitful or Ambitious tax collectors are more likely - add = 10 - OR = { - has_trait = deceitful - has_trait = ambitious - } - } - modifier = { # And so is being stubborn - add = 5 - has_trait = stubborn - } - } - save_scope_as = target_tax_collector - } - # Give valid imprisonment reason - add_opinion = { - target = scope:target_tax_collector - modifier = embezzled_opinion - } - # Determine how much money they embezzled - set_variable = { - name = embezzled_gold - value = { - value = 10 - multiply = root.primary_title.tier - # Mult the number of vassals they have in that tax slot - multiply = { - value = 1 - scope:target_tax_collector.tax_slot = { - every_tax_slot_vassal = { - add = 1 - } - } - divide = 2 - min = 1 - } - } - } - } - - option = { # Demand your money back - name = fp3_clan.1010.a - # Skill challenge - duel = { - skills = { stewardship diplomacy } - target = scope:target_tax_collector - # Success: you get your money back - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = fp3_clan.1010.a.success - send_interface_toast = { - title = fp3_clan.1010.a.success - left_icon = root - right_icon = scope:target_tax_collector - # Apply success effects - # you get the gold; wahoo - add_treasury_or_gold = root.var:embezzled_gold - } - } - # Failure: lower opinion from tax collector - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = fp3_clan.1010.a.failure - send_interface_toast = { - title = fp3_clan.1010.a.failure - left_icon = root - right_icon = scope:target_tax_collector - # Apply failure effects - # Lower opinion to affect tax collector aptitude - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = was_scolded_opinion - } - } - } - } - - ai_chance = { - base = 33 - modifier = { - has_trait = greedy - add = 50 - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - } - } - - option = { # Opportunity plus instinct equals profit - name = fp3_clan.1010.b - flavor = fp3_clan.1010.b.flavor - # Opinion gain to make the tax collector better at their job - reverse_add_opinion = { - modifier = grateful_opinion - opinion = 35 - target = scope:target_tax_collector - } - add_character_modifier = { - modifier = fp3_cunning_tax_collectors - years = 30 - } - - ai_chance = { - base = 33 - modifier = { - has_trait = generous - add = 50 - } - } - } - - option = { # Don't let it happen again - name = fp3_clan.1010.c - # Lower opinion to affect tax collector aptitude - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = whipped_me_opinion - } - add_dread = medium_dread_gain - - ai_chance = { - base = 33 - modifier = { - OR = { - has_trait = sadistic - has_trait = wrathful - has_trait = vengeful - } - add = 50 - } - modifier = { - OR = { - has_trait = calm - has_trait = content - has_trait = generous - has_trait = forgiving - has_trait = compassionate - } - factor = 0 - } - modifier = { - dread >= 50 - add = -30 - } - } - - stress_impact = { - calm = minor_stress_impact_gain - content = minor_stress_impact_gain - generous = minor_stress_impact_gain - forgiving = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - } - } - - after = { - # Variable cleanup - remove_variable = embezzled_gold - } -} - -##################################################################### -# Practical Learning # -# Your tax collector improves skill on the job # -# by Chad Uhl # -##################################################################### -fp3_clan.1020 = { - type = character_event - title = fp3_clan.1020.t - desc = { - desc = fp3_clan.1020.desc - first_valid = { - triggered_desc = { - trigger = { var:skill_to_increase = flag:stewardship } - desc = fp3_clan.1020.stewardship - } - triggered_desc = { - trigger = { var:skill_to_increase = flag:intrigue } - desc = fp3_clan.1020.intrigue - } - triggered_desc = { - trigger = { var:skill_to_increase = flag:diplomacy } - desc = fp3_clan.1020.diplomacy - } - } - desc = fp3_clan.1020.outro - } - theme = realm - - left_portrait = { - character = scope:steward - animation = personality_content - } - right_portrait = { - character = scope:target_tax_collector - animation = happiness - } - - cooldown = { years = 5 } - - trigger = { - has_fp3_dlc_trigger = yes - is_valid_for_narrow_yearly_events = yes - exists = cp:councillor_steward - employs_tax_collector = yes - any_tax_collector = { - NOT = { this = root.cp:councillor_steward } - } - } - - immediate = { - cp:councillor_steward = { save_scope_as = steward } - random_tax_collector = { - limit = { this != scope:steward } - weight = { - base = 1 - modifier = { # Base tax collector weighting - add = preferred_tax_collector_modifier - } - modifier = { - add = 10 - has_trait = diligent - } - modifier = { - add = 10 - has_trait = ambitious - } - modifier = { - add = 5 - has_trait = stubborn - } - } - save_scope_as = target_tax_collector - } - random_list = { - 1 = { - set_variable = { - name = skill_to_increase - value = flag:stewardship - } - } - 1 = { - set_variable = { - name = skill_to_increase - value = flag:intrigue - } - } - 1 = { - set_variable = { - name = skill_to_increase - value = flag:diplomacy - } - } - } - } - - option = { # Well done! - name = fp3_clan.1020.a - reverse_add_opinion = { - modifier = spouse_praised_me_opinion - target = scope:target_tax_collector - } - scope:target_tax_collector = { increase_tax_collector_skill = yes } - - ai_chance = { - base = 30 - modifier = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = gregarious - has_trait = humble - has_trait = just - } - add = 50 - } - modifier = { - OR = { - has_trait = arrogant - has_trait = callous - } - factor = 0 - } - } - - stress_impact = { - arrogant = minor_stress_impact_gain - callous = minor_stress_impact_gain - generous = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - } - } - - option = { # Teach the others your skills - name = fp3_clan.1020.b - trigger = { - any_tax_collector = { - count >= 2 - } - } - scope:target_tax_collector = { increase_tax_collector_skill = yes } - every_tax_collector = { - custom = fp3_clan.1020.every_tax_collector - limit = { - this != scope:target_tax_collector - } - random = { - chance = 30 - increase_tax_collector_skill = yes - root = { - add_to_variable_list = { - name = improved_tax_collectors - target = prev - } - } - } - } - hidden_effect = { - if = { # If any tax collectors were improved, send a toast - limit = { - any_in_list = { - variable = improved_tax_collectors - count >= 1 - } - } - every_in_list = { - variable = improved_tax_collectors - root = { - if = { - limit = { - NOT = { has_variable = num_improved_tax_collectors } - } - set_variable = { - name = num_improved_tax_collectors - value = 0 - } - } - change_variable = { - name = num_improved_tax_collectors - add = 1 - } - } - } - send_interface_toast = { - title = fp3_clan.1020.b.improved_tax_collectors - left_icon = scope:target_tax_collector - custom_tooltip = fp3_clan.1020.b.improved_tax_collectors.desc - } - } - else = { - send_interface_toast = { - title = fp3_clan.1020.b.none_improved - left_icon = scope:target_tax_collector - custom_tooltip = fp3_clan.1020.b.none_improved.desc - } - } - } - - ai_chance = { - base = 40 - } - } - - option = { # Deny recognition - name = fp3_clan.1020.c - scope:target_tax_collector = { increase_tax_collector_skill = yes } - reverse_add_opinion = { - modifier = neglected_opinion - target = scope:target_tax_collector - opinion = -10 - } - add_prestige = medium_prestige_gain - - ai_chance = { - base = 30 - modifier = { - OR = { - has_trait = callous - has_trait = arrogant - } - add = 50 - } - modifier = { - OR = { - has_trait = compassionate - has_trait = generous - has_trait = gregarious - has_trait = humble - has_trait = just - } - factor = 0 - } - } - - stress_impact = { - arrogant = minor_stress_impact_loss - callous = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - } - } - - after = { - remove_variable = skill_to_increase - remove_variable = improved_tax_collectors - if = { - limit = { exists = var:num_improved_tax_collectors } - remove_variable = num_improved_tax_collectors - } - } -} - -##################################################################### -# Tax Dispute # -# Tax collector in conflict with vassal, you can choose sides # -# by Chad Uhl # -##################################################################### -scripted_trigger is_valid_vassal_1030_trigger = { - is_available_ai_adult = yes - # we wanna dunk on them, not their diarch - has_active_diarchy = no -} - -fp3_clan.1030 = { - type = character_event - title = fp3_clan.1030.t - desc = fp3_clan.1030.desc - theme = realm - - left_portrait = { - character = scope:target_taxed_vassal - animation = anger - } - right_portrait = { - character = scope:target_tax_collector - animation = disapproval - } - - trigger = { - has_fp3_dlc_trigger = yes - is_valid_for_narrow_yearly_events = yes - # ensure we have a proper vassal to pull in - any_tax_collector = { - save_temporary_scope_as = temp_tax_collector - tax_slot = { - any_tax_slot_vassal = { - is_valid_vassal_1030_trigger = yes - faith = { - this != scope:temp_tax_collector.faith - faith_hostility_level = { - target = scope:temp_tax_collector.faith - value > faith_fully_accepted_level - } - } - } - } - } - } - - immediate = { - random_tax_collector = { - limit = { - save_temporary_scope_as = temp_tax_collector - tax_slot = { - any_tax_slot_vassal = { - is_valid_vassal_1030_trigger = yes - faith = { - this != scope:temp_tax_collector.faith - faith_hostility_level = { - target = scope:temp_tax_collector.faith - value > faith_fully_accepted_level - } - } - } - } - } - save_scope_as = target_tax_collector - tax_slot = { - random_tax_slot_vassal = { - limit = { - is_valid_vassal_1030_trigger = yes - faith = { - this != scope:target_tax_collector.faith - faith_hostility_level = { - target = scope:target_tax_collector.faith - value > faith_fully_accepted_level - } - } - } - weight = { # Grab the tax slot vassal with the worst stewardship - base = 1 - modifier = { - add = { - value = stewardship - multiply = -1 - } - } - } - save_scope_as = target_taxed_vassal - } - } - } - } - - option = { # Side with the vassal - name = fp3_clan.1030.a - fire_tax_collector = scope:target_tax_collector - reverse_add_opinion = { - target = scope:target_taxed_vassal - modifier = feast_sided_with_me_in_my_fight_opinion - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = feast_sided_against_me_in_my_fight_opinion - } - if = { # add a favor hook if we can - limit = { - can_add_hook = { - target = scope:target_taxed_vassal - type = favor_hook - } - } - add_hook = { - target = scope:target_taxed_vassal - type = favor_hook - years = 3 - } - } - add_character_modifier = { - modifier = fp3_sided_with_different_faith_vassal_tax_dispute - years = 10 - } - scope:target_taxed_vassal.faith = { - change_fervor = { - # Since this event is fired repeatedly, the miniscule value is halved - value = { - value = miniscule_fervor_gain - divide = 2 - } - desc = tax_collector_fired_on_religious_grounds - } - } - - ai_chance = { - base = 50 - modifier = { - root.faith = scope:target_taxed_vassal.faith - add = 50 - } - } - - stress_impact = { - base = minor_stress_impact_gain - } - } - - option = { # Side with the tax collector - name = fp3_clan.1030.b - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = feast_sided_with_me_in_my_fight_opinion - } - reverse_add_opinion = { - target = scope:target_taxed_vassal - modifier = feast_sided_against_me_in_my_fight_opinion - } - if = { # add a favor hook if we can - limit = { - can_add_hook = { - target = scope:target_tax_collector - type = favor_hook - } - } - add_hook = { - target = scope:target_tax_collector - type = favor_hook - years = 3 - } - } - add_character_modifier = { - modifier = fp3_sided_with_tax_collector_tax_dispute - years = 10 - } - - ai_chance = { - base = 50 - } - } - - option = { # Resolve it yourselves - name = fp3_clan.1030.c - reverse_add_opinion = { - target = scope:target_taxed_vassal - modifier = neglected_opinion - opinion = -10 - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = neglected_opinion - opinion = -10 - } - - ai_chance = { - base = 10 - modifier = { - has_trait = lazy - add = 100 - } - } - - stress_impact = { - base = minor_stress_impact_loss - lazy = medium_stress_impact_loss - } - } -} - -##################################################################### -# Mismanaged Land # -# Tax collector makes you aware of someone mismanaging their lands # -# by Chad Uhl # -##################################################################### -fp3_clan.1040 = { - type = character_event - title = fp3_clan.1040.t - desc = fp3_clan.1040.desc - theme = realm - - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:target_tax_collector - animation = happiness - } - lower_center_portrait = scope:target_taxed_vassal - - trigger = { - has_fp3_dlc_trigger = yes - is_valid_for_narrow_yearly_events = yes - # ensure we have a proper vassal to pull in - any_tax_collector = { - tax_slot = { - any_tax_slot_vassal = { - is_valid_vassal_1030_trigger = yes - } - } - } - } - - cooldown = { years = 10 } - - immediate = { - random_tax_collector = { - limit = { - tax_slot = { - any_tax_slot_vassal = { - is_valid_vassal_1030_trigger = yes - } - } - } - save_scope_as = target_tax_collector - tax_slot = { - random_tax_slot_vassal = { - limit = { is_valid_vassal_1030_trigger = yes } - weight = { # Grab the tax slot vassal with the worst stewardship - base = 1 - modifier = { - add = { - value = stewardship - multiply = -1 - } - } - } - save_scope_as = target_taxed_vassal - } - } - } - } - - option = { # Educate everyone on your next round - name = fp3_clan.1040.a - add_character_modifier = { - modifier = fp3_tax_collector_become_teacher - years = 10 - } - - ai_chance = { - base = 60 - } - } - - option = { # I'll go help them myself - name = fp3_clan.1040.b - # Skill challenge - duel = { - skill = stewardship - value = { - value = 0 - if = { # easier if you have the stewardship lifestyle selected - limit = { has_lifestyle = stewardship_lifestyle } - add = medium_skill_rating - } - else = { - add = high_skill_rating - } - } - # Success: they improve their skill and you get some money/xp - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = fp3_clan.1040.b.success - send_interface_toast = { - title = fp3_clan.1040.b.success - left_icon = scope:target_tax_collector - right_icon = scope:target_taxed_vassal - # Apply success effects - add_treasury_or_gold = medium_treasury_or_gold_value - scope:target_taxed_vassal = { add_stewardship_skill = 1 } - if = { - limit = { - has_lifestyle = stewardship_lifestyle - } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = respect_opinion - opinion = 15 - } - } - } - # Failure: lower opinion from tax collector - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = fp3_clan.1040.b.failure - send_interface_toast = { - title = fp3_clan.1040.b.failure - left_icon = scope:target_tax_collector - right_icon = scope:target_taxed_vassal - # Apply failure effects - if = { - limit = { - has_lifestyle = stewardship_lifestyle - } - add_stewardship_lifestyle_xp = minor_lifestyle_xp - } - reverse_add_opinion = { - target = scope:target_tax_collector - modifier = disappointed_opinion - opinion = -15 - } - } - } - } - ai_chance = { - base = 0 - } - } - - option = { # Perhaps a physical reminder of my authority is needed - name = fp3_clan.1040.c - reverse_add_opinion = { - modifier = whipped_me_opinion - target = scope:target_taxed_vassal - } - add_dread = medium_dread_gain - - ai_chance = { - base = 50 - modifier = { - OR = { - has_trait = sadistic - has_trait = wrathful - has_trait = vengeful - } - add = 50 - } - modifier = { - OR = { - has_trait = calm - has_trait = content - has_trait = generous - has_trait = forgiving - has_trait = compassionate - } - factor = 0 - } - modifier = { - dread >= 50 - add = -30 - } - } - - stress_impact = { - calm = minor_stress_impact_gain - content = minor_stress_impact_gain - generous = minor_stress_impact_gain - forgiving = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - sadistic = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - } - } -} diff --git a/events/dlc/fp3/fp3_yearly_events_eren.txt b/events/dlc/fp3/fp3_yearly_events_eren.txt deleted file mode 100644 index 2e2a1b293..000000000 --- a/events/dlc/fp3/fp3_yearly_events_eren.txt +++ /dev/null @@ -1,3134 +0,0 @@ -namespace = fp3_yearly - -# Daylight Censors (The Drunkenness of Ali Nushtgin) -# Go out drunk/high in broad daylight and risk being caught by your liege's censors? -fp3_yearly.2000 = { - type = character_event - title = fp3_yearly.2000.t - desc = { - triggered_desc = { - trigger = { exists = scope:out_late_drinking } - desc = fp3_yearly.2000.desc_drinking - } - triggered_desc = { - trigger = { exists = scope:out_late_hash } - desc = fp3_yearly.2000.desc_hashish - } - desc = fp3_yearly.2000.desc_warning - } - theme = crown - override_background = { - reference = alley_day - } - left_portrait = { - character = root - animation = laugh - } - right_portrait = { - character = scope:cautious_vassal - animation = worry - } - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed_or_landless_administrative = yes - OR = { - has_trait = drunkard - has_trait = hashishiyah - } - liege ?= { - # You have at least one fellow vassal who would partake in alcohol/hashish with you (at least in moderation) - any_vassal = { - is_ai = yes - NOR = { - this = root - has_trait = zealous - } - } - # Faith must condemn drunkard/hashishiyah - faith = { - religion = religion:islam_religion - NOR = { - trait_is_virtue = drunkard - trait_is_virtue = hashishiyah - } - } - # Liege should not be a hypocrite - NOR = { - has_trait = drunkard - has_trait = hashishiyah - } - # Liege hasn't had the follow-up event in the last 5 years - NOT = { has_character_flag = had_event_fp3_yearly_2001 } - } - } - - immediate = { - # Are we out late drinking or hashishing? - random_list = { - 1 = { - trigger = { - has_trait = drunkard - NOT = { faith = { trait_is_virtue = drunkard } } - } - save_scope_value_as = { name = out_late_drinking value = yes } - } - 1 = { - trigger = { - has_trait = hashishiyah - NOT = { faith = { trait_is_virtue = hashishiyah } } - } - save_scope_value_as = { name = out_late_hash value = yes } - } - } - liege = { - save_scope_as = prudish_liege - random_vassal = { - limit = { - NOR = { - this = root - has_trait = zealous - } - } - save_scope_as = cautious_vassal - } - } - add_stress = minor_stress_impact_loss - } - - option = { # Stay inside, be cautious - name = fp3_yearly.2000.a - add_prestige = minor_prestige_loss - stress_impact = { - arrogant = minor_stress_impact_gain - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { ai_boldness = -0.5 } - } - } - - option = { # Risk going out - name = fp3_yearly.2000.b - flavor = fp3_yearly.2000.b_flavor - if = { - limit = { scope:prudish_liege = { is_ai = yes } } - random_list = { - 50 = { # You get away with it - show_chance = no - desc = fp3_yearly.2000.b_success - send_interface_toast = { - title = fp3_yearly.2000.b_success - left_icon = root - } - } - 50 = { # You get caught and flogged - show_chance = no - desc = fp3_yearly.2000.b_failure - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2000.b_failure - left_icon = root - increase_wounds_effect = { REASON = flogged_by_censors } - } - hidden_effect = { - add_opinion = { - modifier = fp3_flogged_me - target = scope:prudish_liege - } - } - } - } - } - # If liege is player, then trigger event for them to decide what to do with this uppity vassal - else = { - show_as_tooltip = { - random_list = { - # This is a tooltip-only version of the above to communicate the possible consequences of this option - 1 = { - show_chance = no - desc = fp3_yearly.2000.b_success - } - 1 = { - show_chance = no - desc = fp3_yearly.2000.b_failure - increase_wounds_effect = { REASON = flogged_by_censors } - } - } - } - save_scope_as = intoxicated - scope:prudish_liege = { trigger_event = fp3_yearly.2001 } - } - stress_impact = { - craven = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { ai_boldness = 0.5 } - # This option is more interesting for players, so make AI attempt it more often if the liege is a player - modifier = { - scope:prudish_liege = { is_ai = no } - add = 100 - } - } - } -} - -scripted_trigger fp3_yearly_2001_is_valid_druggie = { - is_available_ai_adult = yes - is_of_major_interest_to_root_trigger = yes - OR = { - has_trait = hashishiyah - has_trait = drunkard - } - NOT = { has_trait = craven } -} - -# Public Intoxication -# Your vassal/courtier/family is drunk in broad daylight, have them flogged or no? -fp3_yearly.2001 = { - type = character_event - title = fp3_yearly.2001.t - desc = { - desc = fp3_yearly.2001.desc_intro - triggered_desc = { - trigger = { exists = scope:out_late_drinking } - desc = fp3_yearly.2001.desc_drinking - } - triggered_desc = { - trigger = { exists = scope:out_late_hash } - desc = fp3_yearly.2001.desc_hashish - } - desc = fp3_yearly.2001.desc_outro - } - theme = crown - override_background = { - reference = alley_day - } - left_portrait = { - character = scope:intoxicated - animation = laugh - } - - trigger = { - has_fp3_dlc_trigger = yes - is_landed_or_landless_administrative = yes - # This event can be fired from either the yearly pulse or fp3_yearly.2000 - # If the former is true, then the offending druggie does not yet exist and we need to find one - OR = { - exists = scope:intoxicated - AND = { - NOT = { has_character_flag = had_event_fp3_yearly_2001 } - religion = religion:islam_religion - NOR = { - has_trait = drunkard - has_trait = hashishiyah - } - OR = { - any_vassal = { fp3_yearly_2001_is_valid_druggie = yes } - any_courtier_or_guest = { fp3_yearly_2001_is_valid_druggie = yes } - any_consort = { fp3_yearly_2001_is_valid_druggie = yes } - } - } - } - } - - immediate = { - save_scope_as = prudish_liege - if = { - limit = { NOT = { exists = scope:intoxicated } } - # 10 year cooldown if fired from yearly pulse - add_character_flag = { - flag = had_event_fp3_yearly_2001 - years = 10 - } - every_vassal = { - limit = { fp3_yearly_2001_is_valid_druggie = yes } - add_to_temporary_list = valid_druggies - } - every_courtier_or_guest = { - limit = { fp3_yearly_2001_is_valid_druggie = yes } - add_to_temporary_list = valid_druggies - } - every_consort = { - limit = { fp3_yearly_2001_is_valid_druggie = yes } - add_to_temporary_list = valid_druggies - } - random_in_list = { - list = valid_druggies - save_scope_as = intoxicated - } - random_list = { - 1 = { - trigger = { - scope:intoxicated = { - has_trait = drunkard - NOT = { faith = { trait_is_virtue = drunkard } } - } - } - save_scope_value_as = { name = out_late_drinking value = yes } - } - 1 = { - trigger = { - scope:intoxicated = { - has_trait = hashishiyah - NOT = { faith = { trait_is_virtue = hashishiyah } } - } - } - save_scope_value_as = { name = out_late_hash value = yes } - } - } - } - } - - option = { # Flog them - name = fp3_yearly.2001.a - scope:intoxicated = { - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2000.b_failure - left_icon = root - increase_wounds_effect = { REASON = flogged_by_censors } - } - } - add_piety = minor_piety_gain - reverse_add_opinion = { - target = scope:intoxicated - modifier = fp3_flogged_me - } - if = { - limit = { has_relation_friend = scope:intoxicated } - remove_relation_friend = scope:intoxicated - } - stress_impact = { - sadistic = minor_stress_impact_loss - compassionate = minor_stress_impact_gain - forgiving = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { ai_zeal = 0.5 } - } - } - - option = { # Ignore them - name = fp3_yearly.2001.b - add_piety = medium_piety_loss - scope:intoxicated = { - send_interface_toast = { - title = fp3_yearly.2000.b_success - left_icon = root - } - } - stress_impact = { - zealous = medium_stress_impact_gain - just = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { ai_energy = -0.5 } - } - } -} - -scripted_effect fp3_yearly_2010_create_baker_effect = { - create_character = { - age = { 35 50 } - dynasty = none - location = root.capital_province - gender_female_chance = root_faith_dominant_gender_female_chance - faith = root.capital_province.faith - culture = scope:bakers_county.culture - # Personality Traits - trait = greedy - random_traits_list = { - count = 2 - brave = {} - craven = {} - wrathful = {} - lustful = {} - ambitious = {} - diligent = {} - stubborn = {} - vengeful = {} - deceitful = {} - arrogant = {} - arbitrary = {} - impatient = {} - gluttonous = {} - } - random_traits_list = { - count = 1 - education_diplomacy_2 = {} - education_stewardship_2 = {} - education_stewardship_3 = {} - education_stewardship_4 = {} - education_learning_1 = {} - education_learning_2 = {} - } - # Flavor Traits - trait = administrator - random_traits_list = { - count = { 0 2 } - gout_ridden = {} - leper = {} - lovers_pox = {} - pneumonic = {} - dwarf = {} - giant = {} - hunchbacked = {} - weak = {} - clubfooted = {} - lisping = {} - stuttering = {} - wheezing = {} - albino = {} - scaly = {} - spindly = {} - maimed = {} - one_eyed = {} - one_legged = {} - disfigured = {} - blind = {} - } - random_traits = yes - diplomacy = { 8 13 } - martial = { 6 10 } - stewardship = { 8 13 } - intrigue = { 8 13 } - learning = { 13 18 } - prowess = { 3 8 } - after_creation = { - random_list = { - 50 = { - # Character is of average weight, nothing happens - } - 25 = { - change_current_weight = 25 - } - 25 = { - change_current_weight = 75 - } - } - add_character_flag = peasant_outfit - } - save_scope_as = greedy_baker - } - -} - -# Maunds of Wheat (The Bakers of Ghaznain) -# Your royal baker is hoarding bread, how shall you deal with them? -fp3_yearly.2010 = { - type = court_event - title = fp3_yearly.2010.t - desc = fp3_yearly.2010.desc - theme = court - cooldown = { years = 5 } - court_scene = { - button_position_character = root - roles = { - scope:greedy_baker = { - group = event_group - } - root = { - group = event_group - animation = personality_rational - } - scope:random_courtier = { - group = event_group - animation = beg - } - } - } - - trigger = { - has_fp3_dlc_trigger = yes - has_royal_court = yes - has_court_event_flag = no - is_available = yes - government_has_flag = government_is_clan - any_sub_realm_county = { - NOR = { - has_county_modifier = fp3_generous_bakers_modifier - has_county_modifier = fp3_wheat_shortage_modifier - } - } - any_courtier = { - is_available_ai_adult = yes - has_court_event_flag = no - } - } - - immediate = { - court_event_character_flag_effect = yes - random_courtier = { - limit = { - is_available_ai_adult = yes - has_court_event_flag = no - } - save_scope_as = random_courtier - court_event_character_flag_effect = yes - } - random_sub_realm_county = { - save_scope_as = bakers_county - } - fp3_yearly_2010_create_baker_effect = yes - scope:greedy_baker = { court_event_character_flag_effect = yes } - } - - option = { # Trample to death - name = { - text = { - desc = fp3_yearly.2010.a - first_valid = { - triggered_desc = { - trigger = { culture = { has_innovation = innovation_elephantry } } - desc = fp3_yearly.2010.a_elephants - } - triggered_desc = { - trigger = { culture = { has_innovation = innovation_elephantry } } - desc = fp3_yearly.2010.a_camels - } - desc = fp3_yearly.2010.a_horses - } - } - } - flavor = fp3_yearly.2010.a.tt - stress_impact = { - greedy = minor_stress_impact_gain - just = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - scope:greedy_baker = { - death = { - death_reason = death_trampled - killer = root - } - } - add_prestige = minor_prestige_loss - remove_treasury_or_gold = minor_treasury_or_gold_value - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_generous_bakers_modifier - years = 15 - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - factor = 0 - } - } - } - - option = { # Recruit - name = fp3_yearly.2010.b - stress_impact = { - just = minor_stress_impact_gain - zealous = minor_stress_impact_gain - arbitrary = minor_stress_impact_loss - } - add_courtier = scope:greedy_baker - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_wheat_shortage_modifier - years = 10 - } - } - ai_chance = { - base = 10 - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - } - } - - option = { # Take the extra money - name = fp3_yearly.2010.c - add_treasury_or_gold = medium_treasury_or_gold_value - stress_impact = { - just = medium_stress_impact_gain - generous = medium_stress_impact_gain - zealous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_wheat_shortage_modifier - years = 10 - } - } - ai_chance = { - base = 10 - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = generous - factor = 0 - } - } - } - - after = { - clear_court_event_participation = yes - scope:greedy_baker = { clear_court_event_participation = yes } - scope:random_courtier = { clear_court_event_participation = yes } - } -} - -# Maunds of Wheat (Non-Royal Court Version) -fp3_yearly.2011 = { - type = character_event - title = fp3_yearly.2010.t - desc = fp3_yearly.2010.desc - theme = crown - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:random_courtier - animation = beg - } - lower_left_portrait = scope:greedy_baker - cooldown = { years = 10 } - - trigger = { - has_fp3_dlc_trigger = yes - government_has_flag = government_is_clan - highest_held_title_tier >= tier_kingdom - any_courtier = { - is_available_ai_adult = yes - } - any_sub_realm_county = { - NOR = { - has_county_modifier = fp3_generous_bakers_modifier - has_county_modifier = fp3_wheat_shortage_modifier - } - } - } - - immediate = { - random_courtier = { - limit = { - is_available_ai_adult = yes - } - save_scope_as = random_courtier - } - random_sub_realm_county = { - save_scope_as = bakers_county - } - fp3_yearly_2010_create_baker_effect = yes - } - - option = { # Trample to death - name = { - text = { - desc = fp3_yearly.2010.a - first_valid = { - triggered_desc = { - trigger = { culture = { has_innovation = innovation_elephantry } } - desc = fp3_yearly.2010.a_elephants - } - triggered_desc = { - trigger = { culture = { has_innovation = innovation_elephantry } } - desc = fp3_yearly.2010.a_camels - } - desc = fp3_yearly.2010.a_horses - } - } - } - flavor = fp3_yearly.2010.a.tt - stress_impact = { - greedy = minor_stress_impact_gain - just = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - scope:greedy_baker = { - death = { death_reason = death_trampled } - } - add_prestige = minor_prestige_loss - remove_treasury_or_gold = minor_treasury_or_gold_value - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_generous_bakers_modifier - years = 15 - } - } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - factor = 0 - } - } - } - - option = { # Recruit - name = fp3_yearly.2010.b - add_courtier = scope:greedy_baker - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_wheat_shortage_modifier - years = 10 - } - } - stress_impact = { - just = minor_stress_impact_gain - zealous = minor_stress_impact_gain - arbitrary = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - } - } - - option = { # Take the extra money - name = fp3_yearly.2010.c - add_treasury_or_gold = major_treasury_or_gold_value - stress_impact = { - just = medium_stress_impact_gain - generous = medium_stress_impact_gain - zealous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - scope:bakers_county = { - add_county_modifier = { - modifier = fp3_wheat_shortage_modifier - years = 10 - } - } - ai_chance = { - base = 10 - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = generous - factor = 0 - } - } - } -} - -# This tax collector is guilty of at least one vice condemned of public officials in the Quran -scripted_trigger fp3_yearly_2020_is_valid_tax_collector = { - is_available_ai_adult = yes - OR = { - AND = { - has_trait = greedy - faith = { - NOR = { - trait_is_virtue = greedy - trait_is_sin = generous - } - } - } - AND = { - has_trait = arbitrary - faith = { - NOR = { - trait_is_virtue = arbitrary - trait_is_sin = just - } - } - } - AND = { - has_trait = cynical - faith = { - NOR = { - trait_is_virtue = cynical - trait_is_sin = zealous - } - } - } - AND = { - has_trait = contrite - NOT = { faith = { trait_is_virtue = contrite } } - } - } -} - -# Set the Scale: Vassal Version -# The tax collector in charge of you is corrupt, shall you petition to your liege to have them removed? -fp3_yearly.2020 = { - type = character_event - title = fp3_yearly.2020.t - desc = { - desc = fp3_yearly.2020.desc_intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:tax_collector_is_greedy } - desc = fp3_yearly.2020.desc_greedy - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_arbitrary } - desc = fp3_yearly.2020.desc_arbitrary - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_cynical } - desc = fp3_yearly.2020.desc_cynical - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_contrite } - desc = fp3_yearly.2020.desc_contrite - } - } - desc = fp3_yearly.2020.desc_outro - } - theme = stewardship - override_background = { - reference = courtyard - } - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:sinful_tax_collector - animation = shock - } - lower_left_portrait = scope:liege - - trigger = { - is_landed = yes - has_religion = religion:islam_religion - piety_level > low_negative_piety_level - liege ?= { - has_religion = religion:islam_religion - employs_tax_collector = yes - any_tax_collector = { - this != root - any_tax_collector_vassal = { this = root } - fp3_yearly_2020_is_valid_tax_collector = yes - } - # Liege has not been bothered about this tax collector in the last 5 years - NOT = { has_character_flag = had_event_fp3_yearly_2021 } - } - } - - # This event is more likely to trigger if you are your liege's steward (because the effects are more interesting) - weight_multiplier = { - modifier = { - add = 0.5 - has_council_position = councillor_steward - } - } - - immediate = { - liege = { - save_scope_as = liege - add_character_flag = { - flag = had_event_fp3_yearly_2021 - years = 5 - } - random_tax_collector = { - limit = { - this != root - any_tax_collector_vassal = { this = root } - fp3_yearly_2020_is_valid_tax_collector = yes - } - save_scope_as = sinful_tax_collector - # Choose which flaw to criticize in this tax collector - random_list = { - 1 = { - trigger = { - has_trait = greedy - NOT = { faith = { trait_is_virtue = greedy } } - } - save_scope_value_as = { - name = tax_collector_is_greedy - value = yes - } - } - 1 = { - trigger = { - has_trait = arbitrary - NOT = { faith = { trait_is_virtue = arbitrary } } - } - save_scope_value_as = { - name = tax_collector_is_arbitrary - value = yes - } - } - 1 = { - trigger = { - has_trait = cynical - NOT = { faith = { trait_is_virtue = cynical } } - } - save_scope_value_as = { - name = tax_collector_is_cynical - value = yes - } - } - 1 = { - trigger = { - has_trait = contrite - NOT = { faith = { trait_is_virtue = contrite } } - } - save_scope_value_as = { - name = tax_collector_is_contrite - value = yes - } - } - } - } - } - } - - option = { # Petition to have them removed - name = fp3_yearly.2020.a - reverse_add_opinion = { - target = scope:sinful_tax_collector - modifier = fp3_denounced_me - } - if = { #If Liege is AI we can fire the tax collector here - limit = { scope:liege = { is_ai = yes } } - progress_towards_rival_effect = { - CHARACTER = scope:sinful_tax_collector - REASON = rival_tried_to_remove_tax_collector - OPINION = 0 - } - duel = { - skill = learning - value = scope:liege.learning - - 7 = { # Tax collector is removed forever - desc = fp3_yearly.2020.a_success - compare_modifier = { - value = scope:duel_value - multiplier = 0.25 - } - send_interface_toast = { - type = event_toast_effect_good - title = fp3_yearly.2020.a_success - left_icon = root - right_icon = scope:sinful_tax_collector - add_piety = medium_piety_gain - scope:liege = { fire_tax_collector = scope:sinful_tax_collector } - scope:sinful_tax_collector = { - add_character_modifier = fp3_incapable_tax_collector_modifier - } - } - } - 3 = { # Tax collector starts problems with you - desc = fp3_yearly.2020.a_failure - compare_modifier = { - value = scope:duel_value - multiplier = -0.25 - } - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2020.a_failure - left_icon = root - right_icon = scope:sinful_tax_collector - if = { - limit = { has_council_position = councillor_steward } - custom_tooltip = fp3_yearly.2020.a_failure.tt - } - } - if = { - limit = { - has_council_position = councillor_steward - # Don't give the liege two stories of the same type - scope:liege = { NOT = { any_owned_story = { type = story_cycle_tax_rivalry } } } - } - # Create the tax rivalry story, if applicable - scope:liege = { - set_variable = { - name = story_steward - value = root - days = 1 - } - set_variable = { - name = story_tax_collector - value = scope:sinful_tax_collector - days = 1 - } - create_tax_rivalry_story_effect = yes - } - } - } - } - } - else = { #If Liege is not AI this is resolved in an event for liege - show_as_tooltip = { - # The actual progress effect will happen in fp3_yearly.2021 - # This is so that the liege's tooltip accurately reflects on the depth of rivalry - progress_towards_rival_effect = { - CHARACTER = scope:sinful_tax_collector - REASON = rival_tried_to_remove_tax_collector - OPINION = 0 - } - random_list = { - 1 = { - show_chance = no - desc = fp3_yearly.2020.a_success - fire_tax_collector = scope:sinful_tax_collector - scope:sinful_tax_collector = { - add_character_modifier = fp3_incapable_tax_collector_modifier - } - } - 1 = { - show_chance = no - desc = fp3_yearly.2020.a_failure - custom_tooltip = fp3_yearly.2020.a_failure.tt - } - } - } - save_scope_as = denouncing_taxpayer - scope:liege = { trigger_event = fp3_yearly.2021 } - } - stress_impact = { - shy = minor_stress_impact_gain - generous = minor_stress_impact_gain - craven = minor_stress_impact_gain - just = minor_stress_impact_loss - zealous = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_zeal = 0.25 - ai_greed = 0.5 - } - } - } - - option = { # Publicly expose them (causes their learning to tank, meaning they have less aptitude and you will owe fewer taxes to your liege) - name = fp3_yearly.2020.b - reverse_add_opinion = { - target = scope:sinful_tax_collector - modifier = fp3_denounced_me - } - progress_towards_rival_effect = { - CHARACTER = scope:sinful_tax_collector - REASON = rival_tried_to_remove_tax_collector - OPINION = 0 - } - # Tank the collector's aptitude and inform the liege - save_scope_as = denouncing_taxpayer - add_piety = minor_piety_gain - liege = { - send_interface_message = { - type = event_tax_collector_bad_with_text - title = fp3_yearly.2020.b.t - desc = fp3_yearly.2020.b.desc - scope:sinful_tax_collector = { - add_character_modifier = { - modifier = fp3_impious_tax_collector_modifier - years = 30 - } - } - left_icon = scope:sinful_tax_collector - right_icon = scope:denouncing_taxpayer - } - } - stress_impact = { - shy = medium_stress_impact_gain - zealous = minor_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - option = { # Pray for their soul (opt-out) - name = fp3_yearly.2020.c - add_piety = minor_piety_gain - stress_impact = { - greedy = medium_stress_impact_gain - just = minor_stress_impact_gain - zealous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - lazy = minor_stress_impact_loss - } - ai_chance = { - base = 50 - modifier = { - has_trait = greedy - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } -} - -# Set the Scale: Liege Version -# One of your tax collectors is corrupt and your vassal is demanding you fire them -fp3_yearly.2021 = { - type = character_event - title = fp3_yearly.2020.t - desc = { - desc = fp3_yearly.2021.desc_intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:tax_collector_is_greedy } - desc = fp3_yearly.2021.desc_greedy - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_arbitrary } - desc = fp3_yearly.2021.desc_arbitrary - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_cynical } - desc = fp3_yearly.2021.desc_cynical - } - triggered_desc = { - trigger = { exists = scope:tax_collector_is_contrite } - desc = fp3_yearly.2021.desc_contrite - } - } - desc = fp3_yearly.2021.desc_outro - } - theme = stewardship - - - left_portrait = { - character = scope:denouncing_taxpayer - animation = anger - } - right_portrait = { - character = scope:sinful_tax_collector - animation = shame - } - - cooldown = { years = 5 } - - trigger = { - has_religion = religion:islam_religion - employs_tax_collector = yes - any_tax_collector = { - any_tax_collector_vassal = { - has_religion = religion:islam_religion - piety_level > low_negative_piety_level - is_available_adult = yes - trigger_if = { - limit = { NOT = { exists = scope:denouncing_taxpayer } } # If this event isn't a redirect from fp3_yearly.2020, then the featured taxpayer must be an ai - is_ai = yes - NOT = { has_trait = shy } # B/c shy vassals are unlikely to take the denounce option in fp3_yearly.2020.a - } - } - fp3_yearly_2020_is_valid_tax_collector = yes - } - } - - immediate = { - if = { - limit = { NOT = { exists = scope:sinful_tax_collector } } - random_tax_collector = { - limit = { - any_tax_collector_vassal = { - has_religion = religion:islam_religion - piety_level > low_negative_piety_level - is_available_adult = yes - trigger_if = { - limit = { NOT = { exists = scope:denouncing_taxpayer } } # If this event isn't a redirect from fp3_yearly.2020, then the featured taxpayer must be an ai - is_ai = yes - NOT = { has_trait = shy } # B/c shy vassals are unlikely to take the denounce option in fp3_yearly.2020.a - } - } - fp3_yearly_2020_is_valid_tax_collector = yes - } - save_scope_as = sinful_tax_collector - # Choose which flaw to criticize in this tax collector - random_list = { - 1 = { - trigger = { - has_trait = greedy - NOT = { faith = { trait_is_virtue = greedy } } - } - save_scope_value_as = { - name = tax_collector_is_greedy - value = yes - } - } - 1 = { - trigger = { - has_trait = arbitrary - NOT = { faith = { trait_is_virtue = arbitrary } } - } - save_scope_value_as = { - name = tax_collector_is_arbitrary - value = yes - } - } - 1 = { - trigger = { - has_trait = cynical - NOT = { faith = { trait_is_virtue = cynical } } - } - save_scope_value_as = { - name = tax_collector_is_cynical - value = yes - } - } - 1 = { - trigger = { - has_trait = contrite - NOT = { faith = { trait_is_virtue = contrite } } - } - save_scope_value_as = { - name = tax_collector_is_contrite - value = yes - } - } - } - if = { - limit = { NOT = { exists = scope:denouncing_taxpayer } } - random_tax_collector_vassal = { - limit = { - is_available_ai_adult = yes - has_religion = religion:islam_religion - piety_level > low_negative_piety_level - NOT = { has_trait = shy } - } - # More likely to choose a zealous denouncer - weight = { - base = 1 - ai_value_modifier = { - ai_zeal = 0.1 - } - } - save_scope_as = denouncing_taxpayer - } - } - } - } - scope:denouncing_taxpayer = { - assign_quirk_effect = yes - } - scope:denouncing_taxpayer = { - progress_towards_rival_effect = { - CHARACTER = scope:sinful_tax_collector - REASON = rival_tried_to_remove_tax_collector - OPINION = 0 - } - } - } - - option = { # Fire the tax collector - name = fp3_yearly.2021.a - add_piety = minor_piety_gain - fire_tax_collector = scope:sinful_tax_collector - scope:sinful_tax_collector = { - add_character_modifier = fp3_incapable_tax_collector_modifier - } - scope:denouncing_taxpayer = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 20 - } - # If this is a follow-up from fp3_yearly.2020, then send that player a toast - if = { - limit = { is_ai = no } - send_interface_toast = { - type = event_toast_effect_good - title = fp3_yearly.2020.a_success - left_icon = root - right_icon = scope:sinful_tax_collector - } - } - } - if = { - limit = { #Complainer is a house member - collector is not - exists = scope:denouncing_taxpayer.house - scope:denouncing_taxpayer.house = house - trigger_if = { - limit = { - exists = scope:sinful_tax_collector.house - } - scope:sinful_tax_collector.house != house - } - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:denouncing_taxpayer - VALUE = minor_unity_gain - DESC = clan_unity_tax_collector_fired_on_request.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - else_if = { - limit = { #Complainer is not a clan member but the tax collector is - exists = scope:sinful_tax_collector.house - scope:sinful_tax_collector.house = house - trigger_if = { - limit = { - exists = scope:denouncing_taxpayer.house - } - scope:denouncing_taxpayer.house != house - } - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:sinful_tax_collector - VALUE = minor_unity_loss - DESC = clan_unity_tax_collector_fired.desc - REVERSE_NON_HOUSE_TARGET = no - } - } #If neither is of your house, or if both are we don't adjust unity. - - stress_impact = { - greedy = medium_stress_impact_gain - callous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - just = minor_stress_impact_loss - zealous = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = greedy - factor = 0 - } - modifier = { - has_trait = arrogant - factor = 0 - } - modifier = { - has_trait = callous - factor = 0 - } - } - } - - option = { # Ignore - name = fp3_yearly.2021.b - add_piety = medium_piety_loss - scope:denouncing_taxpayer = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - if = { - limit = { is_ai = no } - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2020.a_failure - left_icon = root - right_icon = scope:sinful_tax_collector - custom_tooltip = fp3_yearly.2020.a_failure.tt - } - } - } - # Create the tax rivalry story if the denouncer is your steward - if = { - limit = { - scope:denouncing_taxpayer = { has_council_position = councillor_steward } - # Don't give yourself two stories of the same type - NOT = { any_owned_story = { type = story_cycle_tax_rivalry } } - } - set_variable = { - name = story_steward - value = scope:denouncing_taxpayer - days = 30 - } - set_variable = { - name = story_tax_collector - value = scope:sinful_tax_collector - days = 30 - } - create_tax_rivalry_story_effect = yes - } - if = { - limit = { #Complainer is a house member - collector is not - exists = scope:denouncing_taxpayer.house - scope:denouncing_taxpayer.house = house - trigger_if = { - limit = { - exists = scope:sinful_tax_collector.house - } - scope:sinful_tax_collector.house != house - } - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:denouncing_taxpayer - VALUE = minor_unity_loss - DESC = clan_unity_ignore_tax_collector_complaint.desc - REVERSE_NON_HOUSE_TARGET = no - } - } - else_if = { - limit = { #Complainer is not a clan member but the tax collector is - exists = scope:sinful_tax_collector.house - scope:sinful_tax_collector.house = house - trigger_if = { - limit = { - exists = scope:denouncing_taxpayer.house - } - scope:denouncing_taxpayer.house != house - } - } - add_clan_unity_interaction_effect = { - CHARACTER = root - TARGET = scope:sinful_tax_collector - VALUE = minor_unity_gain - DESC = clan_unity_protected_tax_collector_against_complaint.desc - REVERSE_NON_HOUSE_TARGET = no - } - } #If neither is of your house, or if both are we don't adjust unity. - - stress_impact = { - just = medium_stress_impact_gain - zealous = minor_stress_impact_gain - arrogant = minor_stress_impact_loss - greedy = minor_stress_impact_loss - } - ai_chance = { - base = 50 - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = zealous - factor = 0 - } - } - } -} - -# A Beautiful Rule (The Ugliness of Sultan Mahmud) -# You are ugly, but your courtier suggests your beautiful actions are more important to your rule -#Triggers shortly after succession -fp3_yearly.2030 = { - type = character_event - title = fp3_yearly.2030.t - desc = { - desc = fp3_yearly.2030.desc_intro - # Look in the mirror at your "ugly" feature - first_valid = { - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_beauty_bad } - desc = fp3_yearly.2030.desc_beauty_bad - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_spindly } - desc = fp3_yearly.2030.desc_spindly - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_disfigured } - desc = fp3_yearly.2030.desc_disfigured - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_scaly } - desc = fp3_yearly.2030.desc_scaly - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_albino } - desc = fp3_yearly.2030.desc_albino - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_hunchbacked } - desc = fp3_yearly.2030.desc_hunchbacked - } - triggered_desc = { - trigger = { has_character_flag = fp3_yearly_2030_inbred } - desc = fp3_yearly.2030.desc_inbred - } - } - desc = fp3_yearly.2030.desc_outro - } - theme = crown - override_background = { - reference = sitting_room - } - left_portrait = { - character = root - animation = worry - } - right_portrait = { - character = scope:reassuring_courtier - animation = personality_compassionate - } - - cooldown = { years = 100 } - - trigger = { - has_fp3_dlc_trigger = yes - is_available_adult = yes - is_landed = yes - OR = { - has_trait = beauty_bad - has_trait = spindly - has_trait = disfigured - has_trait = scaly - has_trait = albino - has_trait = hunchbacked - has_trait = inbred - } - NOR = { - has_trait = callous - has_trait = sadistic - has_trait = beauty_good - } - faith = { - trait_is_virtue = generous - } - } - - immediate = { - # Figure out which ugliness we will pick at - random_list = { - 1 = { - trigger = { has_trait = beauty_bad } - add_character_flag = { - flag = fp3_yearly_2030_beauty_bad - days = 1 - } - } - 1 = { - trigger = { has_trait = spindly } - add_character_flag = { - flag = fp3_yearly_2030_spindly - days = 1 - } - } - 1 = { - trigger = { has_trait = disfigured } - add_character_flag = { - flag = fp3_yearly_2030_disfigured - days = 1 - } - } - 1 = { - trigger = { has_trait = scaly } - add_character_flag = { - flag = fp3_yearly_2030_scaly - days = 1 - } - } - 1 = { - trigger = { has_trait = albino } - add_character_flag = { - flag = fp3_yearly_2030_albino - days = 1 - } - } - 1 = { - trigger = { has_trait = hunchbacked } - add_character_flag = { - flag = fp3_yearly_2030_hunchbacked - days = 1 - } - } - 1 = { - trigger = { has_trait = inbred } - add_character_flag = { - flag = fp3_yearly_2030_inbred - days = 1 - } - } - } - # Figure out which courtier should reassure us - # If we have a lady in waiting, then use her - if = { - limit = { - employs_court_position = lady_in_waiting_court_position - is_available_ai_adult = yes - has_contagious_deadly_disease_trigger = no - } - random_court_position_holder = { - type = lady_in_waiting_court_position - save_scope_as = reassuring_courtier - } - } - # Otherwise, pick court jester - else_if = { - limit = { - employs_court_position = court_jester_court_position - is_available_ai_adult = yes - has_contagious_deadly_disease_trigger = no - } - random_court_position_holder = { - type = court_jester_court_position - save_scope_as = reassuring_courtier - } - } - # Otherwise, pick some (weighted) rando - else = { - random_courtier = { - limit = { - is_available_ai_adult = yes - has_contagious_deadly_disease_trigger = no - } - weight = { - base = 100 - opinion_modifier = { - opinion_target = root - } - modifier = { - has_trait = zealous - add = 50 - } - modifier = { - has_trait = cynical - add = -50 - } - modifier = { - has_trait = generous - add = 50 - } - modifier = { - has_trait = greedy - add = -50 - } - } - save_scope_as = reassuring_courtier - } - } - } - - - option = { # Act generously (even if it is instrumental and not in your nature) - name = fp3_yearly.2030.a - trigger = { - NOT = { has_trait = generous } - } - remove_short_term_gold = medium_gold_value - add_character_modifier = { - modifier = generous_beauty - years = 10 - } - stress_impact = { - greedy = major_stress_impact_gain - arrogant = minor_stress_impact_gain - deceitful = minor_stress_impact_gain - callous = minor_stress_impact_gain - temperate = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - option = { # Actions will speak louder than words - name = fp3_yearly.2030.d - add_prestige = minor_prestige_value - stress_impact = { - base = medium_stress_impact_gain - wrathful = medium_stress_impact_gain - impatient = minor_stress_impact_gain - temperate = minor_stress_impact_loss - trusting = minor_stress_impact_loss - humble = minor_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - option = { # Bask in your generosity - name = fp3_yearly.2030.b - trigger = { - has_trait = generous - } - trait = generous - add_prestige = medium_prestige_gain - give_nickname = nick_the_beautiful_generous - remove_short_term_gold = medium_gold_value - add_character_modifier = { - modifier = generous_beauty - years = 10 - } - stress_impact = { - generous = major_stress_impact_loss - arrogant = minor_stress_impact_loss - temperate = minor_stress_impact_loss - deceitful = minor_stress_impact_gain - callous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Gain dread - name = fp3_yearly.2030.c - add_dread = medium_dread_gain - scope:reassuring_courtier = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - imprison_character_effect = { #We kill the messenger, so to speak - TARGET = scope:reassuring_courtier - IMPRISONER = root - } - add_character_modifier = { - modifier = dreaded_beauty - } - stress_impact = { - compassionate = medium_stress_impact_gain - just = minor_stress_impact_gain - content = minor_stress_impact_gain - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - generous = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - callous = minor_stress_impact_loss - wrathful = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - } - ai_chance = { - base = 50 - modifier = { - has_trait = compassionate - factor = 0 - } - modifier = { - has_trait = content - factor = 0 - } - modifier = { - has_trait = just - factor = 0 - } - modifier = { - has_trait = humble - factor = 0 - } - } - } -} - -# Checks whether any of the character's provinces recognize the caliph as their HOF -scripted_trigger fp3_yearly_2040_attackers_provinces_respect_caliph = { - any_held_title = { - title_tier = county - faith.religious_head = root - } -} - -# All counties that respect the caliph as their HOF get a massive levy size penalty -# NB: Scope:caliph needs to be set before this effect is called -scripted_effect fp3_yearly_2040_religious_desertion_effect = { - every_held_county = { - limit = { faith.religious_head = scope:caliph } - add_county_modifier = { - modifier = fp3_religious_desertion_modifier - years = 5 - } - } -} - -# Commander of the Faithful (The Army of Ya'qub ibn Laith) -# As the Caliph, if someone is warring you and has counties that obey you as their HOF, then you have the option of pleading with their army to stand down -fp3_yearly.2040 = { - type = character_event - title = fp3_yearly.2040.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - any_character_war = { - primary_attacker = { faith.religion = religion:islam_religion } - } - } - desc = fp3_yearly.2040.desc_attacker_is_muslim - } - desc = fp3_yearly.2040.desc_attacker_is_not_muslim - } - } - theme = martial - override_background = { - reference = terrain_scope - } - left_portrait = { - character = scope:infidel - animation = war_attacker - } - cooldown = { years = 5 } - - trigger = { - has_fp3_dlc_trigger = yes - # Below triggers are similar to is_available_adult but without is_in_army - is_adult = yes - is_alive = yes - exists = location - is_imprisoned = no - has_contagious_deadly_disease_trigger = no - NOT = { has_trait = incapable } - NOT = { has_variable = gone_adventuring } - NOT = { has_character_flag = planning_an_activity } - faith.religion = religion:islam_religion - is_at_war_as_defender = yes - any_character_war = { - primary_defender = root - primary_attacker = { - exists = location - fp3_yearly_2040_attackers_provinces_respect_caliph = yes - } - } - } - - immediate = { - save_scope_as = caliph - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { save_scope_as = imam } - } - random_character_war = { - limit = { - primary_defender = root - primary_attacker = { - exists = location - fp3_yearly_2040_attackers_provinces_respect_caliph = yes - } - } - primary_attacker = { - save_scope_as = infidel - location = { save_scope_as = background_terrain_scope } # For event_bg - } - } - } - - option = { # Make a plea - name = fp3_yearly.2040.a - flavor = fp3_yearly.2040.a.flavor - duel = { - skill = learning - target = scope:infidel - - 70 = { # Shouldn't be too difficult to succeed - desc = fp3_yearly.2040.a_success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -55 - max = 35 - } - # More pious caliphs should be able to succeed more easily - modifier = { - add = { - value = piety_level - subtract = 1 - } - } - modifier = { - add = { - value = num_virtuous_traits - } - } - scope:infidel = { - # If the attacker is a player, notify them of the penalty they just suffered - if = { - limit = { is_ai = no } - trigger_event = fp3_yearly.2041 - show_as_tooltip = { fp3_yearly_2040_religious_desertion_effect = yes } # tt only, the actual effect happens in fp3_yearly.2041 - } - else = { - fp3_yearly_2040_religious_desertion_effect = yes - } - } - send_interface_toast = { - type = event_toast_effect_good - title = fp3_yearly.2040.a_success - left_icon = scope:infidel - reverse_add_opinion = { - target = scope:infidel - modifier = fp3_sabotaged_me - } - } - } - 30 = { - desc = fp3_yearly.2040.a_failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -35 - max = 55 - } - modifier = { - add = { - value = piety_level - subtract = 1 - multiply = -1 - } - } - modifier = { - add = { - value = num_sinful_traits - } - } - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2040.a_failure - left_icon = root - add_prestige = medium_prestige_loss - increase_wounds_effect = { REASON = piteously_cut_down } - } - } - } - stress_impact = { - craven = major_stress_impact_gain - shy = major_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_vengefulness = 0.5 - } - # Add only negative % chance due to shyness - modifier = { - add = { - value = ai_sociability - multiply = -1 - max = 0 - } - } - # Is the caliph's or imam's learning higher? - compare_modifier = { - target = scope:imam - value = learning - multiplier = -5 - } - } - } - - option = { # Have your imam make a plea. Ignores your own learning/piety - name = fp3_yearly.2040.b - flavor = fp3_yearly.2040.b.flavor - trigger = { exists = scope:imam } - scope:imam = { - duel = { - skill = learning - target = scope:infidel - - 60 = { # Harder for your imam to succeed - desc = fp3_yearly.2040.b_success - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -55 - max = 35 - } - scope:infidel = { - # If the attacker is a player, notify them of this huge penalty - if = { - limit = { is_ai = no } - trigger_event = fp3_yearly.2041 - show_as_tooltip = { fp3_yearly_2040_religious_desertion_effect = yes } # tt only, the actual effect happens in fp3_yearly.2041 - } - else = { - fp3_yearly_2040_religious_desertion_effect = yes - } - } - scope:caliph = { - send_interface_toast = { - type = event_toast_effect_good - title = fp3_yearly.2040.b_success - left_icon = scope:infidel - reverse_add_opinion = { - target = scope:infidel - modifier = fp3_sabotaged_me - } - } - } - } - 40 = { # Is killed - desc = fp3_yearly.2040.b_failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -35 - max = 55 - } - scope:caliph = { - send_interface_toast = { - type = event_toast_effect_bad - title = fp3_yearly.2040.b_failure - left_icon = scope:imam - scope:imam = { death = { death_reason = death_piteously_cut_down } } - } - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_vengefulness = 0.5 - } - # Is the caliph's or imam's learning higher? - compare_modifier = { - target = scope:imam - value = learning - multiplier = 5 - } - } - } - - option = { # Do nothing - name = fp3_yearly.2040.c - stress_impact = { - brave = major_stress_impact_gain - vengeful = minor_stress_impact_gain - wrathful = medium_stress_impact_gain - zealous = major_stress_impact_gain - } - ai_chance = { - base = 0 # Should be low, we want the AI to take the other two options - ai_value_modifier = { - ai_vengefulness = -0.5 - ai_energy = -1 - } - } - } -} - -# Commander of the Faithful: Attacker Version -# The Caliph has asked your armies to stand down and they complied! -fp3_yearly.2041 = { - type = character_event - title = fp3_yearly.2040.t - desc = { - first_valid = { - triggered_desc = { - # You do not respect the caliph - trigger = { - OR = { - has_trait = cynical - faith.religious_head != scope:caliph - } - } - desc = fp3_yearly.2041.desc_cynical - } - desc = fp3_yearly.2041.desc_fallback - } - } - theme = martial - override_background = { - reference = terrain_scope - } - left_portrait = { - character = scope:caliph - animation = war_defender - } - - immediate = { - fp3_yearly_2040_religious_desertion_effect = yes - scope:caliph.location = { save_scope_as = background_terrain_scope } - } - - option = { # Curse them! - name = fp3_yearly.2041.a - } -} - -# Futuwaa Lodges: Check if root has any valid members of futuwaa lodges. If so, trigger ongoing_futuwaa_lodges_events -fp3_yearly.2050 = { - hidden = yes - - immediate = { - every_courtier = { - limit = { fp3_is_valid_futuwaa_member = { SPONSOR = root } } - add_to_list = futuwaa_members - } - house ?= { - every_house_member = { - limit = { - fp3_is_valid_futuwaa_member = { SPONSOR = root } - NOT = { is_courtier_of = root } - } - add_to_list = futuwaa_members - } - } - if = { - limit = { any_in_list = { list = futuwaa_members } } - trigger_event = { on_action = ongoing_futuwaa_lodges_events } - } - } -} - -# Futuwaa Lodges: Prowess skill increased -fp3_yearly.2051 = { - hidden = yes - - # This event is more likely to trigger if you have more futuwaa members - weight_multiplier = { - base = 1 - modifier = { - add = { - value = list_size:futuwaa_members - subtract = 1 - } - } - } - - immediate = { - random_in_list = { - list = futuwaa_members - weight = { - base = 1 - # Unskilled members are more likely to have their stats improved - modifier = { - add = { - value = prowess - multiply = -0.1 - } - } - # Virtuous members are more likely to benefit - modifier = { - add = { - value = num_virtuous_traits - subtract = num_sinful_traits - } - } - # Martial members are more likely to... you get the idea - modifier = { - OR = { - has_focus = education_martial - has_education_martial_trigger = yes - } - add = 2 - } - # AI energy (Diligent, lazy, etc.) - modifier = { - ai_energy <= high_negative_ai_value - add = -2 - } - modifier = { - ai_energy >= high_positive_ai_value - add = 2 - } - } - save_scope_as = improved_youth - } - send_interface_message = { - type = event_martial_good - title = fp3_yearly.2050.t - left_icon = scope:improved_youth - scope:improved_youth = { add_prowess_skill = 2 } - } - } -} - -# Futuwaa Lodges: Martial skill increased (martial focus only) -fp3_yearly.2052 = { - hidden = yes - - trigger = { - any_in_list = { - list = futuwaa_members - OR = { - has_focus = education_martial - has_education_martial_trigger = yes - } - } - } - - # This event is more likely to trigger if you have more futuwaa members - weight_multiplier = { - base = 1 - modifier = { - add = { - value = list_size:futuwaa_members - subtract = 1 - } - } - } - - immediate = { - random_in_list = { - list = futuwaa_members - weight = { - base = 1 - # Unskilled members are more likely to have their stats improved - modifier = { - add = { - value = martial - multiply = -0.1 - } - } - # Virtuous members are more likely to benefit - modifier = { - add = { - value = num_virtuous_traits - subtract = num_sinful_traits - } - } - # AI energy (Diligent, lazy, etc.) - modifier = { - ai_energy <= high_negative_ai_value - add = -2 - } - modifier = { - ai_energy >= high_positive_ai_value - add = 2 - } - } - save_scope_as = improved_youth - } - send_interface_message = { - type = event_martial_good - title = fp3_yearly.2050.t - left_icon = scope:improved_youth - scope:improved_youth = { add_martial_skill = 2 } - } - } -} - -# Futuwaa Lodges: Virtuous trait added -fp3_yearly.2053 = { - hidden = yes - - trigger = { - any_in_list = { - list = futuwaa_members - number_of_personality_traits < childhood_personality_trait_gain_limit - } - } - - # This event is more likely to trigger if you have more futuwaa members - weight_multiplier = { - base = 1 - modifier = { - add = { - value = list_size:futuwaa_members - subtract = 1 - } - } - } - - immediate = { - random_in_list = { - list = futuwaa_members - weight = { - base = 1 - # More zealous members are more likely to benefit (and vice versa) - modifier = { - add = { - value = ai_zeal - divide = 100 - } - } - } - save_scope_as = improved_youth - } - # Choose a random virtue to give the youth - # I know... there is no better way to do this - random_list = { - # Brave - 1 = { - trigger = { - faith = { trait_is_virtue = brave } - scope:improved_youth = { - NOR = { - has_trait = brave - has_trait = craven - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:brave - } - } - # Craven - 1 = { - trigger = { - faith = { trait_is_virtue = craven } - scope:improved_youth = { - NOR = { - has_trait = brave - has_trait = craven - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:craven - } - } - # Calm - 1 = { - trigger = { - faith = { trait_is_virtue = calm } - scope:improved_youth = { - NOR = { - has_trait = calm - has_trait = wrathful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:calm - } - } - # Wrathful - 1 = { - trigger = { - faith = { trait_is_virtue = wrathful } - scope:improved_youth = { - NOR = { - has_trait = calm - has_trait = wrathful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:wrathful - } - } - # Chaste - 1 = { - trigger = { - faith = { trait_is_virtue = chaste } - scope:improved_youth = { - NOR = { - has_trait = chaste - has_trait = lustful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:chaste - } - } - # Lustful - 1 = { - trigger = { - faith = { trait_is_virtue = lustful } - scope:improved_youth = { - NOR = { - has_trait = chaste - has_trait = lustful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:lustful - } - } - # Content - 1 = { - trigger = { - faith = { trait_is_virtue = content } - scope:improved_youth = { - NOR = { - has_trait = content - has_trait = ambitious - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:content - } - } - # Ambitious - 1 = { - trigger = { - faith = { trait_is_virtue = ambitious } - scope:improved_youth = { - NOR = { - has_trait = content - has_trait = ambitious - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:ambitious - } - } - # Diligent - 1 = { - trigger = { - faith = { trait_is_virtue = diligent } - scope:improved_youth = { - NOR = { - has_trait = diligent - has_trait = lazy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:diligent - } - } - # Lazy - 1 = { - trigger = { - faith = { trait_is_virtue = lazy } - scope:improved_youth = { - NOR = { - has_trait = diligent - has_trait = lazy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:lazy - } - } - # Fickle - 1 = { - trigger = { - faith = { trait_is_virtue = fickle } - scope:improved_youth = { - NOR = { - has_trait = fickle - has_trait = stubborn - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:fickle - } - } - # Stubborn - 1 = { - trigger = { - faith = { trait_is_virtue = stubborn } - scope:improved_youth = { - NOR = { - has_trait = fickle - has_trait = stubborn - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:stubborn - } - } - # Forgiving - 1 = { - trigger = { - faith = { trait_is_virtue = forgiving } - scope:improved_youth = { - NOR = { - has_trait = forgiving - has_trait = vengeful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:forgiving - } - } - # Vengeful - 1 = { - trigger = { - faith = { trait_is_virtue = vengeful } - scope:improved_youth = { - NOR = { - has_trait = forgiving - has_trait = vengeful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:vengeful - } - } - # Generous - 1 = { - trigger = { - faith = { trait_is_virtue = generous } - scope:improved_youth = { - NOR = { - has_trait = generous - has_trait = greedy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:generous - } - } - # Greedy - 1 = { - trigger = { - faith = { trait_is_virtue = greedy } - scope:improved_youth = { - NOR = { - has_trait = generous - has_trait = greedy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:greedy - } - } - # Gregarious - 1 = { - trigger = { - faith = { trait_is_virtue = gregarious } - scope:improved_youth = { - NOR = { - has_trait = gregarious - has_trait = shy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:gregarious - } - } - # Shy - 1 = { - trigger = { - faith = { trait_is_virtue = shy } - scope:improved_youth = { - NOR = { - has_trait = gregarious - has_trait = shy - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:shy - } - } - # Honest - 1 = { - trigger = { - faith = { trait_is_virtue = honest } - scope:improved_youth = { - NOR = { - has_trait = honest - has_trait = deceitful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:honest - } - } - # Deceitful - 1 = { - trigger = { - faith = { trait_is_virtue = deceitful } - scope:improved_youth = { - NOR = { - has_trait = honest - has_trait = deceitful - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:deceitful - } - } - # Humble - 1 = { - trigger = { - faith = { trait_is_virtue = humble } - scope:improved_youth = { - NOR = { - has_trait = humble - has_trait = arrogant - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:humble - } - } - # Arrogant - 1 = { - trigger = { - faith = { trait_is_virtue = arrogant } - scope:improved_youth = { - NOR = { - has_trait = humble - has_trait = arrogant - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:arrogant - } - } - # Just - 1 = { - trigger = { - faith = { trait_is_virtue = just } - scope:improved_youth = { - NOR = { - has_trait = just - has_trait = arbitrary - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:just - } - } - # Arbitrary - 1 = { - trigger = { - faith = { trait_is_virtue = arbitrary } - scope:improved_youth = { - NOR = { - has_trait = just - has_trait = arbitrary - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:arbitrary - } - } - # Patient - 1 = { - trigger = { - faith = { trait_is_virtue = patient } - scope:improved_youth = { - NOR = { - has_trait = patient - has_trait = impatient - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:patient - } - } - # Impatient - 1 = { - trigger = { - faith = { trait_is_virtue = impatient } - scope:improved_youth = { - NOR = { - has_trait = patient - has_trait = impatient - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:impatient - } - } - # Temperate - 1 = { - trigger = { - faith = { trait_is_virtue = temperate } - scope:improved_youth = { - NOR = { - has_trait = temperate - has_trait = gluttonous - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:temperate - } - } - # Gluttonous - 1 = { - trigger = { - faith = { trait_is_virtue = gluttonous } - scope:improved_youth = { - NOR = { - has_trait = temperate - has_trait = gluttonous - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:gluttonous - } - } - # Trusting - 1 = { - trigger = { - faith = { trait_is_virtue = trusting } - scope:improved_youth = { - NOR = { - has_trait = trusting - has_trait = paranoid - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:trusting - } - } - # Paranoid - 1 = { - trigger = { - faith = { trait_is_virtue = paranoid } - scope:improved_youth = { - NOR = { - has_trait = trusting - has_trait = paranoid - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:paranoid - } - } - # Zealous - 1 = { - trigger = { - faith = { trait_is_virtue = zealous } - scope:improved_youth = { - NOR = { - has_trait = zealous - has_trait = cynical - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:zealous - } - } - # Cynical - 1 = { - trigger = { - faith = { trait_is_virtue = cynical } - scope:improved_youth = { - NOR = { - has_trait = zealous - has_trait = cynical - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:cynical - } - } - # Compassionate - 1 = { - trigger = { - faith = { trait_is_virtue = compassionate } - scope:improved_youth = { - NOR = { - has_trait = compassionate - has_trait = callous - has_trait = sadistic - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:compassionate - } - } - # Callous - 1 = { - trigger = { - faith = { trait_is_virtue = callous } - scope:improved_youth = { - NOR = { - has_trait = compassionate - has_trait = callous - has_trait = sadistic - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:callous - } - } - # Sadistic - 1 = { - trigger = { - faith = { trait_is_virtue = sadistic } - scope:improved_youth = { - NOR = { - has_trait = compassionate - has_trait = callous - has_trait = sadistic - } - } - } - save_scope_value_as = { - name = virtuous_trait - value = flag:sadistic - } - } - } - send_interface_message = { - type = event_martial_good - title = fp3_yearly.2050.t - left_icon = scope:improved_youth - scope:improved_youth = { - if = { - limit = { scope:virtuous_trait = flag:brave } - add_trait = brave - } - if = { - limit = { scope:virtuous_trait = flag:craven } - add_trait = craven - } - if = { - limit = { scope:virtuous_trait = flag:calm } - add_trait = calm - } - if = { - limit = { scope:virtuous_trait = flag:wrathful } - add_trait = wrathful - } - if = { - limit = { scope:virtuous_trait = flag:chaste } - add_trait = chaste - } - if = { - limit = { scope:virtuous_trait = flag:lustful } - add_trait = lustful - } - if = { - limit = { scope:virtuous_trait = flag:content } - add_trait = content - } - if = { - limit = { scope:virtuous_trait = flag:ambitious } - add_trait = ambitious - } - if = { - limit = { scope:virtuous_trait = flag:diligent } - add_trait = diligent - } - if = { - limit = { scope:virtuous_trait = flag:lazy } - add_trait = lazy - } - if = { - limit = { scope:virtuous_trait = flag:fickle } - add_trait = fickle - } - if = { - limit = { scope:virtuous_trait = flag:stubborn } - add_trait = stubborn - } - if = { - limit = { scope:virtuous_trait = flag:forgiving } - add_trait = forgiving - } - if = { - limit = { scope:virtuous_trait = flag:vengeful } - add_trait = vengeful - } - if = { - limit = { scope:virtuous_trait = flag:generous } - add_trait = generous - } - if = { - limit = { scope:virtuous_trait = flag:greedy } - add_trait = greedy - } - if = { - limit = { scope:virtuous_trait = flag:gregarious } - add_trait = gregarious - } - if = { - limit = { scope:virtuous_trait = flag:shy } - add_trait = shy - } - if = { - limit = { scope:virtuous_trait = flag:honest } - add_trait = honest - } - if = { - limit = { scope:virtuous_trait = flag:deceitful } - add_trait = deceitful - } - if = { - limit = { scope:virtuous_trait = flag:humble } - add_trait = humble - } - if = { - limit = { scope:virtuous_trait = flag:arrogant } - add_trait = arrogant - } - if = { - limit = { scope:virtuous_trait = flag:just } - add_trait = just - } - if = { - limit = { scope:virtuous_trait = flag:arbitrary } - add_trait = arbitrary - } - if = { - limit = { scope:virtuous_trait = flag:patient } - add_trait = patient - } - if = { - limit = { scope:virtuous_trait = flag:impatient } - add_trait = impatient - } - if = { - limit = { scope:virtuous_trait = flag:temperate } - add_trait = temperate - } - if = { - limit = { scope:virtuous_trait = flag:gluttonous } - add_trait = gluttonous - } - if = { - limit = { scope:virtuous_trait = flag:trusting } - add_trait = trusting - } - if = { - limit = { scope:virtuous_trait = flag:paranoid } - add_trait = paranoid - } - if = { - limit = { scope:virtuous_trait = flag:zealous } - add_trait = zealous - } - if = { - limit = { scope:virtuous_trait = flag:cynical } - add_trait = cynical - } - if = { - limit = { scope:virtuous_trait = flag:compassionate } - add_trait = compassionate - } - if = { - limit = { scope:virtuous_trait = flag:callous } - add_trait = callous - } - if = { - limit = { scope:virtuous_trait = flag:sadistic } - add_trait = sadistic - } - } - } - } -} - -# Madrasas: Check if root has any valid members of madrasas. If so, trigger ongoing_madrasas_events -fp3_yearly.2060 = { - hidden = yes - - immediate = { - every_courtier = { - limit = { fp3_is_valid_madrasa_pupil = { SPONSOR = root } } - add_to_list = madrasa_pupils - } - house ?= { - every_house_member = { - limit = { - fp3_is_valid_madrasa_pupil = { SPONSOR = root } - NOT = { is_courtier_of = root } - } - add_to_list = madrasa_pupils - } - } - - if = { - limit = { any_in_list = { list = madrasa_pupils } } - trigger_event = { on_action = ongoing_madrasas_events } - } - } -} - -# Madrasas: Learning skill increased -fp3_yearly.2061 = { - hidden = yes - - # This event is more likely to trigger if you have more madrasa pupils - weight_multiplier = { - base = 1 - modifier = { - add = { - value = list_size:madrasa_pupils - subtract = 1 - } - } - } - - immediate = { - random_in_list = { - list = madrasa_pupils - weight = { - base = 1 - # Skilled members are more likely to have their stats improved - modifier = { - add = { - value = learning - multiply = 0.1 - } - } - # Learning education members are more likely to gain more learning - modifier = { - has_focus = education_learning - add = 2 - } - # AI energy (Diligent, lazy, etc.) - modifier = { - ai_energy <= high_negative_ai_value - add = -2 - } - modifier = { - ai_energy >= high_positive_ai_value - add = 2 - } - } - save_scope_as = improved_youth - } - send_interface_message = { - type = event_learning_good - title = { - first_valid = { - # Call them madrasas if our capital is advanced enough - triggered_desc = { - trigger = { - capital_county ?= { - development_level >= bad_development_level - } - } - desc = fp3_yearly.2060.t_madrasas - } - # Otherwise just say that the youth are being educated in houses of worship - desc = fp3_yearly.2060.t_houses_of_worship - } - } - left_icon = scope:improved_youth - scope:improved_youth = { add_learning_skill = 2 } - } - } -} - -# Madrasas: Physician experience gain -fp3_yearly.2062 = { - hidden = yes - - # This event is more likely to trigger if you have more futuwaa members - weight_multiplier = { - base = 1 - modifier = { - add = { - value = list_size:madrasa_pupils - subtract = 1 - } - } - } - - immediate = { - random_in_list = { - list = madrasa_pupils - weight = { - base = 1 - # Members w/high learning are more likely to gain physician experience - modifier = { - add = { - value = learning - multiply = 0.1 - } - } - # AI energy (Diligent, lazy, etc.) - modifier = { - ai_energy <= high_negative_ai_value - add = -2 - } - modifier = { - ai_energy >= high_positive_ai_value - add = 2 - } - } - save_scope_as = improved_youth - } - send_interface_message = { - type = event_learning_good - # "Madrasas" vs "Schooling in Mosques" - title = { - first_valid = { - # Call them madrasas if our capital is advanced enough - triggered_desc = { - trigger = { - capital_county ?= { - development_level >= bad_development_level - } - } - desc = fp3_yearly.2060.t_madrasas - } - # Otherwise just say that the youth are being educated in houses of worship - desc = fp3_yearly.2060.t_houses_of_worship - } - } - left_icon = scope:improved_youth - scope:improved_youth = { - if = { - limit = { has_trait = lifestyle_physician } - add_trait_xp = { - trait = lifestyle_physician - value = { - integer_range = { - min = 5 - max = 10 - } - } - } - } - else = { add_trait = lifestyle_physician } - } - } - } -} diff --git a/events/dlc/fp3/fp3_yearly_events_hugo.txt b/events/dlc/fp3/fp3_yearly_events_hugo.txt index ddd91366e..db395763d 100644 --- a/events/dlc/fp3/fp3_yearly_events_hugo.txt +++ b/events/dlc/fp3/fp3_yearly_events_hugo.txt @@ -61,7 +61,7 @@ fp3_h_yearly.0001 = { } cp:councillor_court_chaplain = { is_ai = yes - faith = { trait_is_sin = drunkard } + rite = { trait_is_sin_rite = drunkard } trigger_if = { limit = { exists = house } house != root.house @@ -91,7 +91,7 @@ fp3_h_yearly.0001 = { #No duel, this deflection always succeeds. - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_gain deceitful = minor_stress_loss callous = minor_stress_loss @@ -107,12 +107,12 @@ fp3_h_yearly.0001 = { name = fp3_h_yearly.0001.b trigger = { OR = { - has_trait = scholar + has_trait = erudite has_trait = theologian has_trait = whole_of_body has_trait = lifestyle_physician has_trait = lifestyle_poet - faith = { trait_is_virtue = drunkard } + rite = { trait_is_virtue_rite = drunkard } } } @@ -160,7 +160,7 @@ fp3_h_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { honest = minor_stress_gain humble = minor_stress_gain callous = minor_stress_loss @@ -178,7 +178,7 @@ fp3_h_yearly.0001 = { IMPRISONER = scope:actor } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_gain zealous = medium_stress_gain deceitful = minor_stress_loss @@ -258,7 +258,7 @@ fp3_h_yearly.0001 = { } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_gain greedy = minor_stress_gain honest = minor_stress_gain @@ -275,7 +275,7 @@ fp3_h_yearly.0001 = { modifier = ulema_displeased_drinking years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_gain deceitful = minor_stress_gain drunkard = minor_stress_gain diff --git a/events/dlc/fp3/fp3_yearly_events_ola_batch_1.txt b/events/dlc/fp3/fp3_yearly_events_ola_batch_1.txt index fb0e92c7c..8140d18de 100644 --- a/events/dlc/fp3/fp3_yearly_events_ola_batch_1.txt +++ b/events/dlc/fp3/fp3_yearly_events_ola_batch_1.txt @@ -166,7 +166,7 @@ fp3_yearly.8000 = { #Ghazi Gone Bad scope:raging_ghazi = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss trusting = minor_stress_impact_loss forgiving = minor_stress_impact_loss @@ -201,7 +201,7 @@ fp3_yearly.8000 = { #Ghazi Gone Bad remove_county_modifier = fp3_brutal_predations_county_modifier } - stress_impact = { + stress_and_fulfillment_impact = { just = medium_stress_impact_loss vengeful = minor_stress_impact_loss zealous = medium_stress_impact_gain @@ -245,7 +245,7 @@ fp3_yearly.8000 = { #Ghazi Gone Bad } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss greedy = minor_stress_impact_loss just = major_stress_impact_gain @@ -383,7 +383,7 @@ fp3_yearly.8001 = { #Frontier Fortress Benefactor remove_treasury_or_gold = minor_treasury_or_gold_value #gotta pay for travel expenses! - stress_impact = { + stress_and_fulfillment_impact = { diligent = medium_stress_impact_loss brave = minor_stress_impact_loss humble = minor_stress_impact_loss @@ -417,7 +417,7 @@ fp3_yearly.8001 = { #Frontier Fortress Benefactor } scope:concerned_councillor = { #checking that they can be a misogynist/misandrist in this matter NOR = { - faith = { has_doctrine = doctrine_gender_equal } + rite = { rite_has_doctrine = doctrine_gender_equal } culture = { has_cultural_parameter = has_access_to_shieldmaidens } } } @@ -514,7 +514,7 @@ fp3_yearly.8001 = { #Frontier Fortress Benefactor } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss craven = minor_stress_impact_loss cynical = minor_stress_impact_loss @@ -616,7 +616,7 @@ fp3_yearly.8001 = { #Frontier Fortress Benefactor } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss craven = major_stress_impact_loss content = minor_stress_impact_loss @@ -650,7 +650,7 @@ fp3_yearly.8001 = { #Frontier Fortress Benefactor } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = major_stress_impact_loss craven = medium_stress_impact_loss content = minor_stress_impact_loss @@ -710,12 +710,9 @@ fp3_yearly.8002 = { #Faith at the Frontier root.capital_province = { geographical_region = world_persian_empire } #so that this inside-to-outside worldview makes sense - faith = { #so that the plot makes sense - NOR = { - has_doctrine_parameter = unreformed # Unreformed Pagans don't need frontier fortresses, generally speaking - has_doctrine = doctrine_pluralism_pluralistic - } - } + #so that the plot makes sense + faith = { NOT = { has_doctrine_parameter = unreformed } } # Unreformed Pagans don't need frontier fortresses, generally speaking + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } OR = { #Either could make sense, may as well make it as flexible as possible any_spouse = { @@ -765,14 +762,12 @@ fp3_yearly.8002 = { #Faith at the Frontier this != root.faith fervor > medium_fervor_value OR = { - this = faith:nizari - this = faith:zayidi - this = faith:qarmatian + this = faith:shia this = faith:zurvanism this = faith:khurramism this = faith:nestorian - this = faith:manichean - this = faith:mahayana + this = faith:manichaean_faith + this = faith:mahayana_faith } } alternative_limit = { #just a failsafe to avoid errors @@ -789,17 +784,16 @@ fp3_yearly.8002 = { #Faith at the Frontier this != root.faith fervor > medium_fervor_value OR = { - this = faith:azariqa - this = faith:mutazila - this = faith:ghulat - this = faith:zayidi + this = faith:kharijite + this = faith:sunni + this = faith:shia this = faith:zurvanism this = faith:khurramism this = faith:mazdakism this = faith:nestorian - this = faith:manichean #the "Arch-Heresy" according to Cambridge History of Iran ^_^ + this = faith:manichaean_faith #the "Arch-Heresy" according to Cambridge History of Iran ^_^ this = faith:zun_pagan - this = faith:mahayana + this = faith:mahayana_faith } } alternative_limit = { #just a failsafe to avoid errors @@ -904,7 +898,7 @@ fp3_yearly.8002 = { #Faith at the Frontier } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = major_stress_impact_loss callous = medium_stress_impact_loss wrathful = minor_stress_impact_loss @@ -971,7 +965,7 @@ fp3_yearly.8002 = { #Faith at the Frontier } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = major_stress_impact_loss humble = medium_stress_impact_loss brave = minor_stress_impact_loss @@ -1080,7 +1074,7 @@ fp3_yearly.8002 = { #Faith at the Frontier } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = major_stress_impact_loss shy = minor_stress_impact_loss trusting = minor_stress_impact_loss @@ -1137,7 +1131,7 @@ fp3_yearly.8002 = { #Faith at the Frontier } } - stress_impact = { + stress_and_fulfillment_impact = { patient = medium_stress_impact_loss calm = minor_stress_impact_loss cynical = minor_stress_impact_loss @@ -1306,10 +1300,10 @@ fp3_yearly.8003 = { #Exotic Espand name = fp3_yearly.8003.a trigger = { - faith = { + rite = { OR = { - has_doctrine_parameter = witchcraft_illegal - has_doctrine_parameter = witchcraft_shunned + rite_has_parameter = witchcraft_illegal + rite_has_parameter = witchcraft_shunned } } } @@ -1348,7 +1342,7 @@ fp3_yearly.8003 = { #Exotic Espand } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss callous = minor_stress_impact_loss zealous = minor_stress_impact_loss @@ -1423,7 +1417,7 @@ fp3_yearly.8003 = { #Exotic Espand } } - stress_impact = { + stress_and_fulfillment_impact = { generous = major_stress_impact_loss compassionate = minor_stress_impact_loss diligent = minor_stress_impact_loss @@ -1544,7 +1538,7 @@ fp3_yearly.8003 = { #Exotic Espand } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = medium_stress_impact_loss greedy = minor_stress_impact_loss trusting = minor_stress_impact_loss @@ -1601,7 +1595,7 @@ fp3_yearly.8003 = { #Exotic Espand } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss callous = minor_stress_impact_loss temperate = minor_stress_impact_loss @@ -1839,7 +1833,7 @@ fp3_yearly.8004 = { #The Frontier Beckons INVALIDATION_EVENT = fp3_yearly.8006 } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain forgiving = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -1874,7 +1868,7 @@ fp3_yearly.8004 = { #The Frontier Beckons option = { # Appeal to their better nature name = fp3_yearly.8004.b - stress_impact = { + stress_and_fulfillment_impact = { impatient = major_stress_impact_gain wrathful = major_stress_impact_gain arrogant = medium_stress_impact_gain @@ -1968,7 +1962,7 @@ fp3_yearly.8004 = { #The Frontier Beckons name = fp3_yearly.8004.c flavor = fp3_yearly.8004.c.flavor - stress_impact = { + stress_and_fulfillment_impact = { impatient = major_stress_impact_gain wrathful = major_stress_impact_gain arrogant = medium_stress_impact_gain @@ -2092,7 +2086,7 @@ fp3_yearly.8004 = { #The Frontier Beckons } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss patient = medium_stress_impact_loss calm = minor_stress_impact_loss @@ -2422,14 +2416,10 @@ fp3_yearly.8009 = { root.faith.religious_head = { is_ai = yes fp3_yearly.8009_root_and_hof_faith_comparison_trigger = yes - faith = { - NOR = { - has_doctrine_parameter = unreformed - has_doctrine_parameter = witchcraft_accepted - has_doctrine = doctrine_pluralism_pluralistic - has_doctrine = tenet_carnal_exaltation - } - } + NOT = { rite = { rite_has_parameter = witchcraft_accepted } } + faith = { NOT = { has_doctrine_parameter = unreformed } } + NOT = { rite = { rite_has_tenet = tenet_carnal_exaltation } } + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } any_held_county = { @@ -2475,6 +2465,7 @@ fp3_yearly.8009 = { age = { 25 75 } location = root.capital_province faith = root.faith.religious_head.faith + rite = root.faith.religious_head.rite gender_female_chance = root_faith_dominant_gender_female_chance #could be female, if given the right context. trait = diplomat template = priest_character_template @@ -2551,7 +2542,7 @@ fp3_yearly.8009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = major_stress_impact_loss callous = medium_stress_impact_loss wrathful = minor_stress_impact_loss @@ -2623,7 +2614,7 @@ fp3_yearly.8009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_loss zealous = minor_stress_impact_loss arrogant = minor_stress_impact_gain @@ -2721,7 +2712,7 @@ fp3_yearly.8009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss diligent = medium_stress_impact_gain } @@ -2752,7 +2743,7 @@ fp3_yearly.8009 = { } } - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_loss cynical = minor_stress_impact_loss lazy = minor_stress_impact_loss @@ -2831,13 +2822,13 @@ fp3_yearly.8010 = { has_trait = compassionate has_trait = just } - faith = { + faith = { NOR = { has_doctrine_parameter = unreformed - has_doctrine = doctrine_pluralism_pluralistic - has_doctrine_parameter = holy_wars_forbidden # Pacifists cannot Holy War - } - } + has_doctrine_parameter = holy_wars_forbidden # Pacifists cannot Holy War + } + } + rite = { NOT = { rite_has_doctrine = doctrine_pluralism_pluralistic } } } root.capital_province = { geographical_region = world_persian_empire } # so that this inside-to-outside worldview makes sense @@ -2916,7 +2907,7 @@ fp3_yearly.8010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_loss wrathful = minor_stress_impact_loss zealous = minor_stress_impact_loss @@ -2977,7 +2968,7 @@ fp3_yearly.8010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss greedy = minor_stress_impact_loss content = minor_stress_impact_gain @@ -3060,7 +3051,7 @@ fp3_yearly.8010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_loss craven = minor_stress_impact_loss patient = minor_stress_impact_loss @@ -3104,7 +3095,7 @@ fp3_yearly.8010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_loss compassionate = minor_stress_impact_loss cynical = minor_stress_impact_loss @@ -3241,7 +3232,7 @@ fp3_yearly.8013 = { # Caliphal Dissapointment (follow-up-event) ################################### scripted_trigger fp3_opportunistic_drunkard_trigger = { - faith = { trait_is_sin = drunkard } + rite = { trait_is_sin_rite = drunkard } has_trait = deceitful OR = { has_trait = drunkard @@ -3272,7 +3263,7 @@ fp3_yearly.8014 = { root.capital_province = { geographical_region = world_persian_empire } - faith = { trait_is_sin = drunkard } + rite = { trait_is_sin_rite = drunkard } OR = { has_trait = drunkard @@ -3365,7 +3356,7 @@ fp3_yearly.8014 = { } } - stress_impact = { + stress_and_fulfillment_impact = { deceitful = minor_stress_impact_loss drunkard = medium_stress_impact_loss gregarious = minor_stress_impact_loss @@ -3399,7 +3390,7 @@ fp3_yearly.8014 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss honest = minor_stress_impact_loss temperate = minor_stress_impact_loss @@ -3437,7 +3428,7 @@ fp3_yearly.8014 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss just = minor_stress_impact_loss honest = minor_stress_impact_loss @@ -3601,7 +3592,7 @@ fp3_yearly.8016 = { } } - stress_impact = { + stress_and_fulfillment_impact = { irritable = minor_stress_impact_loss wrathful = minor_stress_impact_loss zealous = minor_stress_impact_loss @@ -3621,9 +3612,9 @@ fp3_yearly.8016 = { } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss - scholar = minor_stress_impact_loss + erudite = minor_stress_impact_loss craven = minor_stress_impact_loss paranoid = minor_stress_impact_loss trusting = minor_stress_impact_gain @@ -3714,7 +3705,7 @@ fp3_yearly.8016 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss diligent = minor_stress_impact_loss trusting = minor_stress_impact_gain @@ -3813,7 +3804,7 @@ fp3_yearly.8017 = { opinion = 20 } } - stress_impact = { greedy = medium_stress_impact_gain } + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } } #This is a bad open...maybe I'd better return those stones... @@ -3837,7 +3828,7 @@ fp3_yearly.8017 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss paranoid = medium_stress_impact_loss zealous = minor_stress_impact_loss @@ -3952,7 +3943,7 @@ fp3_yearly.8018 = { add_gold = massive_gold_value - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain arrogant = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -3973,7 +3964,7 @@ fp3_yearly.8018 = { option = { name = fp3_yearly.8018.b - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_loss content = minor_stress_impact_loss } @@ -4004,7 +3995,7 @@ fp3_yearly.8018 = { years = 20 } - stress_impact = { + stress_and_fulfillment_impact = { calm = medium_stress_impact_gain shy = minor_stress_impact_gain compassionate = minor_stress_impact_gain diff --git a/events/dlc/fp3/fp3_yearly_frontier_chains.txt b/events/dlc/fp3/fp3_yearly_frontier_chains.txt deleted file mode 100644 index a902d3cd2..000000000 --- a/events/dlc/fp3/fp3_yearly_frontier_chains.txt +++ /dev/null @@ -1,824 +0,0 @@ -namespace = fp3_yearly - -scripted_trigger not_steppe_nomad_trigger = { - culture = { - NOR = { - has_cultural_pillar = heritage_mongolic - has_cultural_pillar = heritage_turkic - has_cultural_tradition = tradition_horse_lords - } - } -} - -scripted_trigger suitable_nomad_settling_province_trigger = { - has_holding_type = castle_holding - barony = { - is_under_holy_order_lease = no - #is_capital_barony = no - } -} - - -fp3_yearly.8888 = { #Nomads story cycle - type = character_event - title = fp3_yearly.8888.t - desc = fp3_yearly.8888.desc - theme = vassal - left_portrait = { - character = scope:upset_vassal - animation = anger - } - right_portrait = { - character = root - animation = personality_rational - triggered_animation = { - trigger = { - diplomacy >= decent_skill_rating - } - animation = personality_honorable - } - } - lower_left_portrait = { - character = scope:possibly_capable_marshal - } - lower_right_portrait = { - character = scope:turkic_leader - } - - trigger = { - - #standard checks - has_fp3_dlc_trigger = yes - root.capital_province = { geographical_region = world_persian_empire } - is_available_at_peace_adult = yes - - #event fluff triggers - not_steppe_nomad_trigger = yes - - NOT = { has_character_flag = had_turkic_tribe_story } #since this event starts the story - - exists = cp:councillor_marshal - - cp:councillor_marshal = { - NOT = { has_trait = craven } - is_ai = yes - } - - any_vassal = { - not_steppe_nomad_trigger = yes - is_ai = yes - NOT = { - this = root.cp:councillor_marshal - } - any_held_county = { - any_county_province = { - geographical_region = dlc_fp3_eastern_persian_frontier_regions - NOT = { terrain = steppe } - } - } - } - - any_held_county = { any_county_province = { suitable_nomad_settling_province_trigger = yes } } - } - - cooldown = { years = 50 } - - immediate = { - - random_vassal = { - limit = { - not_steppe_nomad_trigger = yes - is_ai = yes - NOT = { - this = root.cp:councillor_marshal - } - any_held_county = { - any_county_province = { - geographical_region = dlc_fp3_eastern_persian_frontier_regions - NOT = { terrain = steppe } - } - } - } - save_scope_as = upset_vassal - random_held_county = { - limit = { - any_county_province = { - geographical_region = dlc_fp3_eastern_persian_frontier_regions - NOT = { terrain = steppe } - } - } - save_scope_as = nomads_county - } - } - - random_held_county = { - limit = { - any_county_province = { suitable_nomad_settling_province_trigger = yes } - } - save_scope_as = nomads_new_county #for use in the claim the former_master might get - } - - scope:nomads_new_county = { - random_county_province = { - limit = { suitable_nomad_settling_province_trigger = yes } - barony = { save_scope_as = nomads_barony } - } - } - - cp:councillor_marshal = { save_scope_as = possibly_capable_marshal } - - scope:nomads_county = { - add_county_modifier = { - modifier = fp3_nomad_friction_county_modifier - years = 50 - } - } - - create_character = { - location = root.capital_province - template = fp3_turko-mongol_leader - save_scope_as = turkic_leader - } - } - - option = { - name = fp3_yearly.8888.a - - duel = { - skill = diplomacy - value = average_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - custom_tooltip = fp3_treating_with_turks.success.tt - trigger_event = { - id = fp3_yearly.8889 - days = { 2 3 } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - - custom_tooltip = fp3_treating_with_turks.failure.tt - send_interface_toast = { - title = fp3_treating_with_turks_toast.failure - left_icon = root - } - } - } - - scope:upset_vassal = { - if = { - limit = { - OR = { #if he's diplomatically minded, he'll appreciate this - has_trait = forgiving - has_trait = trusting - has_trait = compassionate - has_diplomacy_lifestyle_trait_trigger = yes - } - } - add_opinion = { - target = root - opinion = 20 - modifier = respect_opinion - } - } - else = { - add_opinion = { #but otherwise, they're not on board - target = root - opinion = -10 - modifier = fp3_treats_with_barbarians_opinion - } - } - } - - scope:possibly_capable_marshal = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - stress_impact = { - craven = medium_stress_impact_gain - lazy = medium_stress_impact_gain - shy = medium_stress_impact_gain - gregarious = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_boldness = 1 - ai_compassion = 0.5 - } - } - } - - option = { - name = fp3_yearly.8888.b - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = 20 - modifier = grateful_opinion - } - } - - scope:possibly_capable_marshal = { - add_opinion = { - target = root - opinion = 10 - modifier = trusted_me_opinion - } - } - - scope:possibly_capable_marshal = { - duel = { - skill = martial - value = average_skill_rating - - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2 - } - root = { - custom_tooltip = fp3_fighting_turks.success.tt - trigger_event = { - id = fp3_yearly.8890 - days = { 2 3 } - } - } - } - 20 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - root = { - custom_tooltip = fp3_fighting_turks.failure.tt - send_interface_toast = { - title = fp3_fighting_turks_toast.failure - left_icon = scope:possibly_capable_marshal - } - } - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_vengefulness = 0.5 - } - } - } - - option = { #Ignore the issue - name = fp3_yearly.8888.c - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = -20 - modifier = angry_opinion - } - } - - scope:possibly_capable_marshal = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - stress_impact = { - ambitious = minor_stress_impact_gain - diligent = minor_stress_impact_gain - just = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -fp3_yearly.8889 = { #Nomads story cycle - type = character_event - title = fp3_yearly.8889.t - desc = fp3_yearly.8889.desc - theme = vassal - left_portrait = { - character = scope:turkic_leader - animation = disapproval - } - right_portrait = { - character = root - animation = drink_goblet - triggered_animation = { - trigger = { - diplomacy >= decent_skill_rating - NOR = { - has_trait = callous - has_trait = wrathful - has_trait = vengeful - } - } - animation = personality_compassionate - } - } - lower_left_portrait = { - character = scope:upset_vassal - } - - override_background = { reference = wilderness } - - trigger = { - - #standard checks - is_available_adult = yes - - #event not breaking sanity triggers - exists = scope:upset_vassal - scope:upset_vassal = { is_alive = yes } - - exists = scope:turkic_leader - scope:turkic_leader = { is_alive = yes } - - exists = scope:nomads_county - - exists = scope:nomads_new_county - } - - option = { - name = fp3_yearly.8889.a - - - if = { - limit = { - scope:upset_vassal = { - NOT = { - has_relation_rival = root - has_relation_nemesis = root - } - } - } - root = { - progress_towards_rival_effect = { - CHARACTER = scope:upset_vassal - REASON = rival_let_hostile_nomads_roam_free - OPINION = -20 - } - } - } - else = { - scope:upset_vassal = { - add_opinion = { - target = root - opinion = -40 - modifier = hate_opinion - } - } - } - - add_courtier = scope:turkic_leader - - spawn_army = { - men_at_arms = { - type = horse_archers - stacks = 1 - } - location = root.capital_province - war_keep_on_attacker_victory = yes - uses_supply = yes - inheritable = no - save_scope_as = horsemen_army - name = turkic_tribal_event_troops - } - - #This is needed to make the story cycle able to pick up the scopes - set_variable = { - name = turkic_leader - value = scope:turkic_leader - } - set_variable = { - name = upset_vassal - value = scope:upset_vassal - } - set_variable = { - name = nomads_county - value = scope:nomads_county - } - set_variable = { - name = nomads_new_county - value = scope:nomads_new_county - } - - create_story = turkic_tribe_story - - stress_impact = { - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.4 - ai_boldness = 0.7 - ai_vengefulness = 0.3 - } - } - } - - option = { - name = fp3_yearly.8889.b - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = -10 - modifier = disappointed_opinion - } - } - - add_courtier = scope:turkic_leader - - spawn_army = { - men_at_arms = { - type = horse_archers - stacks = 1 - } - location = root.capital_province - war_keep_on_attacker_victory = yes - uses_supply = yes - inheritable = no - save_scope_as = horsemen_army - name = turkic_tribal_event_troops - } - - #This is needed to make the story cycle able to pick up the scopes - set_variable = { - name = turkic_leader - value = scope:turkic_leader - } - set_variable = { - name = upset_vassal - value = scope:upset_vassal - } - set_variable = { - name = nomads_county - value = scope:nomads_county - } - set_variable = { - name = nomads_new_county - value = scope:nomads_new_county - } - - create_story = turkic_tribe_story - - scope:nomads_county = { - remove_county_modifier = fp3_nomad_friction_county_modifier - } - - scope:nomads_new_county = { - add_county_modifier = { - modifier = fp3_nomad_friction_county_modifier - years = 30 - } - } - - stress_impact = { - generous = medium_stress_impact_loss - content = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.6 - ai_boldness = 1 - ai_compassion = 0.2 - } - } - } - - option = { #no deal - name = fp3_yearly.8889.c - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - stress_impact = { - ambitious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - ai_vengefulness = 0.5 - } - } - } -} - - - - -fp3_yearly.8890 = { #Nomads story cycle - type = character_event - title = fp3_yearly.8890.t - desc = { - desc = fp3_yearly.8890.desc_beginning - first_valid = { - triggered_desc = { - trigger = { - scope:upset_vassal = { - AND = { - ai_compassion < medium_positive_ai_value - ai_vengefulness > medium_positive_ai_value - } - } - } - desc = fp3_yearly.8890_brutal_demands - } - desc = fp3_yearly.8890_nonbrutal_demands - } - desc = fp3_yearly.8890.desc_ending - } - - - theme = vassal - left_portrait = { - character = scope:turkic_leader - animation = prisonhouse - } - right_portrait = { - character = root - animation = personality_rational - triggered_animation = { - trigger = { - diplomacy < high_skill_rating - NOR = { - has_trait = compassionate - has_trait = forgiving - has_trait = just - } - } - animation = personality_callous - } - } - lower_left_portrait = { - character = scope:upset_vassal - } - - lower_right_portrait = { - character = scope:possibly_capable_marshal - } - - trigger = { - - #standard checks - is_available_adult = yes - - #event not breaking sanity triggers - exists = scope:upset_vassal - scope:upset_vassal = { is_alive = yes } - - exists = scope:turkic_leader - scope:turkic_leader = { is_alive = yes } - - exists = scope:nomads_county - - exists = scope:nomads_new_county - } - - option = { - name = fp3_yearly.8890.a - - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = -15 - modifier = fp3_suspicious_motives_opinion - } - } - - add_courtier = scope:turkic_leader - - add_hook = { - type = indebted_hook - target = scope:turkic_leader - } - - spawn_army = { - men_at_arms = { - type = horse_archers - stacks = 1 - } - location = root.capital_province - war_keep_on_attacker_victory = yes - uses_supply = yes - inheritable = no - save_scope_as = horsemen_army - name = turkic_tribal_event_troops - } - - #This is needed to make the story cycle able to pick up the scopes - set_variable = { - name = turkic_leader - value = scope:turkic_leader - } - set_variable = { - name = upset_vassal - value = scope:upset_vassal - } - set_variable = { - name = nomads_county - value = scope:nomads_county - } - set_variable = { - name = nomads_new_county - value = scope:nomads_new_county - } - - create_story = turkic_tribe_story - - scope:nomads_county = { - remove_county_modifier = fp3_nomad_friction_county_modifier - } - - scope:nomads_new_county = { - add_county_modifier = { - modifier = fp3_nomad_friction_county_modifier - years = 30 - } - } - - stress_impact = { - content = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_rationality = 0.5 - } - } - } - - option = { #execute the nomad leader - name = fp3_yearly.8890.b - - add_dread = medium_dread_gain - - scope:upset_vassal = { - if = { - limit = { - AND = { #if they're cruel, he'll enjoy this - ai_compassion < 0 - ai_vengefulness > medium_positive_ai_value - } - } - add_opinion = { - target = root - opinion = 30 - modifier = fp3_very_very_pleased_opinion - } - } - else = { - add_opinion = { #but otherwise, they're not on board - target = root - opinion = -10 - modifier = fp3_went_too_far_opinion - } - } - } - - - scope:turkic_leader = { - death = { - death_reason = death_execution - killer = root - } - } - - random_list = { - 50 = { - send_interface_toast = { - title = nomad_friction_gone.tt - left_icon = root - - scope:nomads_county = { remove_county_modifier = fp3_nomad_friction_county_modifier } - } - } - 50 = { - send_interface_toast = { - title = nomad_friction_active.tt - left_icon = root - - scope:nomads_county = { - add_county_modifier = { - modifier = fp3_vengeful_nomads_county_modifier - years = 10 - } - } - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - just = medium_stress_impact_gain - arbitrary = medium_stress_impact_loss - sadistic = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_compassion = -1 - } - } - } - - option = { - name = fp3_yearly.8890.c - - add_dread = minor_dread_gain - - scope:turkic_leader = { - hard_imprison_character_effect = { - TARGET = this - IMPRISONER = root - } - } - - scope:upset_vassal = { - add_opinion = { - target = root - opinion = 20 - modifier = pleased_opinion - } - } - - random = { - chance = 75 - send_interface_toast = { - title = nomad_friction_gone.tt - left_icon = root - - scope:nomads_county = { remove_county_modifier = fp3_nomad_friction_county_modifier } - } - } - - - stress_impact = { - compassionate = minor_stress_impact_gain - just = minor_stress_impact_gain - arbitrary = minor_stress_impact_loss - cynical = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 0.5 - ai_rationality = 1 - ai_compassion = -0.5 - } - } - } -} diff --git a/events/dlc/mpo/court_astrologer_events.txt b/events/dlc/mpo/court_astrologer_events.txt deleted file mode 100644 index 9b2b2d159..000000000 --- a/events/dlc/mpo/court_astrologer_events.txt +++ /dev/null @@ -1,307 +0,0 @@ -namespace = court_astrologer_events - -#Triggered by the "Consult the Skies" decision -court_astrologer_events.0001 = { - type = character_event - title = court_astrologer_events.0001.t - desc = court_astrologer_events.0001.desc - theme = faith - override_effect_2d = { - reference = legend_glow - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = zealous - } - animation = beg - } - triggered_animation = { - trigger = { - OR = { - has_trait = craven - has_trait = paranoid - } - } - animation = worry - } - triggered_animation = { - trigger = { - OR = { - has_trait = cynical - has_trait = arrogant - } - } - animation = boredom - } - animation = prayer - } - right_portrait = { - character = scope:astrologer - animation = holding_staff - } - - immediate = { - random_courtier = { - limit = { has_court_position = court_astrologer_court_position } - save_scope_as = astrologer - } - } - - option = { # Tell me about my love life - name = court_astrologer_events.0001.a - random_list = { - 50 = { - desc = court_astrologer_events.0001.a.success - send_interface_toast = { - title = court_astrologer_events.0001.a.success - left_icon = root - custom_tooltip = court_astrologer_events.0001.a.success.tt - if = { - limit = { - culture ?= { has_cultural_pillar = ethos_spiritual } - } - add_character_modifier = { - modifier = mpo_divination_love_spiritual_modifier - years = 5 - } - } - else = { - add_character_modifier = { - modifier = mpo_divination_love_modifier - years = 5 - } - } - } - } - 50 = { - desc = court_astrologer_events.0001.a.failure - send_interface_toast = { - title = court_astrologer_events.0001.a.failure - left_icon = root - add_stress = minor_stress_loss - } - } - } - stress_impact = { - paranoid = miniscule_stress_impact_gain - cynical = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Tell me about war - name = court_astrologer_events.0001.b - random_list = { - 50 = { - desc = court_astrologer_events.0001.b.success - send_interface_toast = { - title = court_astrologer_events.0001.b.success - left_icon = root - if = { - limit = { - culture ?= { has_cultural_pillar = ethos_spiritual } - } - add_character_modifier = { - modifier = mpo_divination_war_spiritual_modifier - years = 5 - } - } - else = { - add_character_modifier = { - modifier = mpo_divination_war_modifier - years = 5 - } - } - } - } - 50 = { - desc = court_astrologer_events.0001.a.failure - send_interface_toast = { - title = court_astrologer_events.0001.a.failure - left_icon = root - add_stress = minor_stress_loss - } - } - } - stress_impact = { - paranoid = miniscule_stress_impact_gain - cynical = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Just tell me about life - name = court_astrologer_events.0001.c - random_list = { - 50 = { - desc = court_astrologer_events.0001.c.success - send_interface_toast = { - title = court_astrologer_events.0001.c.success - left_icon = root - if = { - limit = { - culture ?= { has_cultural_pillar = ethos_spiritual } - } - add_character_modifier = { - modifier = mpo_divination_life_spiritual_modifier - years = 5 - } - } - else = { - add_character_modifier = { - modifier = mpo_divination_life_modifier - years = 5 - } - } - } - } - 50 = { - desc = court_astrologer_events.0001.a.failure - send_interface_toast = { - title = court_astrologer_events.0001.a.failure - left_icon = root - add_stress = minor_stress_loss - } - } - } - stress_impact = { - paranoid = miniscule_stress_impact_gain - cynical = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Actually, not right now - name = court_astrologer_events.0001.d - remove_decision_cooldown = mpo_divination_decision - ai_chance = { - base = 0 - } - } -} - -# Migration Suggestion -scripted_trigger court_astrologer_events_0002_neighbour_trigger = { - government_has_flag = government_is_nomadic - current_domain_fertility >= root.current_domain_fertility - is_independent_ruler = yes -} - -court_astrologer_events.0002 = { - type = character_event - title = court_astrologer_events.0002.t - desc = { - desc = court_astrologer_events.0002.desc.intro - first_valid = { - triggered_desc = { - trigger = { - location.county.county_fertility <= bad_county_fertility_level - } - desc = court_astrologer_events.0002.desc.bad - } - desc = court_astrologer_events.0002.desc.meh - } - desc = court_astrologer_events.0002.desc.outro - } - theme = nomads - override_background = { reference = mpo_steppe_evening } - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:astrologer - animation = holding_staff - } - lower_center_portrait = scope:target_realm_owner - cooldown = { years = 5 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - employs_court_position = court_astrologer_court_position - court_position:court_astrologer_court_position = { is_available = yes } - any_neighboring_realm_same_rank_owner = { - court_astrologer_events_0002_neighbour_trigger = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - current_domain_fertility <= bad_county_fertility_level - factor = 2 - } - } - - immediate = { - court_position:court_astrologer_court_position = { - save_scope_as = astrologer - get_quirk_character_effect = yes - } - ordered_neighboring_realm_same_rank_owner = { - limit = { - court_astrologer_events_0002_neighbour_trigger = yes - } - order_by = current_domain_fertility - save_scope_as = target_realm_owner - primary_title = { save_scope_as = target_realm } - } - } - - option = { # Sounds like a great idea - name = court_astrologer_events.0002.a - custom_tooltip = court_astrologer_events.0002.a.tt - set_variable = { - name = astrologer_desired_area - value = scope:target_realm - years = 5 - } - stress_impact = { - paranoid = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Thank you for your feedback - name = court_astrologer_events.0002.b - scope:astrologer = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - stress_impact = { - paranoid = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # I'm good - name = court_astrologer_events.0002.c - add_prestige = minor_prestige_gain - stress_impact = { - paranoid = medium_stress_impact_gain - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } -} diff --git a/events/dlc/mpo/mpo_decisions_events.txt b/events/dlc/mpo/mpo_decisions_events.txt deleted file mode 100644 index fda33c9de..000000000 --- a/events/dlc/mpo/mpo_decisions_events.txt +++ /dev/null @@ -1,9326 +0,0 @@ -################################################### -## MPO Decision Events -## -## 0001 Offer Confederation -## 0200 Study Commander Trait -## 0300 Fertility Dance -## 0400 Pax Mongolica -## 0500 Desperate Stance -## 0060 Invite Shepherds -## 0120 Adopt the Nomadic Ways - -namespace = mpo_decisions_events - -scripted_trigger mpo_decisions_events_0001_threat_trigger = { - save_temporary_scope_as = confederate - trigger_if = { - limit = { - max_military_strength > 0 - } - confederation_worthy_foe_strength_ratio_value_root <= 0.5 - } - NOT = { is_allied_to = root } - OR = { - highest_held_title_tier >= tier_kingdom - faith = { - faith_hostility_level = { - target = root.faith - value >= faith_evil_level - } - } - has_trait = conqueror - has_trait = greatest_of_khans - is_gurkhan = yes - } -} - -#Confederation planning event -mpo_decisions_events.0001 = { - type = character_event - title = mpo_decisions_events.0001.t - desc = mpo_decisions_events.0001.desc - theme = vassal - override_background = { reference = wilderness } - left_portrait = { - character = root - animation = inspect_weapon - } - right_portrait = { - character = scope:warrior - animation = throne_room_two_handed_passive_shield - camera = camera_event_right_pointing_left - } - lower_right_portrait = scope:threat - - immediate = { - random_knight = { - limit = { - is_imprisoned = no - is_incapable = no - is_playable_character = no - } - save_scope_as = warrior - add_character_flag = need_military_outfit - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - } - random_courtier = { - limit = { - is_available_allow_travelling = yes - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - age <= 55 - } - save_scope_as = warrior - add_character_flag = need_military_outfit - } - } - if = { - limit = { - any_land_neighboring_realm_with_tributaries_owner = { - mpo_decisions_events_0001_threat_trigger = yes - } - } - ordered_land_neighboring_realm_with_tributaries_owner = { - order_by = current_military_strength - limit = { - mpo_decisions_events_0001_threat_trigger = yes - } - save_scope_as = threat - } - } - else_if = { - limit = { - NOT = { - exists = scope:threat - } - } - ordered_land_neighboring_realm_with_tributaries_owner = { - order_by = current_military_strength - limit = { - is_tributary = yes - suzerain ?= { - mpo_decisions_events_0001_threat_trigger = yes - } - } - suzerain = { - save_scope_as = threat - } - } - } - else_if = { - limit = { - NOT = { - exists = scope:threat - } - } - ordered_land_neighboring_realm_with_tributaries_owner = { - order_by = current_military_strength - limit = { - is_tributary = yes - top_suzerain ?= { - mpo_decisions_events_0001_threat_trigger = yes - } - } - top_suzerain = { - save_scope_as = threat - } - } - } - else = { - capital_county = { - kingdom = { - random_de_jure_county = { - limit = { - holder.top_liege = { - mpo_decisions_events_0001_threat_trigger = yes - } - } - holder.top_liege = { - save_scope_as = threat - } - } - } - } - } - if = { - limit = { - NOT = { - exists = scope:threat - } - } - ordered_land_neighboring_realm_with_tributaries_owner = { - order_by = current_military_strength - limit = { - NOT = { is_allied_to = root } - } - save_scope_as = threat - } - } - if = { - limit = { - any_realm_county = { - is_landless_type_title = no - kingdom = { - any_de_jure_county = { - holder.top_liege = scope:threat - } - } - } - } - random_realm_county = { - limit = { - is_landless_type_title = no - kingdom = { - any_de_jure_county = { - holder.top_liege = scope:threat - } - } - } - kingdom = { save_scope_as = home_kingdom } - } - - } - else = { - capital_county.kingdom = { - save_scope_as = home_kingdom - } - } - } - - option = { - name = mpo_decisions_events.0001.a - custom_tooltip = enables_offer_confederation_tt - custom_tooltip = offer_confederation_members_tt - custom_tooltip = offer_confederation_5_year_warning_tt - - add_character_flag = { - flag = forming_confederation - years = 5 - } - } - #opt out - option = { - trigger = { - is_ai = no - } - name = mpo_decisions_events.0001.b - remove_decision_cooldown = call_for_confederation_decision - } - after = { - scope:warrior ?= { - remove_character_flag = need_military_outfit - } - } -} - -#Leave confederation event for leaver -mpo_decisions_events.0002 = { - type = character_event - title = mpo_decisions_events.0002.t - desc = { - desc = mpo_decisions_events.0002.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:confederation - scope:confederation = { - any_confederation_member = { - count >= 2 - NOT = { - this = root - } - } - } - } - desc = mpo_decisions_events.0002.desc_confederation_survives - } - desc = mpo_decisions_events.0002.desc_confederation_done - } - } - theme = vassal - left_portrait = { - character = root - animation = dismissal - } - right_portrait = { - character = scope:other_confederate - animation = disappointed - camera = camera_event_right_forward - } - - immediate = { - ordered_in_list = { - order_by = max_military_strength - list = confederation_members - save_scope_as = other_confederate - } - scope:confederation = { - #Your confederation will survive, it has more members - if = { - limit = { - any_confederation_member = { - count >= 2 - NOT = { - this = root - } - } - } - remove_confederation_member = root - } - #Your confederation is toast - else = { - disband_confederation = yes - } - } - if = { - limit = { - government_has_flag = government_is_nomadic - } - show_as_tooltip = { - remove_character_modifier = mpo_confederation_member_modifier - } - } - every_in_list = { - list = confederation_members - custom = custom.every_confederation_member - add_opinion = { - modifier = turncoat_opinion - target = root - opinion = -20 - } - } - } - - #Bye - option = { - name = mpo_decisions_events.0002.a - every_in_list = { - list = confederation_members - trigger_event = mpo_decisions_events.0003 - } - } -} - -#Leave confederation event for other members -mpo_decisions_events.0003 = { - type = character_event - title = mpo_decisions_events.0003.t - desc = { - desc = mpo_decisions_events.0003.desc - first_valid = { - triggered_desc = { - trigger = { - is_confederation_member = yes - } - desc = mpo_decisions_events.0003.desc_confederation_survives - } - desc = mpo_decisions_events.0003.desc_confederation_done - } - } - theme = vassal - left_portrait = { - character = root - animation = war_defender - } - right_portrait = { - character = scope:leaver - animation = menacing - } - - immediate = { - if = { - limit = { - is_confederation_member = yes - } - custom_tooltip = leaver_left_confederation_tt - } - else = { - custom_tooltip = leaver_destroyed_confederation_tt - } - } - - #See ya later, I guess. Douchebag - option = { - name = mpo_decisions_events.0003.a - } -} - -#Confederation elevated - vassal -mpo_decisions_events.0004 = { - type = character_event - title = mpo_decisions_events.0004.t - desc = mpo_decisions_events.0004.desc - theme = vassal - override_background = { reference = courtyard } - left_portrait = { - character = root - animation = obsequious_bow - camera = camera_event_horse_left_forward - } - right_portrait = { - character = scope:new_king_ruler - animation = jockey_wave - camera = camera_event_horse_right - } - - immediate = { - - } - - option = { - name = mpo_decisions_events.0004.a - add_character_modifier = { - modifier = confederate_vassal_modifier - } - } - - option = { - name = mpo_decisions_events.0004.b - trigger = { - is_ai = no - } - create_title_and_vassal_change = { - type = independency - save_scope_as = change - } - becomes_independent = { change = scope:change } - resolve_title_and_vassal_change = scope:change - } -} - -#Confederation elevated - king -mpo_decisions_events.0005 = { - type = character_event - title = mpo_decisions_events.0005.t - desc = mpo_decisions_events.0005.desc - theme = crown - override_background = { reference = courtyard } - left_portrait = { - character = scope:new_king_ruler - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:vassal - animation = throne_room_kneel_1 - camera = camera_event_right_to_the_right - } - - immediate = { - ordered_vassal = { - order_by = "opinion(root)" - limit = { - age > 5 - basic_is_available_ai = yes - } - save_scope_as = vassal - } - } - - option = { - name = mpo_decisions_events.0005.a - add_character_modifier = { - modifier = confederate_king_modifier - years = 15 - } - every_sub_realm_county = { - custom = custom.every_realm_county - add_county_modifier = { - modifier = confederate_lands_modifier - years = 30 - } - } - } -} - -scripted_effect mpo_decisions_events_0020_bonuses_tooltips_effect = { - if = { - limit = { - is_vassal_of = root - is_ai = yes - NOT = { is_obedient_to = root } - } - custom_tooltip = friend_heir_target_vassal_tt - custom_tooltip = friend_heir_target_vassal_obedient_tt - } - if = { - limit = { - is_allied_to = root - } - custom_tooltip = friend_heir_target_ally_tt - } - custom_tooltip = friend_heir_success_factors_tt - - #Positive option unlocks - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value = 1 - } - } - custom_tooltip = heir_friend_1_common_trait_tt - } - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value = 2 - } - } - custom_tooltip = heir_friend_2_common_trait_tt - } - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value = 3 - } - } - custom_tooltip = heir_friend_3_common_trait_tt - } - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value = 4 - } - } - custom_tooltip = heir_friend_4_common_trait_tt - } - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value = 5 - } - } - custom_tooltip = heir_friend_5_common_trait_tt - } - if = { - limit = { - number_of_traits_in_common = { - target = scope:heir - value >= 6 - } - } - custom_tooltip = heir_friend_6_or_more_common_trait_tt - } - if = { - limit = { - OR = { - AND = { - has_trait = lifestyle_hunter - scope:heir = { has_trait = lifestyle_hunter } - } - AND = { - has_trait = lifestyle_reveler - scope:heir = { has_trait = lifestyle_reveler } - } - AND = { - has_trait = lifestyle_traveler - scope:heir = { has_trait = lifestyle_traveler } - } - AND = { - has_trait = lifestyle_blademaster - scope:heir = { has_trait = lifestyle_blademaster } - } - AND = { - has_trait = lifestyle_herbalist - scope:heir = { has_trait = lifestyle_herbalist } - } - AND = { - has_trait = lifestyle_mystic - scope:heir = { has_trait = lifestyle_mystic } - } - AND = { - has_trait = lifestyle_physician - scope:heir = { has_trait = lifestyle_physician } - } - AND = { - has_trait = lifestyle_poet - scope:heir = { has_trait = lifestyle_poet } - } - AND = { - has_trait = lifestyle_gardener - scope:heir = { has_trait = lifestyle_gardener } - } - AND = { - has_trait = drunkard - scope:heir = { has_trait = drunkard } - } - AND = { - has_trait = hashishiyah - scope:heir = { has_trait = hashishiyah } - } - } - } - custom_tooltip = heir_friend_lifestyle_tt - } - if = { - limit = { - OR = { - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = wit - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = wit - value >= 50 - } - } - } - } - } - custom_tooltip = heir_friend_sports_tt - } - if = { - limit = { - has_relation_blood_brother = root - } - custom_tooltip = heir_friend_blood_brother_tt - } - if = { - limit = { - OR = { - has_relation_friend = root - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_lover = root - } - } - custom_tooltip = heir_friend_positive_relation_tt - } - if = { - limit = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - custom_tooltip = heir_friend_house_tt - } - if = { - limit = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - custom_tooltip = heir_friend_culture_tt - } - - #Positive bonuses - if = { - limit = { - is_allied_to = root - } - custom_tooltip = heir_friend_roots_ally_tt - } - if = { - limit = { - opinion = { - target = scope:heir - value >= 25 - } - } - custom_tooltip = heir_friend_likes_heir_tt - } - if = { - limit = { - age_compared_to_player_heir < 10 - age_compared_to_player_heir > -10 - } - custom_tooltip = heir_friend_similar_age_tt - } - - #Negative maluses - if = { - limit = { - opinion = { - target = scope:heir - value <= 0 - } - opinion = { - target = scope:heir - value > -40 - } - } - custom_tooltip = heir_friend_dislikes_heir_tt - } - if = { - limit = { - opinion = { - target = scope:heir - value <= -40 - } - } - custom_tooltip = heir_friend_hates_heir_tt - } - if = { - limit = { - save_temporary_scope_as = temp_target - NOR = { - knows_language_of_culture = scope:heir.culture - scope:heir = { - knows_language_of_culture = scope:temp_target.culture - } - } - } - custom_tooltip = heir_friend_cant_communicate_tt - } - if = { - limit = { - OR = { - age_compared_to_player_heir >= 20 - age_compared_to_player_heir <= -20 - } - } - custom_tooltip = heir_friend_different_age_tt - } - if = { - limit = { - highest_held_title_tier = tier_kingdom - } - custom_tooltip = heir_friend_high_tier_tt - } - if = { - limit = { - highest_held_title_tier >= tier_empire - } - custom_tooltip = heir_friend_very_high_tier_tt - } -} - -#Introduce Heir (friend matchmaking) -#By Jason Cantalini -mpo_decisions_events.0020 = { - type = character_event - title = mpo_decisions_events.0020.t - desc = { - desc = mpo_decisions_events.0020.desc - first_valid = { - triggered_desc = { - trigger = { - any_in_list = { - list = saved_targets - count >= 2 - } - } - desc = mpo_decisions_events.0020.desc_multiple - } - desc = mpo_decisions_events.0020.desc_one - } - } - theme = nomads - override_background = { - trigger = { - government_has_flag = government_is_nomadic - } - reference = mpo_camp_steppe - } - override_background = { - trigger = { - NOT = { - government_has_flag = government_is_nomadic - } - } - reference = wilderness - } - left_portrait = { - character = root - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:heir - animation = horse_conversing_left - camera = camera_event_horse_right_facing_left - } - lower_right_portrait = scope:target_1 - lower_center_portrait = scope:target_2 - lower_left_portrait = scope:target_3 - - immediate = { - save_scope_as = root_scope - player_heir = { - save_scope_as = heir - #Yes, I know how stupid this looks - save_scope_as = loc_heir - } - #Save targets - #Allies will always precede powerful vassals, who precede regular vassals - - #Good relations with root - every_ally = { - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - OR = { - has_relation_friend = root - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_blood_brother = root - } - } - add_to_list = saved_targets - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - OR = { - has_relation_friend = root - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_blood_brother = root - } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - OR = { - has_relation_friend = root - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_blood_brother = root - } - } - add_to_list = saved_targets - } - } - #Take care of blood brothers - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_relation = { - type = blood_brother - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - #friends - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_relation = { - type = friend - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - #soulmates - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_relation = { - type = soulmate - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - #Allied vassal - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - is_allied_to = root - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - is_allied_to = root - } - add_to_list = saved_targets - } - } - #Same house as root - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_ally = { - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - AND = { - exists = house - exists = root.house - house = { - this = root.house - } - } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - AND = { - exists = house - exists = root.house - house = { - this = root.house - } - } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - AND = { - exists = house - exists = root.house - house = { - this = root.house - } - } - } - add_to_list = saved_targets - } - } - #Same culture as root - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_ally = { - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - culture = root.culture - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - culture = root.culture - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 0 - } - culture = root.culture - } - add_to_list = saved_targets - } - } - #Root likes them - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_ally = { - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 50 - } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 50 - } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - reverse_opinion = { - target = root - value >= 50 - } - } - add_to_list = saved_targets - } - } - #Any vassal/ally - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_ally = { - limit = { - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_powerful_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - if = { - limit = { - list_size = { - name = saved_targets - value < 5 - } - } - every_vassal = { - limit = { - is_obedient_to = root - mpo_valid_heir_friend_trigger = { CHARACTER = root } - } - add_to_list = saved_targets - } - } - - #Now that we've put top candidates in list, save their scopes - random_in_list = { - list = saved_targets - save_scope_as = target_1 - } - if = { - limit = { - any_in_list = { - list = saved_targets - NOT = { - this = scope:target_1 - } - } - } - random_in_list = { - list = saved_targets - limit = { - NOT = { - this = scope:target_1 - } - } - save_scope_as = target_2 - } - } - if = { - limit = { - any_in_list = { - list = saved_targets - NOR = { - this = scope:target_1 - this = scope:target_2 - } - } - } - random_in_list = { - list = saved_targets - limit = { - NOR = { - this = scope:target_1 - this = scope:target_2 - } - } - save_scope_as = target_3 - } - } - if = { - limit = { - any_in_list = { - list = saved_targets - NOR = { - this = scope:target_1 - this = scope:target_2 - this = scope:target_3 - } - } - } - random_in_list = { - list = saved_targets - limit = { - NOR = { - this = scope:target_1 - this = scope:target_2 - this = scope:target_3 - } - } - save_scope_as = target_4 - } - } - if = { - limit = { - any_in_list = { - list = saved_targets - NOR = { - this = scope:target_1 - this = scope:target_2 - this = scope:target_3 - this = scope:target_4 - } - } - } - random_in_list = { - list = saved_targets - limit = { - NOR = { - this = scope:target_1 - this = scope:target_2 - this = scope:target_3 - this = scope:target_4 - } - } - save_scope_as = target_5 - } - } - } - #Friends with friend-bachelor #1! - option = { - name = mpo_decisions_events.0020.a - scope:target_1 = { - save_scope_as = friendship_target - mpo_decisions_events_0020_bonuses_tooltips_effect = yes - } - trigger_event = { - id = mpo_decisions_events.0021 - days = 3 - } - stress_impact = { - shy = medium_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 101 - modifier = { - OR = { - has_relation_friend = scope:target_1 - has_relation_best_friend = scope:target_1 - has_relation_soulmate = scope:target_1 - has_relation_lover = scope:target_1 - has_relation_blood_brother = scope:target_1 - } - add = 100 - } - modifier = { - scope:target_1 = { - opinion = { - target = scope:heir - value <= 0 - } - } - add = -100 - } - modifier = { - scope:target_1 = { - opinion = { - target = scope:heir - value < -40 - } - } - add = -200 - } - modifier = { - scope:target_1 = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - add = 50 - } - modifier = { - scope:target_1 = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - add = 50 - } - modifier = { - scope:target_1 = { - opinion = { - target = scope:heir - value >= 75 - } - } - add = 100 - } - } - } - #Friends with friend-bachelor #2! - option = { - trigger = { - exists = scope:target_2 - } - name = mpo_decisions_events.0020.b - scope:target_2 = { - save_scope_as = friendship_target - mpo_decisions_events_0020_bonuses_tooltips_effect = yes - } - trigger_event = { - id = mpo_decisions_events.0021 - days = 3 - } - stress_impact = { - shy = medium_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 101 - modifier = { - OR = { - has_relation_friend = scope:target_2 - has_relation_best_friend = scope:target_2 - has_relation_soulmate = scope:target_2 - has_relation_lover = scope:target_2 - has_relation_blood_brother = scope:target_2 - } - add = 100 - } - modifier = { - scope:target_2 = { - opinion = { - target = scope:heir - value <= 0 - } - } - add = -100 - } - modifier = { - scope:target_2 = { - opinion = { - target = scope:heir - value < -40 - } - } - add = -200 - } - modifier = { - scope:target_2 = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - add = 50 - } - modifier = { - scope:target_2 = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - add = 50 - } - modifier = { - scope:target_2 = { - opinion = { - target = scope:heir - value >= 75 - } - } - add = 100 - } - } - } - #Friends with friend-bachelor #3! - option = { - trigger = { - exists = scope:target_3 - } - name = mpo_decisions_events.0020.c - scope:target_3 = { - save_scope_as = friendship_target - mpo_decisions_events_0020_bonuses_tooltips_effect = yes - } - trigger_event = { - id = mpo_decisions_events.0021 - days = 3 - } - stress_impact = { - shy = medium_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 101 - modifier = { - OR = { - has_relation_friend = scope:target_3 - has_relation_best_friend = scope:target_3 - has_relation_soulmate = scope:target_3 - has_relation_lover = scope:target_3 - has_relation_blood_brother = scope:target_3 - } - add = 100 - } - modifier = { - scope:target_3 = { - opinion = { - target = scope:heir - value <= 0 - } - } - add = -100 - } - modifier = { - scope:target_3 = { - opinion = { - target = scope:heir - value < -40 - } - } - add = -200 - } - modifier = { - scope:target_3 = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - add = 50 - } - modifier = { - scope:target_3 = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - add = 50 - } - modifier = { - scope:target_3 = { - opinion = { - target = scope:heir - value >= 75 - } - } - add = 100 - } - } - } - #Friends with friend-bachelor #4! - option = { - trigger = { - exists = scope:target_4 - } - name = mpo_decisions_events.0020.d - scope:target_4 = { - save_scope_as = friendship_target - mpo_decisions_events_0020_bonuses_tooltips_effect = yes - } - trigger_event = { - id = mpo_decisions_events.0021 - days = 3 - } - stress_impact = { - shy = medium_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 101 - modifier = { - OR = { - has_relation_friend = scope:target_4 - has_relation_best_friend = scope:target_4 - has_relation_soulmate = scope:target_4 - has_relation_lover = scope:target_4 - has_relation_blood_brother = scope:target_4 - } - add = 100 - } - modifier = { - scope:target_4 = { - opinion = { - target = scope:heir - value <= 0 - } - } - add = -100 - } - modifier = { - scope:target_4 = { - opinion = { - target = scope:heir - value < -40 - } - } - add = -200 - } - modifier = { - scope:target_4 = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - add = 50 - } - modifier = { - scope:target_4 = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - add = 50 - } - modifier = { - scope:target_4 = { - opinion = { - target = scope:heir - value >= 75 - } - } - add = 100 - } - } - } - #Friends with friend-bachelor #5! - option = { - trigger = { - exists = scope:target_5 - } - name = mpo_decisions_events.0020.e - scope:target_5 = { - save_scope_as = friendship_target - mpo_decisions_events_0020_bonuses_tooltips_effect = yes - } - trigger_event = { - id = mpo_decisions_events.0021 - days = 1 - } - stress_impact = { - shy = medium_stress_impact_gain - callous = minor_stress_impact_gain - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 101 - modifier = { - OR = { - has_relation_friend = scope:target_5 - has_relation_best_friend = scope:target_5 - has_relation_soulmate = scope:target_5 - has_relation_lover = scope:target_5 - has_relation_blood_brother = scope:target_5 - } - add = 100 - } - modifier = { - scope:target_5 = { - opinion = { - target = scope:heir - value <= 0 - } - } - add = -100 - } - modifier = { - scope:target_5 = { - opinion = { - target = scope:heir - value < -40 - } - } - add = -200 - } - modifier = { - scope:target_5 = { - AND = { - exists = house - exists = scope:heir.house - house = { - this = root.house - } - } - } - add = 50 - } - modifier = { - scope:target_5 = { - OR = { - culture = { - this = scope:heir.culture - } - culture = { - cultural_acceptance = { - target = scope:heir.culture - value >= 80 - } - } - } - } - add = 50 - } - modifier = { - scope:target_5 = { - opinion = { - target = scope:heir - value >= 75 - } - } - add = 100 - } - } - } - #Yeah... not these bozos - option = { - name = mpo_decisions_events.0020.f - remove_decision_cooldown = mpo_decision_introduce_heir - add_prestige = mpo_introduce_heir_prestige_cost - add_piety = mpo_introduce_heir_piety_cost - } -} - -scripted_effect mpo_decisions_events_0021_positive_outcome_effect = { - scope:friendship_target = { - show_as_tooltip = { - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - if = { - limit = { - is_ai = yes - is_vassal_of = root - NOT = { is_obedient_to = root } - } - custom_tooltip = friend_heir_may_become_obedient - } - if = { - limit = { - is_allied_to = root - } - custom_tooltip = friend_heir_may_become_blood_brother - } - } - } -} - -scripted_effect mpo_decisions_events_0021_negative_outcome_effect = { - custom_tooltip = friendship_setup_fail_tt - add_character_flag = { - flag = heir_friend_failed - days = 40 - } -} - -#Friendship maneuvering event -mpo_decisions_events.0021 = { - type = character_event - title = mpo_decisions_events.0021.t - desc = { - desc = mpo_decisions_events.0021.desc_intro - first_valid = { - triggered_desc = { - trigger = { - scope:friendship_target = { - opinion = { - target = scope:heir - value >= 40 - } - } - } - desc = mpo_decisions_events.0021.desc_warm - } - desc = mpo_decisions_events.0021.desc_cold - } - desc = mpo_decisions_events.0021.desc - } - theme = nomads - override_background = { - reference = relaxing_room - } - left_portrait = { - character = scope:heir - triggered_animation = { - trigger = { - scope:friendship_target = { - opinion = { - target = scope:heir - value >= 40 - } - } - } - animation = personality_content - } - animation = boredom - } - right_portrait = { - character = scope:friendship_target - triggered_animation = { - trigger = { - scope:heir = { - reverse_opinion = { - target = scope:friendship_target - value >= 40 - } - } - } - animation = hunting_carcass_start - } - animation = war_defender - } - - trigger = { - is_alive = yes - scope:heir = { - is_alive = yes - } - scope:friendship_target = { - is_alive = yes - } - } - immediate = { - scope:heir = { - get_quirk_character_effect = yes - } - scope:friendship_target = { - save_scope_as = bg_override_char - random_list = { - 1 = { - trigger = { - has_trait = lifestyle_hunter - scope:heir = { - has_trait = lifestyle_hunter - } - } - trait:lifestyle_hunter = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_reveler - scope:heir = { has_trait = lifestyle_reveler } - } - trait:lifestyle_reveler = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_traveler - scope:heir = { has_trait = lifestyle_traveler } - } - trait:lifestyle_traveler = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_blademaster - scope:heir = { has_trait = lifestyle_blademaster } - } - trait:lifestyle_reveler = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_herbalist - scope:heir = { has_trait = lifestyle_herbalist } - } - trait:lifestyle_herbalist = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_mystic - scope:heir = { has_trait = lifestyle_mystic } - } - trait:lifestyle_mystic = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_physician - scope:heir = { has_trait = lifestyle_physician } - } - trait:lifestyle_physician = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_poet - scope:heir = { has_trait = lifestyle_poet } - } - trait:lifestyle_poet = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = lifestyle_gardener - scope:heir = { has_trait = lifestyle_gardener } - } - trait:lifestyle_gardener = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = drunkard - scope:heir = { has_trait = drunkard } - } - trait:drunkard = { - save_scope_as = lifestyle_trait - } - } - 1 = { - trigger = { - has_trait = hashishiyah - scope:heir = { has_trait = hashishiyah } - } - trait:hashishiyah = { - save_scope_as = lifestyle_trait - } - } - } - } - } - #Charm them with your high diplo - option = { - trigger = { - diplomacy >= very_high_skill_rating - } - name = mpo_decisions_events.0021.a - flavor = mpo_decisions_events.0021.a.flavor - add_character_flag = { - flag = heir_friend_personal_charm - days = 40 - } - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - - duel = { - skill = diplomacy - value = medium_skill_rating - #Successful - they're friends! - 45 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -44 - } - modifier = { - scope:friendship_target = { - opinion = { - target = root - value >= 75 - } - } - add = 20 - } - modifier = { - scope:friendship_target = { - opinion = { - target = root - value >= 90 - } - } - add = 20 - } - modifier = { - add = mpo_friendship_setup_positive_modifiers_value - } - - desc = mpo_decisions_events.0021.a.success - mpo_decisions_events_0021_positive_outcome_effect = yes - show_as_tooltip = { - add_diplomacy_lifestyle_xp = minor_lifestyle_xp - } - } - # Fail - they're pretty meh about each other - 55 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - # Limit how low the off-chance can go. - min = -54 - } - modifier = { - add = mpo_friendship_setup_negative_modifiers_value - } - - desc = mpo_decisions_events.0021.a.fail - mpo_decisions_events_0021_negative_outcome_effect = yes - } - } - } - else = { - #Player response - custom_tooltip = mpo_heir_friend_if_accept_tt - show_as_tooltip = { - add_diplomacy_lifestyle_xp = minor_lifestyle_xp - } - mpo_decisions_events_0021_positive_outcome_effect = yes - custom_tooltip = mpo_heir_friend_if_do_not_accept_tt - custom_tooltip = friendship_setup_fail_tt - } - stress_impact = { - shy = miniscule_stress_impact_gain - trusting = miniscule_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_sociability = 1 - ai_energy = 0.5 - } - modifier = { - diplomacy > extremely_high_skill_rating - add = 100 - } - } - } - #Do their lifestyle traits together - option = { - trigger = { - exists = scope:lifestyle_trait - } - name = mpo_decisions_events.0021.b - flavor = mpo_decisions_events.0021.b.flavor - add_internal_flag = special - add_character_flag = { - flag = heir_friend_lifestyle_trait - days = 40 - } - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - duel = { - skill = diplomacy - value = average_skill_rating - #Successful - they're friends! - 65 = { - compare_modifier = { - value = scope:duel_value - multiplier = 0.1 - min = -64 - } - modifier = { - add = mpo_friendship_setup_positive_modifiers_value - } - - desc = mpo_decisions_events.0021.b.success - mpo_decisions_events_0021_positive_outcome_effect = yes - show_as_tooltip = { - mpo_heir_lifestyle_xp_gain_effect = yes - } - } - # Fail - they're pretty meh about each other - 35 = { - compare_modifier = { - value = scope:duel_value - multiplier = -0.1 - min = -34 - } - modifier = { - add = mpo_friendship_setup_negative_modifiers_value - } - - desc = mpo_decisions_events.0021.b.fail - mpo_decisions_events_0021_negative_outcome_effect = yes - } - } - } - else = { - #Player response - custom_tooltip = mpo_heir_friend_if_accept_tt - show_as_tooltip = { - mpo_heir_lifestyle_xp_gain_effect = yes - } - mpo_decisions_events_0021_positive_outcome_effect = yes - custom_tooltip = mpo_heir_friend_if_do_not_accept_tt - custom_tooltip = friendship_setup_fail_tt - } - ai_chance = { - base = 200 - } - } - - #Do their sports together - option = { - trigger = { - scope:friendship_target = { - OR = { - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - } - AND = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = wit - value >= 50 - } - - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = wit - value >= 50 - } - } - } - } - } - } - name = mpo_decisions_events.0021.c - flavor = mpo_decisions_events.0021.c.flavor - reason = tourney_participant - add_internal_flag = special - add_character_flag = { - flag = heir_friend_sports - days = 40 - } - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - duel = { - skill = diplomacy - value = average_skill_rating - #Successful - they're friends! - 65 = { - compare_modifier = { - value = scope:duel_value - multiplier = 0.1 - min = -64 - } - modifier = { - add = mpo_friendship_setup_positive_modifiers_value - } - - desc = mpo_decisions_events.0021.c.success - mpo_decisions_events_0021_positive_outcome_effect = yes - show_as_tooltip = { - mpo_heir_hastiluder_xp_gain_effect = yes - } - } - # Fail - they're pretty meh about each other - 35 = { - compare_modifier = { - value = scope:duel_value - multiplier = -0.1 - min = -34 - } - modifier = { - add = mpo_friendship_setup_negative_modifiers_value - } - - desc = mpo_decisions_events.0021.c.fail - mpo_decisions_events_0021_negative_outcome_effect = yes - } - } - } - else = { - #Player response - custom_tooltip = mpo_heir_friend_if_accept_tt - show_as_tooltip = { - mpo_heir_hastiluder_xp_gain_effect = yes - } - mpo_decisions_events_0021_positive_outcome_effect = yes - custom_tooltip = mpo_heir_friend_if_do_not_accept_tt - custom_tooltip = friendship_setup_fail_tt - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_energy = 0.5 - ai_boldness = 0.5 - } - } - } - #Bond over shared traits - option = { - trigger = { - scope:friendship_target = { - trigger_if = { - limit = { - has_trait = nomadic_philosophy - scope:heir = { - has_trait = nomadic_philosophy - } - } - number_of_traits_in_common = { - target = scope:heir - value >= 2 - } - } - trigger_else = { - number_of_traits_in_common = { - target = scope:heir - value >= 1 - } - } - } - } - name = mpo_decisions_events.0021.d - flavor = mpo_decisions_events.0021.d.flavor - add_internal_flag = special - add_character_flag = { - flag = heir_friend_shared_traits - days = 40 - } - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - duel = { - skill = diplomacy - value = average_skill_rating - #Successful - they're friends! - 45 = { - compare_modifier = { - value = scope:duel_value - multiplier = 0.1 - min = -44 - } - modifier = { - add = mpo_friendship_setup_positive_modifiers_value - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 3 - } - } - add = 40 - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 4 - } - } - add = 40 - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 5 - } - } - add = 40 - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 6 - } - } - add = 40 - } - - desc = mpo_decisions_events.0021.d.success - mpo_decisions_events_0021_positive_outcome_effect = yes - show_as_tooltip = { - scope:heir = { - add_stress = minor_stress_impact_loss - add_prestige = minor_prestige_gain - } - } - } - # Fail - they're pretty meh about each other - 55 = { - compare_modifier = { - value = scope:duel_value - multiplier = -0.1 - min = -54 - } - modifier = { - add = mpo_friendship_setup_negative_modifiers_value - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value <= 1 - } - } - add = -40 - } - - desc = mpo_decisions_events.0021.d.fail - mpo_decisions_events_0021_negative_outcome_effect = yes - } - } - } - else = { - #Player response - custom_tooltip = mpo_heir_friend_if_accept_tt - show_as_tooltip = { - scope:heir = { - add_stress = minor_stress_impact_loss - add_prestige = minor_prestige_gain - } - } - mpo_decisions_events_0021_positive_outcome_effect = yes - custom_tooltip = mpo_heir_friend_if_do_not_accept_tt - custom_tooltip = friendship_setup_fail_tt - } - ai_chance = { - base = 50 - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 2 - } - } - add = 50 - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 4 - } - } - add = 100 - } - modifier = { - scope:friendship_target = { - number_of_traits_in_common = { - target = scope:heir - value >= 6 - } - } - add = 100 - } - } - } - #Let's hang - extra bonus for blood brother/friends/family/culture - option = { - name = mpo_decisions_events.0021.e - flavor = mpo_decisions_events.0021.e.flavor - add_character_flag = { - flag = heir_friend_kinship - days = 40 - } - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - duel = { - skill = diplomacy - value = medium_skill_rating - #Successful - they're friends! - 35 = { - compare_modifier = { - value = scope:duel_value - multiplier = 0.75 - min = -34 - } - modifier = { - add = mpo_friendship_setup_positive_modifiers_value - } - modifier = { - has_relation_blood_brother = scope:friendship_target - add = 120 - } - modifier = { - OR = { - has_relation_best_friend = scope:friendship_target - has_relation_soulmate = scope:friendship_target - } - add = 80 - } - modifier = { - OR = { - has_relation_friend = scope:friendship_target - has_relation_lover = scope:friendship_target - } - add = 60 - } - modifier = { - AND = { - exists = house - exists = scope:friendship_target.house - house = scope:friendship_target.house - } - add = 60 - } - modifier = { - OR = { - culture = { - this = scope:friendship_target.culture - } - culture = { - cultural_acceptance = { - target = scope:friendship_target.culture - value >= 80 - } - } - } - add = 30 - } - - desc = mpo_decisions_events.0021.e.success - mpo_decisions_events_0021_positive_outcome_effect = yes - show_as_tooltip = { - scope:heir = { - add_piety = minor_piety_gain - } - } - } - # Fail - they're pretty meh about each other - 65 = { - compare_modifier = { - value = scope:duel_value - multiplier = -0.75 - min = -64 - } - modifier = { - add = mpo_friendship_setup_negative_modifiers_value - } - - desc = mpo_decisions_events.0021.e.fail - mpo_decisions_events_0021_negative_outcome_effect = yes - } - } - } - else = { - #Player response - custom_tooltip = mpo_heir_friend_if_accept_tt - mpo_decisions_events_0021_positive_outcome_effect = yes - custom_tooltip = mpo_heir_friend_if_do_not_accept_tt - custom_tooltip = friendship_setup_fail_tt - } - - ai_chance = { - base = 10 - modifier = { - diplomacy >= medium_skill_rating - diplomacy < very_high_skill_rating - add = 40 - } - modifier = { - has_relation_blood_brother = scope:friendship_target - add = 40 - } - modifier = { - OR = { - has_relation_best_friend = scope:friendship_target - has_relation_soulmate = scope:friendship_target - } - add = 20 - } - } - } - #Gift fallback - option = { - trigger = { - diplomacy < very_high_skill_rating - } - show_unlock_reason = no - name = mpo_decisions_events.0021.f - flavor = mpo_decisions_events.0021.f.flavor - - add_character_flag = { - flag = heir_friend_gift - days = 40 - } - show_as_tooltip = { - pay_short_term_gold = { - target = scope:friendship_target - gold = medium_gold_value - } - pay_short_term_gold = { - target = scope:heir - gold = minor_gold_value - } - } - mpo_decisions_events_0021_positive_outcome_effect = yes - stress_impact = { - greedy = miniscule_stress_impact_gain - } - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - gold >= monumental_gold_value - add = 300 - } - modifier = { - short_term_gold < major_gold_value - factor = 0 - } - } - } - after = { - if = { - limit = { - scope:friendship_target = { - is_ai = yes - } - } - trigger_event = { - id = mpo_decisions_events.0023 - days = 1 - } - } - else = { - scope:friendship_target = { - trigger_event = { - id = mpo_decisions_events.0022 - days = 1 - } - } - } - } -} - -mpo_decisions_events.0022 = { - type = character_event - title = mpo_decisions_events.0022.t - desc = { - desc = mpo_decisions_events.0022.desc_intro - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_personal_charm - } - } - desc = mpo_decisions_events.0022.desc_personal_charm - } - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_lifestyle_trait - } - } - desc = mpo_decisions_events.0022.desc_lifestyle - } - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_sports - } - } - desc = mpo_decisions_events.0022.desc_sports - } - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_shared_traits - } - } - desc = mpo_decisions_events.0022.desc_shared_traits - } - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_kinship - } - } - desc = mpo_decisions_events.0022.desc_kinship - } - triggered_desc = { - trigger = { - scope:root_scope = { - has_character_flag = heir_friend_gift - } - } - desc = mpo_decisions_events.0022.desc_gift - } - desc = mpo_decisions_events.0022.desc_outro - } - theme = nomads - override_background = { - reference = throne_room - } - left_portrait = { - character = scope:root_scope - animation = interested - } - right_portrait = { - character = scope:heir - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_hunter - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - } - } - - } - animation = hunting_shortbow_aim_arrow_default - } - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_blademaster - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - } - } - - } - animation = sword_coup_degrace - } - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_traveler - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - } - } - - } - animation = laugh - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_physician - scope:lifestyle_trait = trait:lifestyle_herbalist - } - } - animation = physician - } - - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_reveler - scope:lifestyle_trait = trait:drunkard - } - } - animation = wedding_drunk - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - scope:lifestyle_trait = trait:hashishiyah - } - animation = manic - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - scope:lifestyle_trait = trait:lifestyle_gardener - } - animation = holding_staff - } - - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_personal_charm - NOT = { - has_character_flag = heir_friend_failed - } - } - } - animation = laugh - } - triggered_animation = { - trigger = { - root = { - NOR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_failed - } - } - } - animation = storyteller - } - } - lower_right_portrait = scope:root_scope - - immediate = { - if = { - limit = { - has_character_flag = heir_friend_gift - } - show_as_tooltip = { - scope:root_scope = { - pay_short_term_gold = { - target = scope:friendship_target - gold = medium_gold_value - } - } - } - } - } - #I want this blood brother - option = { - trigger = { - is_allied_to = scope:root_scope - NOT = { - has_relation_blood_brother = scope:friendship_target - } - } - name = mpo_decisions_events.0022.a - show_as_tooltip = { - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - set_relation_blood_brother = { - target = scope:heir - reason = blood_brother_introduced_heir - } - } - scope:root_scope = { - add_character_flag = { - flag = player_heir_friend_blood_brother - days = 40 - } - } - if = { - limit = { - scope:root_scope = { - highest_held_title_tier > root.highest_held_title_tier - } - } - add_prestige = medium_prestige_gain - } - else_if = { - limit = { - scope:root_scope = { - highest_held_title_tier = root.highest_held_title_tier - } - } - add_prestige = minor_prestige_gain - } - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:root_scope - opinion = 10 - } - stress_impact = { - paranoid = medium_stress_impact_gain - callous = minor_stress_impact_gain - arrogant = medium_stress_impact_gain - fickle = medium_stress_impact_gain - } - } - - #I will even be obedient! - option = { - trigger = { - is_ai = yes - is_vassal_of = scope:root_scope - NOR = { - is_obedient_to = scope:root_scope - has_trait = disloyal - } - } - name = mpo_decisions_events.0022.b - show_as_tooltip = { - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - } - scope:root_scope = { - add_character_flag = { - flag = player_heir_friend_obedient - days = 40 - } - } - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:root_scope - opinion = 40 - } - random = { - chance = 50 - add_trait = loyal - } - stress_impact = { - humble = minor_stress_impact_loss - trusting = minor_stress_impact_loss - content = minor_stress_impact_loss - paranoid = medium_stress_impact_gain - arrogant = major_stress_impact_gain - ambitious = major_stress_impact_gain - arbitrary = major_stress_impact_gain - } - } - - #We can be friends - option = { - name = mpo_decisions_events.0022.c - show_as_tooltip = { - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - } - if = { - limit = { - highest_held_title_tier > scope:root_scope.highest_held_title_tier - } - add_prestige = minor_prestige_loss - } - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:root_scope - opinion = 20 - } - stress_impact = { - paranoid = minor_stress_impact_gain - callous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - - #I don't want this friend - option = { - name = mpo_decisions_events.0022.d - scope:root_scope = { - add_character_flag = { - flag = heir_friend_failed - days = 40 - } - } - if = { - limit = { - scope:root_scope = { - has_character_flag = heir_friend_lifestyle_trait - } - } - mpo_target_lifestyle_xp_gain_effect = yes - } - else_if = { - limit = { - scope:root_scope = { - has_character_flag = heir_friend_sports - } - } - mpo_target_hastiluder_xp_gain_effect = yes - } - else_if = { - limit = { - scope:root_scope = { - has_character_flag = heir_friend_personal_charm - } - } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else = { - add_stress = medium_stress_impact_loss - } - stress_impact = { - trusting = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - } - } - after = { - scope:root_scope = { - trigger_event = mpo_decisions_events.0023 - } - } -} - -mpo_decisions_events.0023 = { - type = character_event - title = mpo_decisions_events.0023.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = heir_friend_failed - } - desc = mpo_decisions_events.0023.desc_fail - } - desc = mpo_decisions_events.0023.desc - } - triggered_desc = { - trigger = { - exists = scope:accidental_friend - } - desc = mpo_decisions_events.0023.desc_accidental_friend - } - } - theme = nomads - override_background = { - reference = relaxing_room - } - left_portrait = { - character = scope:heir - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_failed - } - } - animation = personality_content - } - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_hunter - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = bow - value >= 50 - } - } - } - } - - } - animation = hunting_shortbow_aim_arrow_default - } - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_blademaster - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = foot - value >= 50 - } - } - } - } - - } - animation = sword_coup_degrace - } - triggered_animation = { - trigger = { - root = { - OR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_sports - } - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_traveler - AND = { - scope:friendship_target = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - scope:heir = { - has_trait = tourney_participant - has_trait_xp = { - trait = tourney_participant - track = horse - value >= 50 - } - } - } - } - - } - animation = laugh - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_physician - scope:lifestyle_trait = trait:lifestyle_herbalist - } - } - animation = physician - } - - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - OR = { - scope:lifestyle_trait = trait:lifestyle_reveler - scope:lifestyle_trait = trait:drunkard - } - } - animation = wedding_drunk - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - scope:lifestyle_trait = trait:hashishiyah - } - animation = manic - } - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_lifestyle_trait - NOT = { - has_character_flag = heir_friend_failed - } - } - scope:lifestyle_trait = trait:lifestyle_gardener - } - animation = holding_staff - } - - triggered_animation = { - trigger = { - root = { - has_character_flag = heir_friend_personal_charm - NOT = { - has_character_flag = heir_friend_failed - } - } - } - animation = laugh - } - triggered_animation = { - trigger = { - root = { - NOR = { - has_character_flag = heir_friend_lifestyle_trait - has_character_flag = heir_friend_failed - } - } - } - animation = storyteller - } - } - right_portrait = { - character = scope:friendship_target - triggered_animation ={ - trigger = { - root = { - has_character_flag = heir_friend_failed - } - } - animation = interested - } - triggered_animation ={ - trigger = { - root = { - NOT = { has_character_flag = heir_friend_failed } - } - } - animation = happiness - } - } - lower_right_portrait = scope:accidental_friend - immediate = { - if = { - limit = { - has_character_flag = heir_friend_failed - } - #Random positive outcome - custom_tooltip = heir_friend_will_not_become_friends_tt - mpo_decisions_events_friend_fail_effect = yes - } - else = { - play_music_cue = mx_cue_positive_effect - scope:friendship_target = { - #Random chance of AI - random_list = { - 2 = { - trigger = { - is_ai = yes - is_vassal_of = root - } - modifier = { - opinion = { - target = root - value = 100 - } - factor = 2 - } - modifier = { - OR = { - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_blood_brother = root - } - factor = 2 - } - modifier = { - obedience_target = root - factor = 2 - } - add_opinion = { - modifier = obedience_opinion - target = root - } - } - 1 = { - trigger = { - is_ai = yes - is_allied_to = root - } - modifier = { - opinion = { - target = root - value = 100 - } - factor = 2 - } - modifier = { - OR = { - has_relation_best_friend = root - has_relation_soulmate = root - has_relation_blood_brother = root - } - factor = 2 - } - set_relation_blood_brother = { - target = scope:heir - reason = blood_brother_introduced_heir - } - } - 2 = {} - } - if = { - limit = { - has_character_flag = player_heir_friend_blood_brother - } - set_relation_blood_brother = { - target = scope:heir - reason = blood_brother_introduced_heir - } - } - else_if = { - limit = { - has_character_flag = player_heir_friend_obedient - } - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - add_opinion = { - modifier = obedience_opinion - target = root - } - } - if = { - limit = { - NOT = { - has_relation_blood_brother = scope:heir - } - } - set_relation_friend = { - target = scope:heir - reason = friend_introduced_heir - } - } - } - switch = { - trigger = has_character_flag - - heir_friend_personal_charm = { - add_diplomacy_lifestyle_xp = minor_lifestyle_xp - } - heir_friend_lifestyle_trait = { - mpo_heir_lifestyle_xp_gain_effect = yes - } - heir_friend_sports = { - mpo_heir_hastiluder_xp_gain_effect = yes - } - heir_friend_shared_traits = { - scope:heir = { - add_stress = minor_stress_impact_loss - add_prestige = minor_prestige_gain - } - } - heir_friend_kinship = { - scope:heir = { - add_piety = minor_piety_gain - } - } - heir_friend_gift = { - pay_short_term_gold = { - target = scope:friendship_target - gold = medium_gold_value - } - pay_short_term_gold = { - target = scope:heir - gold = minor_gold_value - } - } - } - } - } - option = { - name = { - trigger = { - NOT = { - has_character_flag = heir_friend_failed - } - } - text = mpo_decisions_events.0023.a - } - name = { - trigger = { - has_character_flag = heir_friend_failed - } - text = mpo_decisions_events.0023.a_fail - } - } - after = { - remove_character_flag = heir_friend_failed - remove_character_flag = heir_friend_personal_charm - remove_character_flag = heir_friend_sports - remove_character_flag = heir_friend_gift - remove_character_flag = heir_friend_kinship - remove_character_flag = heir_friend_shared_traits - remove_character_flag = heir_friend_lifestyle_trait - remove_character_flag = player_heir_friend_blood_brother - remove_character_flag = player_heir_friend_obedient - } -} - -mpo_decisions_events.0098 = { - hidden = yes - - immediate = { - send_interface_toast = { - title = abused_paiza_authority - left_icon = root - right_icon = situation:the_great_steppe.situation_top_herd - switch = { - trigger = var:paiza_abuse_stance - flag:indifferent = { custom_tooltip = mpo_paiza_abuse_counter_effect.indifferent } - flag:angry = { custom_tooltip = mpo_paiza_abuse_counter_effect.khan_reaction_angry } - flag:annoyed = { custom_tooltip = mpo_paiza_abuse_counter_effect.khan_reaction_annoyed } - } - } - } -} - -mpo_decisions_events.0099 = { - type = character_event - title = mpo_decisions_events.0099.t - desc = mpo_decisions_events.0099.desc - theme = vassal - - override_background = { reference = mpo_tent_interior_mongol } - left_portrait = { - character = root - animation = personality_rational - } - artifact = { - target = scope:created_paiza - position = lower_right_portrait - } - - immediate = { - mpo_create_paiza_artifact_effect = { - PATRON = root - GRANTEE = root - } - } - - option = { - name = mpo_decisions_events.0099.a - custom_tooltip = mpo_establish_paiza_system_decision.grant_paiza_interaction_unlocked - custom_tooltip = mpo_establish_paiza_system_decision.request_paiza_interaction_unlocked - custom_tooltip = mpo_establish_paiza_system_decision.paiza_obedient - custom_tooltip = mpo_establish_paiza_system_decision.call_for_merchants_decision_unlocked - custom_tooltip = mpo_establish_paiza_system_decision.leverage_khan_authority_unlocked - custom_tooltip = mpo_establish_paiza_system_decision.paiza_abuse_authority_unlocked - } -} - -#scripted effect to make the merchant go - - - -scripted_effect send_merchant_on_merry_voyage_effect = { - set_variable = { - name = merchant_employer - value = prev - } - set_variable = { - name = merchant_origin - value = scope:merchant_origin - } - start_travel_plan = { - destination = scope:merchant_origin.title_province - return_trip = yes - on_arrival_event = mpo_decisions_events.0102 - on_arrival_destinations = last - } -} - -scripted_effect send_merchant_on_first_voyage_effect = { - set_variable = merchant_var - set_variable = { - name = merchant_employer - value = prev - } - set_variable = { - name = merchant_origin - value = scope:merchant_origin - } - start_travel_plan = { - destination = var:merchant_employer.location - on_arrival_event = mpo_decisions_events.2140 - on_arrival_destinations = first - return_trip = no - } - root = { - prev = { - save_scope_as = merchant - } - send_interface_toast = { - type = event_toast_effect_good - title = paiza_merchant_on_route_tt - left_icon = scope:merchant_origin - right_icon = scope:merchant - custom_tooltip = paiza_merchant_on_route_tt_desc - } - } -} - - - -mpo_decisions_events.2139 = { - hidden = yes - - immediate = { - mpo_find_suitable_merchant_effect = yes - scope:paiza_merchant = { - random_list = { - 1 = { - add_trait = avaricious - add_stewardship_skill = 6 - add_learning_skill = 4 - add_intrigue_skill = 2 - add_prowess_skill = 4 - add_diplomacy_skill = 2 - } - 1 = { - add_trait = diplomat - add_stewardship_skill = 4 - add_learning_skill = 5 - add_intrigue_skill = 8 - add_prowess_skill = 8 - add_diplomacy_skill = 6 - } - 1 = { - add_trait = scholar - add_stewardship_skill = 4 - add_learning_skill = 5 - add_intrigue_skill = 8 - add_prowess_skill = 8 - add_diplomacy_skill = 4 - } - } - add_trait = lifestyle_traveler - add_gold = { - value = root.tiny_gold_value - multiply = 21.37 - } - send_merchant_on_first_voyage_effect = yes - } - } -} - - -mpo_decisions_events.2140 = { - hidden = yes - - immediate = { - remove_variable = merchant_var # Used only to send the death notification message - save_scope_as = paiza_merchant - var:merchant_origin = { - save_scope_as = merchant_origin - } - #teleport in case merchant_employer has migrated or something - var:merchant_employer = { - if = { - limit = { - is_alive = yes - } - if = { - limit = { - NOT = { - root.location = location - } - } - root = { - set_location = { location = var:merchant_employer.location } - } - } - if = { - limit = { - has_character_flag = established_paiza_system - } - trigger_event = mpo_decisions_events.0100 - } - else = { - trigger_event = mpo_decisions_events.2141 - } - } - } - } -} - -mpo_decisions_events.2138 = { - type = character_event - theme = nomads - - title = mpo_decisions_events.2138.t - desc = mpo_decisions_events.2138.desc - - override_background = { reference = mpo_camp_steppe } - - left_portrait = { - character = root - animation = personality_honorable - } - - right_portrait = { - character = scope:paiza_merchant - animation = personality_greedy - } - - immediate = { - add_character_flag = { - flag = had_herd_trade - days = 7 - } - domicile ?= { - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_herd_gain_lvl_1 = { - root = { - set_variable = { - name = herd_trade_herd_value - value = { - value = domicile.herd - multiply = 0.1 - } - } - set_variable = { - name = herd_trade_gold_value - value = { - value = root.var:herd_trade_herd_value - divide = 10 - } - } - } - } - nomad_yurt_paiza_herd_gain_lvl_2 = { - root = { - set_variable = { - name = herd_trade_herd_value - value = { - value = domicile.herd - multiply = 0.15 - } - } - set_variable = { - name = herd_trade_gold_value - value = { - value = root.var:herd_trade_herd_value - divide = 8 - } - } - } - } - nomad_yurt_paiza_herd_gain_lvl_3 = { - root = { - set_variable = { - name = herd_trade_herd_value - value = { - value = domicile.herd - multiply = 0.2 - } - } - set_variable = { - name = herd_trade_gold_value - value = { - value = root.var:herd_trade_herd_value - divide = 6 - } - } - } - } - } - } - } - - option = { - name = mpo_decisions_events.2138.a - domicile ?= { - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_herd_gain_lvl_1 = { root = { custom_tooltip = domicile_building_parameter_nomad_merchant_herd_gold_exchange_lvl_1 } } - nomad_yurt_paiza_herd_gain_lvl_2 = { root = { custom_tooltip = domicile_building_parameter_nomad_merchant_herd_gold_exchange_lvl_2 } } - nomad_yurt_paiza_herd_gain_lvl_3 = { root = { custom_tooltip = domicile_building_parameter_nomad_merchant_herd_gold_exchange_lvl_3 } } - } - } - hidden_effect = { - scope:paiza_merchant = { - add_gold = root.var:herd_trade_gold_value - } - } - scope:paiza_merchant = { - pay_short_term_gold = { - target = root - gold = root.var:herd_trade_gold_value - } - } - domicile ?= { - change_herd = { - value = root.var:herd_trade_herd_value - multiply = -1 - } - } - } - - option = { - name = mpo_decisions_events.2138.c - custom_tooltip = mpo_decisions_events.2138.c.desc - } - - after = { - if = { - limit = { - has_character_flag = smol_herd_trade - } - trigger_event = mpo_decisions_events.2141 - remove_character_flag = smol_herd_trade - } - else = { - trigger_event = mpo_decisions_events.0100 - } - remove_variable = herd_trade_herd_value - remove_variable = herd_trade_gold_value - } - -} - -mpo_decisions_events.2141 = { #mpo_call_for_merchants_smol_decision initial event - type = character_event - theme = nomads - - title = mpo_decisions_events.2141.t - desc = mpo_decisions_events.2141.desc - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = personality_honorable - } - - right_portrait = { - character = scope:paiza_merchant - animation = throne_room_bow_3 - } - - trigger = { - is_available_adult = yes - scope:paiza_merchant.location = root.location - } - - on_trigger_fail = { - scope:paiza_merchant = { - set_location = { location = root.location } - } - trigger_event = { - id = mpo_decisions_events.2141 - months = { 2 4 } - } - } - - option = { #ask for an artifact material - name = mpo_decisions_events.2141.b - - pay_short_term_gold = { - target = scope:paiza_merchant - gold = 400 - } - - scope:paiza_merchant = { - set_variable = { - name = requested_merchant_goods - value = flag:artifact_material - } - set_variable = { - name = paiza_gold_invested - value = 400 - } - send_merchant_on_merry_voyage_effect = yes - } - - custom_tooltip = mpo_decisions_events.2141.upon_merchant_return - show_as_tooltip = { - add_character_modifier = { - modifier = mpo_artifact_material_modifier - } - mpo_yurts_paiza_bonuses_tooltip_effect = yes - } - ai_chance = { - base = 0 - } - } - - option = { #ask for better armor for ur maa - name = mpo_decisions_events.2141.c - - show_as_unavailable = { - gold <= 800 - } - - pay_short_term_gold = { - target = scope:paiza_merchant - gold = 800 - } - - scope:paiza_merchant = { - set_variable = { - name = requested_merchant_goods - value = flag:armaments - } - set_variable = { - name = paiza_gold_invested - value = 800 - } - send_merchant_on_merry_voyage_effect = yes - } - - custom_tooltip = mpo_decisions_events.2141.upon_merchant_return - show_as_tooltip = { - mpo_paiza_improve_maa_smol_effect = yes - mpo_yurts_paiza_bonuses_tooltip_effect = yes - } - - ai_chance = { #most safe option for ai - base = 100 - } - } - - option = { - name = mpo_decisions_events.2141.d - custom_tooltip = mpo_decisions_events.2141.d.unlocked - trigger = { - NOT = { - has_character_flag = had_herd_trade - } - domicile ?= { - has_domicile_building_or_higher = herd_trade_yurt_01 - } - } - add_character_flag = smol_herd_trade - trigger_event = mpo_decisions_events.2138 - - ai_chance = { - base = 200 - } - } - - option = { #actually, give me your gold and get lost - name = mpo_decisions_events.0100.e - scope:paiza_merchant = { - pay_short_term_gold = { - target = root - gold = scope:paiza_merchant.gold - } - death = { - killer = root - death_reason = death_execution - } - } - add_character_modifier = { - modifier = mpo_paiza_robbed_merchants - years = { 18 22 } - } - custom_tooltip = mpo_decisions_events.0100.e.warning - - ai_chance = { - base = 50 - } - } -} - -mpo_decisions_events.0100 = { #mpo_call_for_merchants_decision initial event - type = character_event - theme = nomads - - title = mpo_decisions_events.0100.t - desc = mpo_decisions_events.0100.desc - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = personality_honorable - } - - right_portrait = { - character = scope:paiza_merchant - animation = throne_room_bow_3 - } - - trigger = { - is_available_adult = yes - scope:paiza_merchant.location = root.location - } - - on_trigger_fail = { - scope:paiza_merchant = { - set_location = { location = root.location } - } - trigger_event = { - id = mpo_decisions_events.0100 - months = { 2 4 } - } - } - - option = { #give him paiza, ask for innovation progress - name = mpo_decisions_events.0100.a - - show_as_unavailable = { - NOT = { - domicile ?= { - has_domicile_building_or_higher = innovation_yurt_01 - } - } - gold <= 2400 - } - mpo_create_paiza_artifact_effect = { - PATRON = root - GRANTEE = scope:paiza_merchant - } - pay_short_term_gold = { - target = scope:paiza_merchant - gold = 2400 - } - scope:paiza_merchant = { - set_variable = { - name = paiza_gold_invested - value = 2400 - } - set_variable = { - name = requested_merchant_goods - value = flag:innovation - } - send_merchant_on_merry_voyage_effect = yes - } - custom_tooltip = mpo_decisions_events.0100.upon_merchant_return - show_as_tooltip = { - domicile ?= { - mpo_paiza_innovation_reward_effect = yes - } - custom_tooltip = paiza_merchant_skill_gold_percent - mpo_yurts_paiza_bonuses_tooltip_effect = yes - } - - ai_chance = { - base = 0 - } - } - - option = { #give him paiza, ask for an artifact material - name = mpo_decisions_events.0100.b - - mpo_create_paiza_artifact_effect = { - PATRON = root - GRANTEE = scope:paiza_merchant - } - - pay_short_term_gold = { - target = scope:paiza_merchant - gold = 800 - } - - scope:paiza_merchant = { - set_variable = { - name = requested_merchant_goods - value = flag:artifact_material - } - set_variable = { - name = paiza_gold_invested - value = 800 - } - send_merchant_on_merry_voyage_effect = yes - } - custom_tooltip = mpo_decisions_events.0100.upon_merchant_return - show_as_tooltip = { - add_character_modifier = { - modifier = mpo_artifact_material_modifier - } - custom_tooltip = paiza_merchant_skill_gold_percent - mpo_yurts_paiza_bonuses_tooltip_effect = yes - } - - ai_chance = { - base = 0 - } - } - - option = { #ask for better armor for ur maa - name = mpo_decisions_events.0100.c - - show_as_unavailable = { - gold <= 1600 - } - mpo_create_paiza_artifact_effect = { - PATRON = root - GRANTEE = scope:paiza_merchant - } - pay_short_term_gold = { - target = scope:paiza_merchant - gold = 1600 - } - - scope:paiza_merchant = { - set_variable = { - name = requested_merchant_goods - value = flag:armaments - } - set_variable = { - name = paiza_gold_invested - value = 1600 - } - send_merchant_on_merry_voyage_effect = yes - } - custom_tooltip = mpo_decisions_events.0100.upon_merchant_return - show_as_tooltip = { - mpo_paiza_improve_maa_effect = yes - custom_tooltip = paiza_merchant_skill_gold_percent - mpo_yurts_paiza_bonuses_tooltip_effect = yes - } - - ai_chance = { #most safe option for ai - base = 100 - } - } - - option = { - name = mpo_decisions_events.0100.d - custom_tooltip = mpo_decisions_events.0100.d.unlocked - trigger = { - NOT = { - has_character_flag = had_herd_trade - } - domicile ?= { - has_domicile_building_or_higher = herd_trade_yurt_01 - } - } - trigger_event = mpo_decisions_events.2138 - - ai_chance = { - base = 200 - } - } - - option = { #actually, give me your gold and get lost - name = mpo_decisions_events.0100.e - scope:paiza_merchant = { - pay_short_term_gold = { - target = root - gold = scope:paiza_merchant.gold - } - death = { - killer = root - death_reason = death_execution - } - } - add_character_modifier = { - modifier = mpo_paiza_robbed_merchants - years = { 12 16 } - } - custom_tooltip = mpo_decisions_events.0100.e.warning - - ai_chance = { - base = 50 - } - } -} - -mpo_decisions_events.0101 = { #the merchant is back - type = character_event - theme = nomads - - title = mpo_decisions_events.0101.t - desc = mpo_decisions_events.0101.desc - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = ecstasy - } - - right_portrait = { - character = scope:paiza_merchant - animation = drink - } - - trigger = { - is_available_adult = yes - scope:paiza_merchant.location = root.location - } - - on_trigger_fail = { - scope:paiza_merchant = { - set_location = { location = root.location } - } - trigger_event = { - id = mpo_decisions_events.0101 - months = { 2 4 } - } - } - - immediate = { - mpo_paiza_deal_grade_effect = yes - if = { - limit = { - domicile ?= { - OR = { - has_domicile_building_or_higher = fertility_trade_yurt_01 - has_domicile_building_or_higher = herd_trade_yurt_01 - has_domicile_building_or_higher = knight_trade_yurt_01 - has_domicile_building_or_higher = merchant_yurt_01 - has_domicile_building_or_higher = char_trade_yurt_01 - } - } - } - domicile ?= { - if = { - limit = { - has_domicile_building_or_higher = fertility_trade_yurt_01 - } - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_fertility_gain_lvl_1 = { - root = { - every_held_county = { - limit = { - uses_county_fertility = yes - } - add_county_modifier = { - modifier = paiza_fertility_modifier_1 - years = 2 - } - } - } - } - nomad_yurt_paiza_fertility_gain_lvl_2 = { - root = { - every_held_county = { - limit = { - uses_county_fertility = yes - } - add_county_modifier = { - modifier = paiza_fertility_modifier_2 - years = 4 - } - } - } - } - nomad_yurt_paiza_fertility_gain_lvl_3 = { - root = { - every_held_county = { - limit = { - uses_county_fertility = yes - } - add_county_modifier = { - modifier = paiza_fertility_modifier_3 - years = 6 - } - } - } - } - } - } - if = { - limit = { - has_domicile_building_or_higher = herd_trade_yurt_01 - } - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_herd_gain_lvl_1= { - change_herd = { - value = root.var:trade_gold_value - multiply = 0.05 - } - } - nomad_yurt_paiza_herd_gain_lvl_2 = { - change_herd = { - value = root.var:trade_gold_value - multiply = 0.05 - } - } - nomad_yurt_paiza_herd_gain_lvl_3 = { - change_herd = { - value = root.var:trade_gold_value - multiply = 0.2 - } - } - } - } - if = { - limit = { - has_domicile_building_or_higher = knight_trade_yurt_01 - } - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_maa_gain_lvl_1 = { - root = { - spawn_army = { - name = paiza_troops - men_at_arms = { - type = accolade_maa_archers - stacks = 1 - } - location = root.location - origin = scope:merchant_origin - inheritable = yes - } - } - } - nomad_yurt_paiza_maa_gain_lvl_2 = { - root = { - spawn_army = { - name = paiza_troops - men_at_arms = { - type = accolade_maa_archers - stacks = 4 - } - location = root.location - origin = scope:merchant_origin - inheritable = yes - } - } - } - nomad_yurt_paiza_maa_gain_lvl_3 = { - root = { - spawn_army = { - name = paiza_troops - men_at_arms = { - type = accolade_maa_archers - stacks = 4 - } - men_at_arms = { - type = accolade_maa_vanguards - stacks = 4 - } - location = root.location - origin = scope:merchant_origin - inheritable = yes - } - } - } - } - } - if = { - limit = { - has_domicile_building_or_higher = char_trade_yurt_01 - } - - switch = { - trigger = has_domicile_parameter - nomad_yurt_paiza_char_gain_lvl_1 = { - root = { - hidden_effect = { - create_character = { - location = root.location - culture = scope:merchant_origin.county.culture - faith = scope:merchant_origin.county.faith - gender_female_chance = 50 - template = peasant_character - save_scope_as = yurt_merchant_char - } - scope:yurt_merchant_char = { - add_trait = lifestyle_traveler - } - add_courtier = scope:yurt_merchant_char - } - - } - } - nomad_yurt_paiza_char_gain_lvl_2 = { - root = { - hidden_effect = { - create_character = { - location = root.location - culture = scope:merchant_origin.county.culture - faith = scope:merchant_origin.county.faith - gender_female_chance = 50 - template = merchant_template - save_scope_as = yurt_merchant_char - } - scope:yurt_merchant_char = { - add_trait = lifestyle_traveler - } - add_courtier = scope:yurt_merchant_char - } - } - } - nomad_yurt_paiza_char_gain_lvl_3 = { - root = { - hidden_effect = { - create_character = { - location = root.location - culture = scope:merchant_origin.county.culture - faith = scope:merchant_origin.county.faith - gender_female_chance = 50 - template = merchant_template - save_scope_as = yurt_merchant_char - } - scope:yurt_merchant_char = { - add_random_skill_point_effect = yes - add_random_skill_point_effect = yes - add_random_skill_point_effect = yes - add_random_skill_point_effect = yes - add_random_skill_point_effect = yes - add_random_skill_point_effect = yes - random_list = { - 1 = { add_trait = avaricious } - 1 = { add_trait = diplomat } - 1 = { add_trait = overseer } - } - add_trait = lifestyle_traveler - } - add_courtier = scope:yurt_merchant_char - } - } - } - } - } - } - } - } - - - option = { #rejoice! - name = mpo_decisions_events.0101.a - ai_chance = { - base = 10 - } - } - - option = { - name = mpo_decisions_events.0101.b - custom_tooltip = mpo_decisions_events.0101.b.desc - trigger_event = mpo_decisions_events.2137 - - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - domicile = { has_domicile_building_or_higher = char_trade_yurt_01 } - } - show_as_tooltip = { add_courtier = scope:yurt_merchant_char } - } - switch = { - trigger = scope:merchant_goods - flag:artifact_material = { - add_character_modifier = { - modifier = mpo_artifact_material_modifier - years = 4 - } - } - flag:innovation = { - domicile ?= { - mpo_paiza_innovation_reward_effect = yes - } - } - flag:armaments = { - if = { - limit = { - scope:paiza_merchant = { - has_character_flag = established_paiza_system - } - } - mpo_paiza_improve_maa_smol_effect = yes - } - else = { - mpo_paiza_improve_maa_effect = yes - } - } - } - - scope:paiza_merchant = { - hidden_effect = { - add_gold = root.var:trade_gold_value - } - pay_short_term_gold = { - target = root - gold = root.var:trade_gold_value - } - } - } -} - -mpo_decisions_events.2137 = { - type = character_event - theme = nomads - - title = mpo_decisions_events.0101.t - desc = { - desc = mpo_decisions_events.2137.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:first_story = flag:desc_1 } - desc = marco_polo_quote_desc_1 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_2 } - desc = marco_polo_quote_desc_2 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_3 } - desc = marco_polo_quote_desc_3 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_4 } - desc = marco_polo_quote_desc_4 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_5 } - desc = marco_polo_quote_desc_5 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_6 } - desc = marco_polo_quote_desc_6 - } - triggered_desc = { - trigger = { scope:first_story = flag:desc_7 } - desc = marco_polo_quote_desc_7 - } - } - desc = mpo_decisions_events.2137.desc_interludium - first_valid = { - triggered_desc = { - trigger = { scope:second_story = flag:desc_1 } - desc = marco_polo_quote_desc_1 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_2 } - desc = marco_polo_quote_desc_2 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_3 } - desc = marco_polo_quote_desc_3 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_4 } - desc = marco_polo_quote_desc_4 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_5 } - desc = marco_polo_quote_desc_5 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_6 } - desc = marco_polo_quote_desc_6 - } - triggered_desc = { - trigger = { scope:second_story = flag:desc_7 } - desc = marco_polo_quote_desc_7 - } - } - } - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = disbelief - } - - right_portrait = { - character = scope:paiza_merchant - animation = admiration - } - - immediate = { - random_list = { #since the event can happen twice, we are rolling for the first and second paragraph in such way to make sure player sees unique content - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_1 scope:first_story ?= flag:desc_1 } } - save_scope_value_as = { - name = first_story - value = flag:desc_1 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_2 scope:first_story ?= flag:desc_2 } } - save_scope_value_as = { - name = first_story - value = flag:desc_2 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_3 scope:first_story ?= flag:desc_3 } culture = culture:mongol } - save_scope_value_as = { - name = first_story - value = flag:desc_3 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_4 scope:first_story ?= flag:desc_4 } } - save_scope_value_as = { - name = first_story - value = flag:desc_4 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_5 scope:first_story ?= flag:desc_5 } } - save_scope_value_as = { - name = first_story - value = flag:desc_5 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_6 scope:first_story ?= flag:desc_6 } } - save_scope_value_as = { - name = first_story - value = flag:desc_6 - } - } - 1 = { - trigger = { NOT = { scope:first_story ?= flag:desc_7 scope:first_story ?= flag:desc_7 } } - save_scope_value_as = { - name = first_story - value = flag:desc_7 - } - } - } - random_list= { - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_1 scope:second_story ?= flag:desc_1 } } - save_scope_value_as = { - name = second_story - value = flag:desc_1 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_2 scope:second_story ?= flag:desc_2 } } - save_scope_value_as = { - name = second_story - value = flag:desc_2 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_3 scope:second_story ?= flag:desc_3 } culture = culture:mongol } - save_scope_value_as = { - name = second_story - value = flag:desc_3 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_4 scope:second_story ?= flag:desc_4 } } - save_scope_value_as = { - name = second_story - value = flag:desc_4 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_5 scope:second_story ?= flag:desc_5 } } - save_scope_value_as = { - name = second_story - value = flag:desc_5 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_6 scope:second_story ?= flag:desc_6 } } - save_scope_value_as = { - name = second_story - value = flag:desc_6 - } - } - 1 = { - trigger = { NOT = { scope:second_story ?= flag:desc_7 scope:second_story ?= flag:desc_7 } } - save_scope_value_as = { - name = second_story - value = flag:desc_7 - } - } - } - } - - option = { - name = mpo_decisions_events.2137.a - } - - option = { - name = mpo_decisions_events.2137.b - trigger_event = mpo_decisions_events.2137 - } - - option = { - name = mpo_decisions_events.2137.c - add_courtier = scope:paiza_merchant - } -} - -mpo_decisions_events.0102 = { - hidden = yes - - immediate = { - save_scope_as = paiza_merchant - var:merchant_origin = { - save_scope_as = merchant_origin - } - var:requested_merchant_goods = { - save_scope_as = merchant_goods - } - - var:merchant_employer = { - if = { - limit = { - is_alive = yes - } - if = { - limit = { - NOT = { - root.location = location - } - } - root = { - set_location = { location = var:merchant_employer.location } - } - } - trigger_event = mpo_decisions_events.0101 - } - } - } -} - - - -mpo_decisions_events.0110 = { #mpo_abuse_authority_paiza_decision initial event - type = character_event - theme = nomads - - title = mpo_decisions_events.0110.t - desc = mpo_decisions_events.0110.desc - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = personality_bold - } - - right_portrait = { - character = scope:local_boi - animation = beg - } - - lower_center_portrait = { - character = scope:paiza_patron - } - - artifact = { - target = scope:paiza_artifact - position = lower_right_portrait - } - - immediate = { - random_character_artifact = { - limit = { - root = { can_benefit_from_artifact = prev } - exists = var:paiza_patron - var:paiza_patron = { - is_alive = yes - is_gurkhan = yes - } - } - save_scope_as = paiza_artifact - var:paiza_patron ?= { - save_scope_as = paiza_patron - } - } - location.duchy = { - random_de_jure_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = holder.primary_title.tier - } - } - holder = { - save_scope_as = local_boi - } - } - } - } - - option = { #yeah, go for it - name = mpo_decisions_events.0110.a - mpo_paiza_abuse_counter_effect = { - PAIZA_PATRON = scope:paiza_patron - PAIZA_ABUSER = root - } - mpo_abuse_authority_county_effect = yes - } - - option = { #try to be sneaky about it - name = mpo_decisions_events.0110.b - - duel = { - skill = intrigue - value = very_high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - mpo_abuse_authority_county_effect = yes - send_interface_toast = { - type = event_toast_effect_good - title = mpo_decisions_events.0110.b.success - custom_tooltip = mpo_decisions_events.0110.b.success_desc - left_icon = root - right_icon = scope:paiza_patron - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_decisions_events.0110.b.failure - left_icon = root - right_icon = scope:paiza_patron - mpo_paiza_abuse_counter_effect = { - PAIZA_PATRON = scope:paiza_patron - PAIZA_ABUSER = root - } - } - } - } - } - - option = { - name = mpo_decisions_events.0110.d - add_prestige = -200 - } -} - -mpo_decisions_events.0111 = { #mpo_abuse_authority_paiza_decision consequences - type = character_event - theme = nomads - - title = mpo_decisions_events.0111.t - desc = mpo_decisions_events.0111.desc - - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = fear - } - - right_portrait = { - character = scope:paiza_patron - animation = anger - } - - artifact = { - target = scope:paiza_artifact - position = lower_right_portrait - } - - immediate = { - liege = { save_scope_as = paiza_patron } - add_character_flag = no_more_paiza_abuse - - random_equipped_character_artifact = { - limit = { - root = { can_benefit_from_artifact = prev } - exists = var:paiza_patron - var:paiza_patron = { - is_alive = yes - is_gurkhan = yes - } - } - save_scope_as = paiza_artifact - var:paiza_patron ?= { - save_scope_as = paiza_patron - } - } - } - - option = { #whoooops - name = mpo_decisions_events.0111.a - #what do you mean my actions have consequences - custom_tooltip = mpo_decisions_events.0111.a.effects - scope:paiza_patron = { - add_opinion = { - target = root - modifier = abused_paiza_authority - } - } - } - - option = { #its a prank bro - trigger = { - scope:paiza_patron = { - is_ai = yes - } - } - name = mpo_decisions_events.0111.b - add_prestige_level = -1 - duel = { - skill = diplomacy - target = scope:paiza_patron - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - custom_tooltip = mpo_decisions_events.0111.a.survived_khans_wrath - scope:paiza_patron = { - add_opinion = { - target = root - modifier = angry_opinion - opinion = -30 - } - } - } - 70 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 10 - custom_tooltip = mpo_decisions_events.0111.a.severe_effects - scope:paiza_patron = { - add_opinion = { - target = root - modifier = gravely_abused_paiza_authority - } - } - every_close_family_member = { - limit = { - is_ai = yes - } - scope:paiza_patron = { - add_opinion = { - target = prev - modifier = abused_paiza_authority_family - } - } - } - } - } - } -} - -mpo_decisions_events.0112 = { #mpo_abuse_authority_paiza_decision consequences decision for a player - type = character_event - theme = nomads - - override_background = { reference = mpo_campfire_steppe } - - title = mpo_decisions_events.0112.t - desc = mpo_decisions_events.0112.desc - - left_portrait = { - character = scope:paiza_abuser_1 - animation = personality_coward - } - - right_portrait = { - character = scope:paiza_abuser - animation = fear - } - - artifact = { - target = scope:paiza_artifact - position = lower_right_portrait - } - - trigger = { - NOT = { - has_character_flag = refused_paiza_abuse_notifications - } - scope:paiza_abuser = { - any_dynasty_member = { - location = scope:paiza_abuser - is_ai = yes - is_adult = yes - } - } - } - - immediate = { - scope:paiza_abuser = { - random_dynasty_member = { - limit = { - location = scope:paiza_abuser - is_ai = yes - is_adult = yes - } - save_scope_as = paiza_abuser_1 - } - random_equipped_character_artifact = { - limit = { - root = { can_benefit_from_artifact = prev } - exists = var:paiza_patron - var:paiza_patron = { - is_alive = yes - is_gurkhan = yes - } - } - save_scope_as = paiza_artifact - var:paiza_patron ?= { - save_scope_as = paiza_patron - } - } - } - } - - option = { #take action - name = mpo_decisions_events.0112.a - custom_tooltip = mpo_decisions_events.0112.a.desc - reverse_add_opinion = { - target = scope:paiza_abuser - modifier = gravely_abused_paiza_authority - } - reverse_add_opinion = { - target = scope:paiza_abuser_1 - modifier = gravely_abused_paiza_authority - } - } - - option = { #not for now - name = mpo_decisions_events.0112.b - scope:paiza_abuser = { - send_interface_toast = { - type = event_toast_effect_good - title = mpo_paiza_abuse_counter_effect.indifferent - left_icon = root - } - } - scope:paiza_abuser_1 = { - send_interface_toast = { - type = event_toast_effect_good - title = mpo_paiza_abuse_counter_effect.indifferent - left_icon = root - } - } - } - - option = { #do not notify me ever again (ever for like, 10 years) - name = mpo_decisions_events.0112.c - - add_character_flag = { - flag = refused_paiza_abuse_notifications - years = 10 - } - } -} - -scripted_effect localize_study_commander_success_chance_change = { - if = { - limit = { - $VALUE$ >= 25 - } - custom_tooltip = study_commander_trait_current_success_chance_increase_monumental - } - else_if = { - limit = { - $VALUE$ >= 15 - } - custom_tooltip = study_commander_trait_current_success_chance_increase_great - } - else_if = { - limit = { - $VALUE$ >= 1 - } - custom_tooltip = study_commander_trait_current_success_chance_increase - } - else_if = { - limit = { - $VALUE$ = 0 - } - custom_tooltip = study_commander_trait_current_success_chance_none - } - else_if = { - limit = { - $VALUE$ >= -15 - } - custom_tooltip = study_commander_trait_current_success_chance_decrease - } - else = { - custom_tooltip = study_commander_trait_current_success_chance_decrease_great - } - if = { - limit = { - NOT = { has_variable = study_commander_trait_success_chance_var } - } - set_variable = { - name = study_commander_trait_success_chance_var - value = 0 - } - } - change_variable = { - name = study_commander_trait_success_chance_var - add = $VALUE$ - } -} -scripted_effect mentor_option_seed_effect = { - random_list = { - 1 = { save_scope_value_as = { name = mentor_option_seed value = 1 } } - 1 = { save_scope_value_as = { name = mentor_option_seed value = 2 } } - } -} -scripted_effect trait_weighting_effect = { - if = { - limit = { - can_weigh_trait_trigger = { - TRAIT = $WEIGHTED_TRAIT$ - } - } - if = { - limit = { - NOT = { has_variable = $WEIGHTED_TRAIT$_weight } - } - set_variable = { - name = $WEIGHTED_TRAIT$_weight - value = 0 - } - } - change_variable = { - name = $WEIGHTED_TRAIT$_weight - add = $WEIGHT$ - } - every_trait = { - limit = { - this = trait:$WEIGHTED_TRAIT$ - } - save_scope_as = weighted_trait - } - if = { - limit = { - $WEIGHT$ > 0 - } - custom_tooltip = study_commander_trait_weight_tooltip_pos - } - else = { - custom_tooltip = study_commander_trait_weight_tooltip_neg - } - } - else = { - add_prestige = 10 - } -} -scripted_effect trait_weighting_effect_mentor = { - if = { - limit = { - scope:commander_trait_mentor = { has_trait = $TRAIT$ } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = $TRAIT$ - WEIGHT = 10 - } - } -} -scripted_trigger can_weigh_trait_trigger = { - trigger_if = { - limit = { - NOT = { has_trait = $TRAIT$ } - } - # Exceptions - trigger_if = { - limit = { - flag:$TRAIT$ = flag:reckless - } - NOT = { has_trait = cautious_leader } - } - trigger_else_if = { - limit = { - flag:$TRAIT$ = flag:cautious_leader - - } - NOT = { has_trait = reckless } - } - trigger_else = { - always = yes - } - } - trigger_else = { - always = no - } -} - -# Study Commander Trait Events -mpo_decisions_events.0200 = { - type = character_event - title = mpo_decisions_events.0200.t - desc = { - desc = mpo_decisions_events.0200.desc - first_valid = { - triggered_desc = { - trigger = { - has_variable = commander_trait_mentor - var:commander_trait_mentor = scope:commander_trait_mentor - } - desc = mpo_decisions_events.0200.desc_my_mentor - } - triggered_desc = { - trigger = { - scope:commander_trait_mentor = { has_variable = commander_trait_mentor } - } - desc = mpo_decisions_events.0200.desc_mentor - } - } - } - theme = nomads - - left_portrait = { - character = root - animation = marshal - } - - right_portrait = { - character = scope:commander_trait_mentor - animation = inspect_weapon - } - - immediate = { - stress_impact = { - base = medium_stress_impact_gain - } - add_character_flag = is_learning_commander_trait - # Find a mentor - if = { - limit = { - OR = { - NOT = { has_variable = commander_trait_mentor } - AND = { - has_variable = commander_trait_mentor - var:commander_trait_mentor = { is_available_adult = no } - } - } - } - every_knight = { - limit = { - is_available_adult = yes - } - save_scope_as = possible_mentor - root = { - add_to_variable_list = { - name = possible_mentor_list - target = scope:possible_mentor - } - } - } - every_vassal_or_below = { - limit = { - is_available_adult = yes - } - save_scope_as = possible_mentor - root = { - add_to_variable_list = { - name = possible_mentor_list - target = scope:possible_mentor - } - } - } - every_councillor = { - limit = { - is_available_adult = yes - } - save_scope_as = possible_mentor - root = { - add_to_variable_list = { - name = possible_mentor_list - target = scope:possible_mentor - } - } - } - ordered_in_list = { - variable = possible_mentor_list - limit = { - martial > decent_skill_rating - } - order_by = { - add = martial - if = { - limit = { - number_of_commander_traits >= 1 - } - add = 5 - } - } - save_scope_as = commander_trait_mentor - } - if = { - limit = { - NOT = { exists = scope:commander_trait_mentor } - } - create_character = { - random_traits = yes - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - random_traits_list = { - count = 1 - education_martial_2 = {} - education_martial_3 = {} - education_martial_4 = {} - } - random_traits_list = { - count = 1 - brave = {} - just = {} - gallant = {} - honest = {} - gregarious = {} - generous = {} - diligent = {} - wrathful = {} - } - prowess = { - min_template_decent_skill - min_template_decent_skill - } - martial = { - min_template_high_skill - max_template_high_skill - } - intrigue = { - min_template_decent_skill - max_template_medium_skill - } - learning = { - min_template_decent_skill - max_template_medium_skill - } - save_scope_as = commander_trait_mentor - after_creation = { - give_random_commander_trait_effect = yes - } - } - } - } - else = { - var:commander_trait_mentor = { save_scope_as = commander_trait_mentor } - } - if = { - limit = { - debug_only = yes - } - custom_tooltip = study_commander_trait_current_success_chance_debug - } - else = { - custom_tooltip = study_commander_trait_current_success_chance - } - set_variable = { - name = study_commander_trait_success_chance_var - value = 0 - } - } - - option = { #Study under mentor - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_variable = commander_trait_mentor - var:commander_trait_mentor = scope:commander_trait_mentor - } - desc = mpo_decisions_events.0200.my_mentor - } - desc = mpo_decisions_events.0200.mentor - } - } - } - trigger = { - short_term_gold >= scope:commander_trait_mentor.study_commander_trait_mentor_hire_cost - } - show_as_unavailable = { always = yes } - flavor = mpo_decisions_events.0200.mentor_flavor - save_scope_value_as = { - name = training_method - value = flag:mentor - } - pay_short_term_gold = { - target = scope:commander_trait_mentor - gold = scope:commander_trait_mentor.study_commander_trait_mentor_hire_cost - } - localize_study_commander_success_chance_change = { - VALUE = 25 - } - set_variable = { - name = commander_trait_mentor - value = scope:commander_trait_mentor - } - scope:commander_trait_mentor = { - add_character_flag = commander_trait_mentor - } - if = { - limit = { - scope:commander_trait_mentor = { number_of_commander_traits >= 1 } - } - custom_tooltip = mpo_decisions_events.0200.mentor_traits - trait_weighting_effect_mentor = { TRAIT = logistician } - trait_weighting_effect_mentor = { TRAIT = military_engineer } - trait_weighting_effect_mentor = { TRAIT = aggressive_attacker } - trait_weighting_effect_mentor = { TRAIT = unyielding_defender } - trait_weighting_effect_mentor = { TRAIT = forder } - trait_weighting_effect_mentor = { TRAIT = flexible_leader } - trait_weighting_effect_mentor = { TRAIT = desert_warrior } - trait_weighting_effect_mentor = { TRAIT = jungle_stalker } - trait_weighting_effect_mentor = { TRAIT = reaver } - trait_weighting_effect_mentor = { TRAIT = reckless } - trait_weighting_effect_mentor = { TRAIT = holy_warrior } - trait_weighting_effect_mentor = { TRAIT = open_terrain_expert } - trait_weighting_effect_mentor = { TRAIT = rough_terrain_expert } - trait_weighting_effect_mentor = { TRAIT = forest_fighter } - trait_weighting_effect_mentor = { TRAIT = cautious_leader } - trait_weighting_effect_mentor = { TRAIT = organizer } - trait_weighting_effect_mentor = { TRAIT = winter_soldier } - } - stress_impact = { - greedy = medium_stress_impact_gain - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.1 - ai_energy = 1 - } - modifier = { - scope:commander_trait_mentor.martial >= root.martial - factor = 1.25 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } - - option = { #Study on your own - name = mpo_decisions_events.0200.a - flavor = mpo_decisions_events.0200.alone - save_scope_value_as = { - name = training_method - value = flag:none - } - localize_study_commander_success_chance_change = { - VALUE = 0 - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - has_trait = craven - factor = 0.5 - } - } - } - - option = { #Study on your own - Martial - name = mpo_decisions_events.0200.martial - flavor = mpo_decisions_events.0200.martial_flavor - trigger = { - martial >= high_skill_rating - } - save_scope_value_as = { - name = training_method - value = flag:martial - } - if = { - limit = { - highest_skill = martial - } - localize_study_commander_success_chance_change = { - VALUE = 15 - } - } - else = { - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - highest_skill = martial - factor = 1.5 - } - } - } - - option = { #Study on your own - Learning - name = mpo_decisions_events.0200.learning - flavor = mpo_decisions_events.0200.learning_flavor - trigger = { - learning >= high_skill_rating - } - show_as_unavailable = { learning >= low_skill_rating } - save_scope_value_as = { - name = training_method - value = flag:learning - } - if = { - limit = { - highest_skill = learning - } - localize_study_commander_success_chance_change = { - VALUE = 15 - } - } - else = { - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - highest_skill = learning - factor = 1.5 - } - } - } - - option = { #Study on your own - Intrigue - name = mpo_decisions_events.0200.intrigue - flavor = mpo_decisions_events.0200.intrigue_flavor - trigger = { - intrigue >= high_skill_rating - } - show_as_unavailable = { intrigue >= low_skill_rating } - save_scope_value_as = { - name = training_method - value = flag:intrigue - } - if = { - limit = { - highest_skill = intrigue - } - localize_study_commander_success_chance_change = { - VALUE = 15 - } - } - else = { - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - highest_skill = intrigue - factor = 1.5 - } - } - } - - after = { - if = { - limit = { - OR = { - has_trait = vengeful - has_trait = wrathful - has_trait = paranoid - has_trait = arbitrary - has_trait = zealous - has_trait = temperate - has_trait = gluttonous - has_trait = greedy - has_trait = diligent - has_trait = administrator - has_trait = architect - } - } - custom_tooltip = study_commander_trait_bonus - if = { - limit = { - OR = { - has_trait = vengeful - has_trait = wrathful - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = aggressive_attacker - WEIGHT = 10 - } - } - if = { - limit = { - has_trait = paranoid - } - trait_weighting_effect = { - WEIGHTED_TRAIT = cautious_leader - WEIGHT = 10 - } - } - if = { - limit = { - has_trait = arbitrary - } - trait_weighting_effect = { - WEIGHTED_TRAIT = reckless - WEIGHT = 10 - } - } - if = { - limit = { - has_trait = zealous - } - trait_weighting_effect = { - WEIGHTED_TRAIT = holy_warrior - WEIGHT = 10 - } - } - if = { - limit = { - has_trait = temperate - } - trait_weighting_effect = { - WEIGHTED_TRAIT = logistician - WEIGHT = 10 - } - } - if = { - limit = { - has_trait = gluttonous - } - trait_weighting_effect = { - WEIGHTED_TRAIT = logistician - WEIGHT = -10 - } - } - if = { - limit = { - has_trait = greedy - } - trait_weighting_effect = { - WEIGHTED_TRAIT = reaver - WEIGHT = 10 - } - } - if = { - limit = { - OR = { - has_trait = diligent - has_trait = administrator - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = organizer - WEIGHT = 5 - } - } - if = { - limit = { - has_trait = architect - } - trait_weighting_effect = { - WEIGHTED_TRAIT = military_engineer - WEIGHT = 10 - } - } - } - if = { - limit = { - NOR = { - scope:commander_trait_mentor = { is_courtier_of = root } - scope:commander_trait_mentor = { is_councillor_of = root } - scope:commander_trait_mentor = { is_knight_of = root } - scope:training_method ?= flag:mentor - } - } - scope:commander_trait_mentor = { - silent_disappearance_effect = yes - } - } - trigger_event = { - id = mpo_decisions_events.0201 - days = { 5 10 } - } - } -} - -scripted_effect study_commander_trait_option_mentor = { - if = { - limit = { - $DUEL$ = yes - } - duel = { - skill = $SKILL$ - target = scope:commander_trait_mentor - desc = study_commander_trait_option_mentor_desc - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = $SUCCESS_DESC$ - send_interface_toast = { - type = event_toast_effect_good - title = $SUCCESS_DESC$ - left_icon = root - right_icon = scope:commander_trait_mentor - if = { - limit = { - $WOUND_CHANCE$ = yes - } - random = { - chance = 10 - scope:commander_trait_mentor = { - increase_wounds_effect = { REASON = fight } - } - } - } - random_list = { - 50 = { - desc = study_commander_trait_option_success_ok - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 10 } - } - 50 = { - desc = study_commander_trait_option_success - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 20 } - } - } - } - } - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = $FAIL_DESC$ - send_interface_toast = { - type = event_toast_effect_bad - title = $FAIL_DESC$ - left_icon = root - right_icon = scope:commander_trait_mentor - if = { - limit = { - $WOUND_CHANCE$ = yes - } - random = { - chance = 10 - increase_wounds_effect = { REASON = fight } - } - } - random_list = { - 50 = { - desc = study_commander_trait_option_fail_ok - localize_study_commander_success_chance_change = { VALUE = -10 } - } - 50 = { - desc = study_commander_trait_option_fail - localize_study_commander_success_chance_change = { VALUE = -20 } - } - } - } - } - } - } - else = { - duel = { - skill = $SKILL$ - value = decent_skill_rating - 75 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = $SUCCESS_DESC$ - send_interface_toast = { - type = event_toast_effect_good - title = $SUCCESS_DESC$ - left_icon = root - right_icon = scope:commander_trait_mentor - if = { - limit = { - $WOUND_CHANCE$ = yes - } - random = { - chance = 10 - scope:commander_trait_mentor = { - increase_wounds_effect = { REASON = fight } - } - } - } - random_list = { - 50 = { - desc = study_commander_trait_option_success_ok - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 10 } - } - 50 = { - desc = study_commander_trait_option_success - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 20 } - } - } - } - } - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = $FAIL_DESC$ - send_interface_toast = { - type = event_toast_effect_bad - title = $FAIL_DESC$ - left_icon = root - right_icon = scope:commander_trait_mentor - if = { - limit = { - $WOUND_CHANCE$ = yes - } - random = { - chance = 10 - increase_wounds_effect = { REASON = fight } - } - } - random_list = { - 50 = { - desc = study_commander_trait_option_fail_ok - localize_study_commander_success_chance_change = { VALUE = -10 } - } - 50 = { - desc = study_commander_trait_option_fail - localize_study_commander_success_chance_change = { VALUE = -20 } - } - } - } - } - } - } -} - -scripted_effect study_commander_trait_option_no_mentor = { - if = { - limit = { - $DUEL$ = yes - } - duel = { - skill = $SKILL$ - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = $SUCCESS_DESC$ - send_interface_toast = { - type = event_toast_effect_good - title = $SUCCESS_DESC$ - left_icon = root - random_list = { - 50 = { - desc = study_commander_trait_option_success_ok - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 10 } - } - 50 = { - desc = study_commander_trait_option_success - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 20 } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = $FAIL_DESC$ - send_interface_toast = { - type = event_toast_effect_bad - title = $FAIL_DESC$ - left_icon = root - if = { - limit = { - $WOUND_CHANCE$ = yes - } - random = { - chance = 10 - increase_wounds_effect = { REASON = fight } - } - } - random_list = { - 50 = { - desc = study_commander_trait_option_fail_ok - localize_study_commander_success_chance_change = { VALUE = -10 } - } - 50 = { - desc = study_commander_trait_option_fail - localize_study_commander_success_chance_change = { VALUE = -20 } - } - } - } - } - } - } - else = { - random_list = { - 50 = { - desc = $SUCCESS_DESC$ - show_chance = no - localize_study_commander_success_chance_change = { VALUE = 10 } - } - 50 = { - desc = $FAIL_DESC$ - show_chance = no - localize_study_commander_success_chance_change = { VALUE = -10 } - } - } - } -} - - -mpo_decisions_events.0201 = { # Training Session 1 - type = character_event - title = mpo_decisions_events.0201.t - desc = { - desc = mpo_decisions_events.0201.desc_intro - triggered_desc = { - trigger = { - scope:training_method = flag:mentor - } - desc = mpo_decisions_events.0201.desc_mentor - } - } - theme = nomads - - left_portrait = { - character = root - animation = marshal - } - - right_portrait = { - trigger = { - scope:training_method = flag:mentor - } - character = scope:commander_trait_mentor - animation = personality_honorable - } - - immediate = { - stress_impact = { - base = medium_stress_impact_gain - } - if = { - limit = { - debug_only = yes - } - custom_tooltip = study_commander_trait_current_success_chance_debug - } - else = { - custom_tooltip = study_commander_trait_current_success_chance - } - if = { - limit = { - scope:training_method = flag:mentor - } - mentor_option_seed_effect = yes - } - } - - option = { # Single Combat - name = mpo_decisions_events.0201.martial_1 - trigger = { - OR = { - scope:training_method = flag:martial - scope:mentor_option_seed ?= 1 - } - } - flavor = mpo_decisions_events.0201.martial_1_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0201.martial_1_mentor_success - FAIL_DESC = mpo_decisions_events.0201.martial_1_mentor_fail - WOUND_CHANCE = yes - } - } - else = { - custom_tooltip = mpo_decisions_events.0201.martial_1_tt - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0201.martial_1_success - FAIL_DESC = mpo_decisions_events.0201.martial_1_fail - WOUND_CHANCE = yes - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = aggressive_attacker - WEIGHT = 15 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = martial - } - modifier = { - factor = 0 - has_trait = aggressive_attacker - } - } - } - - option = { # Small-scale Battle - name = mpo_decisions_events.0201.martial_2 - trigger = { - OR = { - scope:training_method = flag:martial - scope:mentor_option_seed ?= 2 - } - } - flavor = mpo_decisions_events.0201.martial_2_flavor - custom_tooltip = mpo_decisions_events.0201.martial_2_tt - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0201.martial_2_success - FAIL_DESC = mpo_decisions_events.0201.martial_2_fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0201.martial_2_success - FAIL_DESC = mpo_decisions_events.0201.martial_2_fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = unyielding_defender - WEIGHT = 15 - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:battlefield - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = martial - } - modifier = { - factor = 1.2 - martial >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = unyielding_defender - } - } - } - - option = { # Landscape - name = mpo_decisions_events.0201.learning_1 - trigger = { - OR = { - scope:training_method = flag:learning - scope:mentor_option_seed ?= 1 - } - } - flavor = mpo_decisions_events.0201.learning_1_flavor - custom_tooltip = mpo_decisions_events.0201.learning_1_tt - if = { - limit = { - scope:training_method = flag:mentor - } - custom_tooltip = mpo_decisions_events.0201.learning_1_mentor - study_commander_trait_option_mentor = { - DUEL = no - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0201.learning_1_success - FAIL_DESC = mpo_decisions_events.0201.learning_1_fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0201.learning_1_success - FAIL_DESC = mpo_decisions_events.0201.learning_1_fail - WOUND_CHANCE = no - } - } - if = { - limit = { - can_weigh_trait_trigger = { TRAIT = open_terrain_expert } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = open_terrain_expert - WEIGHT = 15 - } - } - else_if = { - limit = { - can_weigh_trait_trigger = { TRAIT = rough_terrain_expert } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = rough_terrain_expert - WEIGHT = 15 - } - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:terrain - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 1.2 - learning >= decent_skill_rating - } - modifier = { - factor = 0.5 - has_trait = rough_terrain_expert - } - modifier = { - factor = 0.5 - has_trait = open_terrain_expert - } - } - } - - option = { # Study military innovations - name = mpo_decisions_events.0201.learning_2 - trigger = { - OR = { - scope:training_method = flag:learning - scope:mentor_option_seed ?= 2 - } - } - custom_tooltip = mpo_decisions_events.0201.learning_2_tt - flavor = mpo_decisions_events.0201.learning_2_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - custom_tooltip = mpo_decisions_events.0201.learning_2_mentor - study_commander_trait_option_mentor = { - DUEL = no - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0201.learning_2_success - FAIL_DESC = mpo_decisions_events.0201.learning_2_fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0201.learning_2_success - FAIL_DESC = mpo_decisions_events.0201.learning_2_fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = military_engineer - WEIGHT = 15 - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:study - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 1.2 - learning >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = military_engineer - } - } - } - - option = { # Boost morale / manipulate enemy - name = mpo_decisions_events.0201.intrigue_1 - trigger = { - OR = { - scope:training_method = flag:intrigue - scope:mentor_option_seed ?= 1 - } - } - custom_tooltip = mpo_decisions_events.0201.intrigue_1_tt - flavor = mpo_decisions_events.0201.intrigue_1_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - custom_tooltip = mpo_decisions_events.0201.intrigue_1_mentor - study_commander_trait_option_mentor = { - DUEL = no - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0201.intrigue_1_success - FAIL_DESC = mpo_decisions_events.0201.intrigue_1_fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0201.intrigue_1_success - FAIL_DESC = mpo_decisions_events.0201.intrigue_1_fail - WOUND_CHANCE = no - } - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:town - } - trait_weighting_effect = { - WEIGHTED_TRAIT = flexible_leader - WEIGHT = 15 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = intrigue - } - modifier = { - factor = 1.2 - intrigue >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = flexible_leader - } - } - } - - option = { # Negotiate with enemy - name = mpo_decisions_events.0201.intrigue_2 - trigger = { - OR = { - scope:training_method = flag:intrigue - scope:mentor_option_seed ?= 2 - } - } - custom_tooltip = mpo_decisions_events.0201.intrigue_2_tt - flavor = mpo_decisions_events.0201.intrigue_2_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = no - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0201.intrigue_2_success - FAIL_DESC = mpo_decisions_events.0201.intrigue_2_fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0201.intrigue_2_success - FAIL_DESC = mpo_decisions_events.0201.intrigue_2_fail - WOUND_CHANCE = yes - } - } - if = { - limit = { - can_weigh_trait_trigger = { TRAIT = cautious_leader } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = cautious_leader - WEIGHT = 15 - } - } - else = { - trait_weighting_effect = { - WEIGHTED_TRAIT = organizer - WEIGHT = 15 - } - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:town - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = intrigue - } - modifier = { - factor = 1.2 - intrigue >= decent_skill_rating - } - modifier = { - factor = 0.5 - has_trait = organizer - } - modifier = { - factor = 0.5 - has_trait = cautious_leader - } - } - } - - option = { # Supply Crisis - name = mpo_decisions_events.0201.none_1 - trigger = { - OR = { - scope:mentor_option_seed ?= 1 - scope:training_method = flag:none - } - } - flavor = mpo_decisions_events.0201.none_1_flavor - trait_weighting_effect = { - WEIGHTED_TRAIT = logistician - WEIGHT = 5 - } - study_commander_trait_option_no_mentor = { - DUEL = no - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0201.none_1_success - FAIL_DESC = mpo_decisions_events.0201.none_1_fail - WOUND_CHANCE = yes - } - save_scope_value_as = { - name = last_location_study_commander - value = flag:town - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - has_trait = logistician - } - } - } - - option = { # Simple Training Exercise - name = mpo_decisions_events.0201.none_2 - trigger = { - OR = { - scope:mentor_option_seed ?= 2 - scope:training_method = flag:none - } - } - flavor = mpo_decisions_events.0201.none_2_flavor - add_prowess_skill = 2 - random = { - chance = 10 - if = { - limit = { - has_trait = craven - } - remove_trait = craven - } - add_trait = brave - } - } - - after = { - trigger_event = { - id = mpo_decisions_events.0202 - days = { 15 20 } - } - } -} - -mpo_decisions_events.0202 = { # Random Situation - type = character_event - title = mpo_decisions_events.0202.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:last_location_study_commander ?= flag:battlefield - } - desc = mpo_decisions_events.0202.desc_battlefield - } - triggered_desc = { - trigger = { - scope:last_location_study_commander ?= flag:terrain - } - desc = mpo_decisions_events.0202.desc_terrain - } - triggered_desc = { - trigger = { - scope:last_location_study_commander ?= flag:study - } - desc = mpo_decisions_events.0202.desc_study - } - triggered_desc = { - trigger = { - scope:last_location_study_commander ?= flag:town - } - desc = mpo_decisions_events.0202.desc_town - } - } - desc = mpo_decisions_events.0202.desc - first_valid = { - triggered_desc = { - trigger = { - scope:random_situation = 1 - } - desc = mpo_decisions_events.0202.desc_1_intro - } - triggered_desc = { - trigger = { - scope:random_situation = 2 - } - desc = mpo_decisions_events.0202.desc_2 - } - triggered_desc = { - trigger = { - scope:random_situation = 3 - } - desc = mpo_decisions_events.0202.desc_3 - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:forest - } - desc = terrain_forest - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:taiga - } - desc = terrain_taiga - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:jungle - } - desc = terrain_jungle - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:wetlands - } - desc = terrain_wetlands - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:floodplains - } - desc = terrain_floodplains - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:desert - } - desc = terrain_desert - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:desert_mountains - } - desc = terrain_desert_mountains - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:oasis - } - desc = terrain_oasis - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:steppe - } - desc = terrain_steppe - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:farmlands - } - desc = terrain_farmlands - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:plains - } - desc = terrain_plains - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:drylands - } - desc = terrain_drylands - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:mountains - } - desc = terrain_mountains - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - scope:situation_1_terrain ?= flag:hills - } - desc = terrain_hills - } - - } - random_valid = { - triggered_desc = { - trigger = { - scope:situation_1_terrain ?= flag:taiga - } - desc = terrain_disadvantage_freeze - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:forest - scope:situation_1_terrain ?= flag:jungle - } - } - desc = terrain_disadvantage_foliage - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:forest - scope:situation_1_terrain ?= flag:jungle - scope:situation_1_terrain ?= flag:wetlands - scope:situation_1_terrain ?= flag:floodplains - } - } - desc = terrain_disadvantage_heavy_rain - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:desert - scope:situation_1_terrain ?= flag:desert_mountains - } - } - desc = terrain_disadvantage_sand - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:desert - scope:situation_1_terrain ?= flag:desert_mountains - scope:situation_1_terrain ?= flag:oasis - scope:situation_1_terrain ?= flag:steppe - scope:situation_1_terrain ?= flag:farmlands - scope:situation_1_terrain ?= flag:plains - scope:situation_1_terrain ?= flag:drylands - } - } - desc = terrain_disadvantage_heat - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:mountains - scope:situation_1_terrain ?= flag:hills - } - } - desc = terrain_disadvantage_hike - } - triggered_desc = { - trigger = { - OR = { - scope:situation_1_terrain ?= flag:steppe - scope:situation_1_terrain ?= flag:farmlands - scope:situation_1_terrain ?= flag:plains - scope:situation_1_terrain ?= flag:drylands - } - } - desc = terrain_disadvantage_endless_field - } - triggered_desc = { - trigger = { - scope:random_situation = 1 - } - desc = terrain_disadvantage_difficult - } - } - desc = mpo_decisions_events.0202.desc_outro - } - - theme = nomads - - override_background = { - trigger = { - scope:last_location_study_commander ?= flag:battlefield - } - reference = battlefield - } - - override_background = { - trigger = { - scope:last_location_study_commander ?= flag:terrain - } - reference = terrain - } - - override_background = { - trigger = { - scope:last_location_study_commander ?= flag:study - } - reference = study - } - - override_background = { - trigger = { - scope:last_location_study_commander ?= flag:town - } - reference = courtyard - } - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:situation_alerter - animation = storyteller - } - - immediate = { - stress_impact = { - base = miniscule_stress_impact_gain - } - if = { - limit = { - debug_only = yes - } - custom_tooltip = study_commander_trait_current_success_chance_debug - } - else = { - custom_tooltip = study_commander_trait_current_success_chance - } - if = { - limit = { - scope:training_method = flag:mentor - } - mentor_option_seed_effect = yes - } - if = { - limit = { - NOT = { scope:training_method = flag:mentor } - } - if = { - limit = { - any_courtier = { - NOT = { - this = root - } - is_available_adult = yes - } - } - random_courtier = { - limit = { - NOT = { - this = root - } - is_available_adult = yes - } - save_scope_as = situation_alerter - } - } - else = { - create_character = { - dynasty = none - template = soldier_friend_character - location = root.location - age = { 16 30 } - save_scope_as = situation_alerter - } - } - } - else = { - # For loc - scope:commander_trait_mentor = { save_scope_as = situation_alerter } - } - # Find random situation - random_list = { - 15 = { - save_scope_value_as = { # Battlefield/Terrain - name = random_situation - value = 1 - } - random_list = { - 10 = { - modifier = { - add = 5 - OR = { - location = { terrain = drylands } - location = { terrain = desert } - location = { terrain = desert_mountains } - location = { terrain = oasis } - any_sub_realm_barony = { - title_province = { - OR = { - terrain = drylands - terrain = desert - terrain = desert_mountains - terrain = oasis - } - } - } - } - } - modifier = { - add = -100 - NOT = { can_weigh_trait_trigger = { TRAIT = desert_warrior } } - } - save_scope_value_as = { name = situation_1_terrain value = flag:desert } - } - 10 = { - modifier = { - add = 5 - OR = { - location = { terrain = jungle } - any_sub_realm_barony = { - title_province = { - terrain = jungle - } - } - } - } - modifier = { - add = -100 - NOT = { can_weigh_trait_trigger = { TRAIT = jungle_stalker } } - } - save_scope_value_as = { name = situation_1_terrain value = flag:jungle } - } - 10 = { - modifier = { - add = 5 - OR = { - location = { terrain = forest } - location = { terrain = taiga } - any_sub_realm_barony = { - title_province = { - OR = { - terrain = forest - terrain = taiga - } - } - } - } - } - modifier = { - add = -100 - NOT = { can_weigh_trait_trigger = { TRAIT = forest_fighter } } - } - save_scope_value_as = { name = situation_1_terrain value = flag:forest } - } - 10 = { - modifier = { - add = 5 - OR = { - location = { terrain = farmlands } - location = { terrain = plains } - location = { terrain = steppe } - any_sub_realm_barony = { - title_province = { - OR = { - terrain = farmlands - terrain = plains - terrain = steppe - } - } - } - } - } - modifier = { - add = -100 - NOT = { can_weigh_trait_trigger = { TRAIT = open_terrain_expert } } - } - save_scope_value_as = { name = situation_1_terrain value = flag:plains } - } - 10 = { - modifier = { - add = 5 - OR = { - location = { terrain = hills } - location = { terrain = mountains } - location = { terrain = wetlands } - any_sub_realm_barony = { - title_province = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - } - } - } - modifier = { - add = -100 - NOT = { can_weigh_trait_trigger = { TRAIT = rough_terrain_expert } } - } - save_scope_value_as = { name = situation_1_terrain value = flag:mountains } - } - 20 = { - trigger = { - current_season_trigger = { SEASON = winter } - } - modifier = { - add = -100 - NOT = { - can_weigh_trait_trigger = { TRAIT = reaver } - can_weigh_trait_trigger = { TRAIT = winter_soldier } - } - } - save_scope_value_as = { name = situation_1_terrain value = flag:winter_terrain } - } - } - } - 10 = { - save_scope_value_as = { # Siege - name = random_situation - value = 2 - } - } - 10 = { - save_scope_value_as = { # Sabotage - name = random_situation - value = 3 - } - } - } - - } - - option = { - name = mpo_decisions_events.0202.martial_situation_1 - trigger = { - scope:random_situation = 1 - } - flavor = mpo_decisions_events.0202.martial_situation_1_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - switch = { - trigger = scope:situation_1_terrain - flag:desert = { - trait_weighting_effect = { - WEIGHTED_TRAIT = desert_warrior - WEIGHT = 20 - } - } - flag:jungle = { - trait_weighting_effect = { - WEIGHTED_TRAIT = jungle_stalker - WEIGHT = 20 - } - } - flag:forest = { - trait_weighting_effect = { - WEIGHTED_TRAIT = forest_fighter - WEIGHT = 20 - } - } - flag:plains = { - trait_weighting_effect = { - WEIGHTED_TRAIT = open_terrain_expert - WEIGHT = 20 - } - } - flag:mountains = { - trait_weighting_effect = { - WEIGHTED_TRAIT = rough_terrain_expert - WEIGHT = 20 - } - } - flag:winter_terrain = { - random_list = { - 1 = { - trigger = { can_weigh_trait_trigger = { TRAIT = reaver } } - trait_weighting_effect = { - WEIGHTED_TRAIT = reaver - WEIGHT = 15 - } - } - 1 = { - trigger = { can_weigh_trait_trigger = { TRAIT = winter_soldier } } - trait_weighting_effect = { - WEIGHTED_TRAIT = winter_soldier - WEIGHT = 15 - } - } - } - } - flag:wetlands = { - trait_weighting_effect = { - WEIGHTED_TRAIT = forder - WEIGHT = 20 - } - } - flag:floodplains = { - trait_weighting_effect = { - WEIGHTED_TRAIT = forder - WEIGHT = 20 - } - } - } - ai_chance = { - base = 150 - modifier = { - factor = 1.5 - highest_skill = martial - } - modifier = { - factor = 1.2 - martial >= decent_skill_rating - } - } - } - - option = { - name = mpo_decisions_events.0202.martial_situation_2 - trigger = { - scope:random_situation = 2 - OR = { - scope:training_method = flag:martial - scope:mentor_option_seed ?= 1 - } - } - flavor = mpo_decisions_events.0202.martial_situation_2_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = aggressive_attacker - WEIGHT = 20 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = martial - } - modifier = { - factor = 1.2 - martial >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = aggressive_attacker - } - } - } - - option = { - name = mpo_decisions_events.0202.martial_situation_3 - trigger = { - scope:random_situation = 3 - OR = { - scope:training_method = flag:martial - scope:mentor_option_seed ?= 2 - } - } - flavor = mpo_decisions_events.0202.martial_situation_3_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - random = { - chance = 10 - if = { - limit = { - has_trait = craven - } - remove_trait = craven - } - add_trait = brave - } - ai_chance = { - base = 100 - } - } - - option = { - name = mpo_decisions_events.0202.learning_situation_1 - trigger = { - scope:random_situation = 1 - OR = { - scope:training_method = flag:learning - scope:mentor_option_seed ?= 2 - } - } - flavor = mpo_decisions_events.0202.learning_situation_1_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = flexible_leader - WEIGHT = 20 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 1.2 - learning >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = flexible_leader - } - } - } - - option = { - name = mpo_decisions_events.0202.learning_situation_2 - trigger = { - scope:random_situation = 2 - } - flavor = mpo_decisions_events.0202.learning_situation_2_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = military_engineer - WEIGHT = 20 - } - ai_chance = { - base = 150 - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 1.2 - learning >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = military_engineer - } - } - } - - option = { - name = mpo_decisions_events.0202.learning_situation_3 - trigger = { - scope:random_situation = 3 - OR = { - scope:training_method = flag:learning - scope:mentor_option_seed ?= 2 - } - } - flavor = mpo_decisions_events.0202.learning_situation_3_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = reckless - WEIGHT = -5 - } - ai_chance = { - base = 75 - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 1.2 - learning >= decent_skill_rating - } - } - } - - option = { - name = mpo_decisions_events.0202.intrigue_situation_1 - trigger = { - scope:random_situation = 1 - OR = { - scope:training_method = flag:intrigue - scope:mentor_option_seed ?= 1 - } - } - flavor = mpo_decisions_events.0202.intrigue_situation_1_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = organizer - WEIGHT = 20 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = intrigue - } - modifier = { - factor = 1.2 - intrigue >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = organizer - } - } - } - - option = { - name = mpo_decisions_events.0202.intrigue_situation_2 - trigger = { - scope:random_situation = 2 - OR = { - scope:training_method = flag:intrigue - scope:mentor_option_seed ?= 2 - } - } - flavor = mpo_decisions_events.0202.intrigue_situation_2_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = reckless - WEIGHT = 20 - } - trait_weighting_effect = { - WEIGHTED_TRAIT = cautious_leader - WEIGHT = -5 - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - highest_skill = intrigue - } - modifier = { - factor = 1.2 - intrigue >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = reckless - } - } - } - - option = { - name = mpo_decisions_events.0202.intrigue_situation_3 - trigger = { - scope:random_situation = 3 - } - trait_weighting_effect = { - WEIGHTED_TRAIT = cautious_leader - WEIGHT = 20 - } - flavor = mpo_decisions_events.0202.intrigue_situation_3_flavor - if = { - limit = { - scope:training_method = flag:mentor - } - study_commander_trait_option_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - else = { - study_commander_trait_option_no_mentor = { - DUEL = yes - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = no - } - } - ai_chance = { - base = 150 - modifier = { - factor = 1.5 - highest_skill = intrigue - } - modifier = { - factor = 1.2 - intrigue >= decent_skill_rating - } - modifier = { - factor = 0 - has_trait = cautious_leader - } - } - } - - option = { - name = mpo_decisions_events.0202.none_situation_1 - trigger = { - scope:random_situation = 1 - } - flavor = mpo_decisions_events.0202.none_situation_1_flavor - study_commander_trait_option_no_mentor = { - DUEL = no - SKILL = martial - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = yes - } - trait_weighting_effect = { - WEIGHTED_TRAIT = unyielding_defender - WEIGHT = 5 - } - trait_weighting_effect = { - WEIGHTED_TRAIT = aggressive_attacker - WEIGHT = -5 - } - ai_chance = { - base = 75 - modifier = { - factor = 0 - has_trait = unyielding_defender - } - } - } - - option = { - name = mpo_decisions_events.0202.none_situation_2 - trigger = { - scope:random_situation = 2 - } - flavor = mpo_decisions_events.0202.none_situation_2_flavor - trait_weighting_effect = { - WEIGHTED_TRAIT = cautious_leader - WEIGHT = 20 - } - study_commander_trait_option_no_mentor = { - DUEL = no - SKILL = learning - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = yes - } - ai_chance = { - base = 75 - } - } - - option = { - name = mpo_decisions_events.0202.none_situation_3 - trigger = { - scope:random_situation = 3 - } - flavor = mpo_decisions_events.0202.none_situation_3_flavor - study_commander_trait_option_no_mentor = { - DUEL = no - SKILL = intrigue - SUCCESS_DESC = mpo_decisions_events.0202.success - FAIL_DESC = mpo_decisions_events.0202.fail - WOUND_CHANCE = yes - } - add_dread = miniscule_dread_gain - ai_chance = { - base = 75 - } - } - - after = { - trigger_event = { - id = mpo_decisions_events.0203 - days = { 3 7 } - } - if = { - limit = { - NOR = { - scope:situation_alerter = { is_courtier_of = root } - scope:commander_trait_mentor ?= scope:situation_alerter - } - } - scope:situation_alerter = { - silent_disappearance_effect = yes - } - } - } -} - -mpo_decisions_events.0203 = { # Reflection - type = character_event - title = mpo_decisions_events.0203.t - desc = { - desc = mpo_decisions_events.0203.desc_intro - first_valid = { - triggered_desc = { - trigger = { - scope:training_method = flag:mentor - } - desc = mpo_decisions_events.0203.desc_mentor - } - desc = mpo_decisions_events.0203.desc - } - } - theme = nomads - - override_background = { - reference = study - } - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - trigger = { - scope:training_method = flag:mentor - } - character = scope:commander_trait_mentor - animation = storyteller - } - - lower_center_portrait = { - trigger = { - exists = scope:heir_person - } - character = scope:heir_person - } - - lower_right_portrait = { - trigger = { - exists = scope:love_person - } - character = scope:love_person - } - - lower_left_portrait = { - trigger = { - exists = scope:hate_person - } - character = scope:hate_person - } - - immediate = { - stress_impact = { - base = miniscule_stress_impact_gain - } - if = { - limit = { - debug_only = yes - } - custom_tooltip = study_commander_trait_current_success_chance_debug - } - else = { - custom_tooltip = study_commander_trait_current_success_chance - } - # Get some people - # Heir (family member or designated) - if = { - limit = { - any_close_family_member = { - is_player_heir_of = root - is_primary_heir_of = root - } - } - random_close_family_member = { - limit = { - OR = { - is_player_heir_of = root - is_primary_heir_of = root - } - } - save_scope_as = heir_person - } - } - else_if = { - limit = { - exists = designated_heir - } - designated_heir = { save_scope_as = heir_person } - } - # Lover / Spouse - if = { - limit = { - any_spouse = { count >= 1 } - } - ordered_spouse = { - order_by = { - value = 10 - if = { - limit = { - has_opinion_modifier = { - modifier = love_opinion - target = root - } - } - add = 25 - } - } - save_scope_as = love_person - } - } - else_if = { - limit = { - num_of_relation_lover >= 1 - } - ordered_relation = { - type = lover - order_by = "opinion(root)" - save_scope_as = love_person - } - } - # Rival(s) - if = { - limit = { - num_of_relation_rival >= 1 - } - random_relation = { - type = rival - save_scope_as = hate_person - } - } - } - - option = { # Heir (if they're your relative or designated heir) - name = mpo_decisions_events.0203.a - trigger = { - exists = scope:heir_person - } - dynasty = { - add_dynasty_prestige = miniscule_dynasty_prestige_gain - } - if = { - limit = { - OR = { - scope:heir_person = { - has_relation_friend = root - } - has_trait = family_first - } - } - stress_impact = { - base = minor_stress_impact_loss - } - } - if = { - limit = { - scope:heir_person = { - opinion = { - target = root - value >= 40 - } - } - } - scope:heir_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - scope:heir_person = { - opinion = { - target = root - value >= 15 - } - } - } - scope:heir_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = family_first - } - opinion_modifier = { - opinion_target = scope:heir_person - multiplier = 0.5 - } - } - } - - option = { # Lover or Spouse - name = mpo_decisions_events.0203.b - trigger = { - exists = scope:love_person - } - - if = { - limit = { - scope:love_person = { - opinion = { - target = root - value >= 40 - } - } - } - scope:love_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - scope:love_person = { - opinion = { - target = root - value >= 15 - } - } - } - scope:love_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - if = { - limit = { - scope:love_person = { - OR = { - has_opinion_modifier = { - modifier = love_opinion - target = root - } - has_relation_lover = root - } - } - } - stress_impact = { - base = minor_stress_impact_loss - lustful = minor_stress_impact_loss - } - } - scope:love_person = { - add_opinion = { - target = root - modifier = love_opinion - opinion = 15 - } - } - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lustful - } - opinion_modifier = { - opinion_target = scope:love_person - multiplier = 0.5 - } - } - } - - option = { # Rival(s) / Enemies - name = { - text = { - triggered_desc = { - trigger = { - exists = scope:hate_person - } - desc = mpo_decisions_events.0203.c_rival - } - desc = mpo_decisions_events.0203.c - } - } - trait_weighting_effect = { - WEIGHTED_TRAIT = aggressive_attacker - WEIGHT = 20 - } - stress_impact = { - vengeful = minor_stress_impact_loss - } - if = { - limit = { - exists = scope:hate_person - scope:hate_person = { - opinion = { - target = root - value <= -40 - } - } - } - scope:hate_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - exists = scope:hate_person - scope:hate_person ?= { - opinion = { - target = root - value <= -15 - } - } - } - scope:hate_person = { save_scope_as = target_person } # For loc - custom_tooltip = mpo_decisions_events.0203.sentiment - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - else_if = { - limit = { - dread > 40 - } - custom_tooltip = mpo_decisions_events.0203.dread - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - dread > 15 - } - custom_tooltip = mpo_decisions_events.0203.dread - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - add_dread = miniscule_dread_gain - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = vengeful - } - modifier = { - factor = 1.2 - has_trait = wrathful - } - modifier = { - factor = 0 - NOT = { can_weigh_trait_trigger = { TRAIT = aggressive_attacker } } - } - } - } - - option = { # Title - name = { - text = { - triggered_desc = { - trigger = { - is_landed = no - } - desc = mpo_decisions_events.0203.d_landless - } - desc = mpo_decisions_events.0203.d - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - } - if = { - limit = { - prestige_level >= 4 - } - custom_tooltip = mpo_decisions_events.0203.prestige - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - prestige_level >= 2 - } - custom_tooltip = mpo_decisions_events.0203.prestige - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - add_prestige = miniscule_prestige_gain - ai_chance = { - base = 110 - modifier = { - factor = 1.25 - has_trait = ambitious - } - } - } - - option = { # Faith - name = mpo_decisions_events.0203.e - trigger = { - NOT = { has_trait = cynical } - } - stress_impact = { - zealous = minor_stress_impact_loss - } - trait_weighting_effect = { - WEIGHTED_TRAIT = holy_warrior - WEIGHT = 15 - } - if = { - limit = { - piety_level >= 4 - } - custom_tooltip = mpo_decisions_events.0203.piety - localize_study_commander_success_chance_change = { - VALUE = 25 - } - } - else_if = { - limit = { - piety_level >= 2 - } - custom_tooltip = mpo_decisions_events.0203.piety - localize_study_commander_success_chance_change = { - VALUE = 10 - } - } - add_piety = miniscule_piety_gain - ai_chance = { - base = 110 - modifier = { - factor = 1.25 - has_trait = zealous - } - modifier = { - factor = 0 - NOT = { can_weigh_trait_trigger = { TRAIT = holy_warrior } } - } - } - } - - after = { - trigger_event = { - id = mpo_decisions_events.0204 - days = { 3 7 } - } - } -} - -mpo_decisions_events.0204 = { # Get Trait - Or not! - type = character_event - title = mpo_decisions_events.0204.t - desc = { - desc = mpo_decisions_events.0204.desc - triggered_desc = { - trigger = { - scope:training_method = flag:mentor - } - desc = mpo_decisions_events.0204.desc_mentor - } - } - theme = nomads - - left_portrait = { - character = root - animation = marshal - } - - right_portrait = { - trigger = { - scope:training_method = flag:mentor - } - character = scope:commander_trait_mentor - animation = admiration - } - - option = { # Ok - name = mpo_decisions_events.0204.a - if = { - limit = { - scope:training_method = flag:mentor - } - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:commander_trait_mentor - opinion = 30 - } - } - random_list = { - 1 = { - modifier = { - always = yes - add = study_commander_trait_success_chance_value - } - custom_tooltip = mpo_decisions_events.0204.a_success - if = { - limit = { - number_of_commander_traits <= 1 # Because otherwise they hit limit and can't actually retry - } - custom_tooltip = mpo_decisions_events.0204.a_success_desc - } - hidden_effect = { - random_list = { # A little less likely to get the terrain ones cuz they're more situational - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = logistician } } - modifier = { has_variable = logistician_weight add = var:logistician_weight } - add_trait = logistician - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = military_engineer } } - modifier = { has_variable = military_engineer_weight add = var:military_engineer_weight } - add_trait = military_engineer - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = aggressive_attacker } } - modifier = { has_variable = aggressive_attacker_weight add = var:aggressive_attacker_weight } - add_trait = aggressive_attacker - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = unyielding_defender } } - modifier = { has_variable = unyielding_defender_weight add = var:unyielding_defender_weight } - add_trait = unyielding_defender - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = forder } } - modifier = { has_variable = forder_weight add = var:forder_weight } - add_trait = forder - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = flexible_leader } } - modifier = { has_variable = flexible_leader_weight add = var:flexible_leader_weight } - add_trait = flexible_leader - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = desert_warrior } } - modifier = { has_variable = desert_warrior_weight add = var:desert_warrior_weight } - add_trait = desert_warrior - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = jungle_stalker } } - modifier = { has_variable = jungle_stalker_weight add = var:jungle_stalker_weight } - add_trait = jungle_stalker - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = reaver } } - modifier = { has_variable = reaver_weight add = var:reaver_weight } - add_trait = reaver - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = reckless } } - modifier = { has_variable = reckless_weight add = var:reckless_weight } - add_trait = reckless - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = holy_warrior } } - modifier = { has_variable = holy_warrior_weight add = var:holy_warrior_weight } - modifier = { has_trait = zealous add = 5 } - modifier = { has_trait = cynical add = -5 } - add_trait = holy_warrior - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = open_terrain_expert } } - modifier = { has_variable = open_terrain_expert_weight add = var:open_terrain_expert_weight } - add_trait = open_terrain_expert - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = rough_terrain_expert } } - modifier = { has_variable = rough_terrain_expert_weight add = var:rough_terrain_expert_weight } - add_trait = rough_terrain_expert - } - 5 = { - trigger = { can_weigh_trait_trigger = { TRAIT = forest_fighter } } - modifier = { has_variable = forest_fighter_weight add = var:forest_fighter_weight } - add_trait = forest_fighter - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = cautious_leader } } - modifier = { has_variable = cautious_leader_weight add = var:cautious_leader_weight } - add_trait = cautious_leader - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = organizer } } - modifier = { has_variable = organizer_weight add = var:organizer_weight } - add_trait = organizer - } - 10 = { - trigger = { can_weigh_trait_trigger = { TRAIT = winter_soldier } } - modifier = { has_variable = winter_soldier_weight add = var:winter_soldier_weight } - add_trait = winter_soldier - } - } - } - add_character_flag = { - flag = study_commander_trait_cooldown - years = 10 - } - } - 100 = { - modifier = { - always = yes - add = study_commander_trait_success_chance_value_neg - } - custom_tooltip = mpo_decisions_events.0204.a_fail - send_interface_toast = { - title = mpo_decisions_events.0204.a_fail - type = event_toast_effect_bad - left_icon = root - custom_tooltip = mpo_decisions_events.0204.a_fail_desc - } - add_character_flag = { - flag = study_commander_trait_cooldown - years = 5 - } - } - } - } - - after = { - if = { - limit = { - NOT = { has_variable = study_commander_trait_tally } - } - set_variable = { - name = study_commander_trait_tally - value = 0 - } - } - change_variable = { - name = study_commander_trait_tally - add = 1 - } - if = { - limit = { - number_of_commander_traits = commander_trait_limit - } - remove_variable = study_commander_trait_tally - } - # Remove vars - remove_variable = winter_soldier_weight - remove_variable = organizer_weight - remove_variable = cautious_leader_weight - remove_variable = forest_fighter_weight - remove_variable = rough_terrain_expert_weight - remove_variable = open_terrain_expert_weight - remove_variable = holy_warrior_weight - remove_variable = reckless_weight - remove_variable = reaver_weight - remove_variable = jungle_stalker_weight - remove_variable = desert_warrior_weight - remove_variable = flexible_leader_weight - remove_variable = forder_weight - remove_variable = unyielding_defender_weight - remove_variable = aggressive_attacker_weight - remove_variable = military_engineer_weight - remove_variable = logistician_weight - remove_variable = study_commander_trait_success_chance_var - remove_character_flag = is_learning_commander_trait - } -} - -#Fertility Dance event -mpo_decisions_events.0300 = { - type = character_event - title = mpo_decisions_events.0300.t - desc = mpo_decisions_events.0300.desc - theme = nomads - override_background = { reference = temple } - - left_portrait = { - character = root - animation = prayer - } - - right_portrait = { - character = scope:shaman - animation = personality_zealous - } - - immediate = { - court_position:court_astrologer_court_position = { save_scope_as = shaman } - } - - # Regular option - option = { - name = mpo_decisions_events.0300.a - if = { - limit = { - scope:fertility_county = { county_fertility >= 90 } - } - scope:fertility_county = { - change_county_fertility = fertility_dance_bonus_value - } - } - else = { - scope:fertility_county = { - add_county_modifier = { - modifier = mpo_fertility_dance_county_modifier - years = 5 - } - } - } - if = { - limit = { - domicile ?= { - has_domicile_parameter = nomad_yurt_improved_fertility_dance - } - } - scope:fertility_county = { - every_neighboring_county = { - limit = { - OR = { - holder = root - holder = { - government_has_flag = government_is_herder - } - } - } - add_county_modifier = { - modifier = mpo_fertility_dance_county_modifier - years = 2 - } - } - } - } - - ai_chance = { - base = 50 - } - } -} - -# Pax Mongolica event -mpo_decisions_events.0400 = { - type = character_event - title = mpo_decisions_events.0400.t - desc = mpo_decisions_events.0400.desc - theme = nomads - override_background = { reference = mpo_city_steppe } - - left_portrait = { - character = root - animation = horse_archer_idle - camera = camera_event_horse_left - } - - right_portrait = { - character = scope:courtier - animation = obsequious_bow - } - - immediate = { - if = { - limit = { - any_courtier = { - is_available_ai_adult = yes - } - } - ordered_courtier = { - limit = { - is_available_ai_adult = yes - } - order_by = stewardship - save_scope_as = courtier - } - } - else = { - create_character = { - location = root.capital_province - template = merchant_template - culture = root.location.culture - faith = root.location.faith - save_scope_as = merchant - } - } - } - - # Happy day - option = { - name = mpo_decisions_events.0400.a - add_character_modifier = { - modifier = pax_mongolica_ruler_modifier # Forever - } - custom_tooltip = pax_mongolica_every_county_in_steppe_tt - every_realm_county = { - limit = { - is_landless_type_title = no - any_county_situation = { this = situation:the_great_steppe } - holder.dynasty = root.dynasty - } - random_county_province = { - limit = { has_holding = no } - set_holding_type = city_holding - } - } - culture = { - if = { - limit = { - NOT = { has_innovation = innovation_city_planning } - } - add_innovation = innovation_city_planning - } - else_if = { - limit = { - NOT = { has_innovation = innovation_development_01 } - } - add_innovation = innovation_development_01 - } - else = { - add_random_innovation = culture_group_civic - } - } - - ai_chance = { - base = 50 - } - } -} - -# Desperate Stance event -mpo_decisions_events.0500 = { - type = character_event - title = mpo_decisions_events.0500.t - desc = mpo_decisions_events.0500.desc - theme = nomads - override_background = { reference = mpo_campfire_steppe } - - left_portrait = { - character = root - animation = worry - } - - right_portrait = { - character = scope:courtier - animation = beg - } - - immediate = { - if = { - limit = { - any_spouse = { count >= 1 } - } - random_spouse = { - save_scope_as = courtier - } - } - else_if = { - limit = { - any_child = { count >= 1 } - } - random_child = { - save_scope_as = courtier - } - } - else_if = { - limit = { - any_courtier_or_guest = { count >= 1 } - } - random_courtier_or_guest = { - limit = { is_available_ai_adult = yes } - save_scope_as = courtier - } - } - else = { - create_character = { - location = root.location - dynasty = none - culture = root.location.culture - faith = root.location.faith - gender_female_chance = 50 - template = peasant_character - save_scope_as = courtier - } - } - hidden_effect = { - scope:courtier = { - change_current_weight = -50 - } - } - } - - # Let's get out of here - option = { - name = mpo_decisions_events.0500.a - mpo_decisions_events_0500_effect = yes - ai_chance = { - base = 100 - } - } -} - -# Invite Stargazer -scripted_trigger mpo_decisions_events_0070_basic_requirements_trigger = { - is_adult = yes - is_imprisoned = no - is_alive = yes # Because apparently there can be dead characters in the pool (remove when fixed) - is_claimant = no # We don't want recruiting physicians to be a cheap way of getting claimants - learning >= low_skill_rating -} - -scripted_trigger mpo_decisions_events_0070_low_skill_trigger = { - mpo_decisions_events_0070_basic_requirements_trigger = yes - #Empire/kingdom - trigger_if = { - limit = { - root = { highest_held_title_tier >= tier_kingdom } - } - learning <= high_skill_rating - learning >= mediocre_skill_rating # 8 - } - #Duchy/county - trigger_else = { - learning <= decent_skill_rating - learning >= low_skill_rating # 5 - } -} - -scripted_trigger mpo_decisions_events_0070_high_skill_trigger = { - mpo_decisions_events_0070_basic_requirements_trigger = yes - #Empire/kingdom - trigger_if = { - limit = { - root = { highest_held_title_tier >= tier_kingdom } - } - learning <= extremely_high_skill_rating - learning >= decent_skill_rating # 12 - } - #Duchy/county - trigger_else = { - learning <= high_skill_rating - learning >= medium_skill_rating # 10 - } -} -mpo_decisions_events.0070 = { - type = character_event - title = mpo_decisions_events.0070.t - desc = mpo_decisions_events.0070.desc - theme = nomads - left_portrait = { - character = scope:great_court_astrologer_option - animation = holding_staff - camera = camera_event_left_forward - } - right_portrait = { - character = scope:good_court_astrologer_option - animation = personality_zealous - camera = camera_event_right_forward - } - override_background = { - reference = mpo_temple_steppe - } - trigger = { - exists = capital_province - } - immediate = { - # Good Character - if = { # check for a GOOD character in the pool - limit = { - any_pool_character = { - province = root.capital_province - mpo_decisions_events_0070_low_skill_trigger = yes - can_be_employed_as = court_astrologer_court_position - } - } - random_pool_character = { - province = root.capital_province - limit = { - mpo_decisions_events_0070_low_skill_trigger = yes - can_be_employed_as = court_astrologer_court_position - } - save_scope_as = good_court_astrologer_option - } - } - else = { # otherwise create one - create_character = { - location = root.capital_province - gender_female_chance = root_faith_clergy_gender_female_chance - template_character = root - random_traits = yes - random_traits_list = { - count = 1 - education_learning_1 = {} - education_learning_2 = {} - } - age = { 18 50 } - learning = { - min_template_medium_skill - max_template_decent_skill - } - save_scope_as = good_court_astrologer_option - } - hidden_effect = { - scope:good_court_astrologer_option = { - save_scope_as = goodly_created - } - } - } - # Great Character - if = { # check for a GREAT character in the pool - limit = { - any_pool_character = { - province = root.capital_province - mpo_decisions_events_0070_high_skill_trigger = yes - NOT = { this = scope:good_court_astrologer_option } - can_be_employed_as = court_astrologer_court_position - } - } - ordered_pool_character = { - order_by = { - # Ok, first we group by aptitude. - value = "aptitude(court_astrologer_court_position)" - # Then we want to use learning as a tiebreaker... - ## ... so make it a decimal of aptitude... - multiply = 100 - ## ... and _then_ add it. - add = learning - } - province = root.capital_province - limit = { - mpo_decisions_events_0070_high_skill_trigger = yes - NOT = { this = scope:good_court_astrologer_option } - can_be_employed_as = court_astrologer_court_position - } - save_scope_as = great_court_astrologer_option - } - } - else = { # otherwise create one - create_character = { - location = root.capital_province - gender_female_chance = root_faith_clergy_gender_female_chance - template_character = root - random_traits = yes - random_traits_list = { - count = 1 - education_learning_2 = {} - education_learning_3 = {} - education_learning_4 = {} - } - age = { 18 50 } - learning = { - min_template_high_skill - max_template_high_skill - } - save_scope_as = great_court_astrologer_option - } - hidden_effect = { - scope:great_court_astrologer_option = { - save_scope_as = greatly_created - random_list = { - 100 = {} - 20 = { - add_trait = lifestyle_herbalist - } - 10 = { - add_trait = lifestyle_mystic - } - 10 = { - add_trait = lifestyle_mystic - add_trait_xp = { - trait = lifestyle_mystic - value = 25 - } - } - 5 = { - add_trait = lifestyle_mystic - add_trait_xp = { - trait = lifestyle_mystic - value = 50 - } - } - 5 = { - add_trait = lifestyle_mystic - add_trait_xp = { - trait = lifestyle_mystic - value = 75 - } - } - } - } - } - } - } - #Great option - option = { - name = mpo_decisions_events.0070.a - custom_tooltip = mpo_decisions_events.0070.a.aptitude - pay_short_term_gold = { - target = scope:great_court_astrologer_option - gold = high_skill_court_astrologer_cost - } - add_courtier = scope:great_court_astrologer_option - if = { - limit = { - can_employ_court_position_type = court_astrologer_court_position - } - appoint_court_position = { - recipient = scope:great_court_astrologer_option - court_position = court_astrologer_court_position - } - } - else_if = { - limit = { - employs_court_position = court_astrologer_court_position - } - random_court_position_holder = { - type = court_astrologer_court_position - save_scope_as = current_court_astrologer - } - replace_court_position = { - recipient = scope:great_court_astrologer_option - holder = scope:current_court_astrologer - court_position = court_astrologer_court_position - } - } - ai_chance = { - base = 100 - modifier = { - gold < high_skill_court_astrologer_cost - } - } - } - #Good option - option = { - name = mpo_decisions_events.0070.b - custom_tooltip = mpo_decisions_events.0070.b.aptitude - pay_short_term_gold = { - target = scope:good_court_astrologer_option - gold = low_skill_court_astrologer_cost - } - add_courtier = scope:good_court_astrologer_option - if = { - limit = { - can_employ_court_position_type = court_astrologer_court_position - } - appoint_court_position = { - recipient = scope:good_court_astrologer_option - court_position = court_astrologer_court_position - } - } - else_if = { - limit = { - employs_court_position = court_astrologer_court_position - } - random_court_position_holder = { - type = court_astrologer_court_position - save_scope_as = current_court_astrologer - } - replace_court_position = { - recipient = scope:good_court_astrologer_option - holder = scope:current_court_astrologer - court_position = court_astrologer_court_position - } - } - } - #Nah - option = { - name = mpo_decisions_events.0070.c - } - after = { - if = { - limit = { - exists = scope:goodly_created - NOT = { - scope:goodly_created = { - is_courtier_of = root - } - } - } - scope:goodly_created = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - exists = scope:greatly_created - NOT = { - scope:greatly_created = { - is_courtier_of = root - } - } - } - scope:greatly_created = { - silent_disappearance_effect = yes - } - } - } -} - -mpo_decisions_events.0120 = { - type = character_event - title = mpo_decisions_events.0120.t - desc = { - desc = mpo_decisions_events.0120.desc.intro - first_valid = { - triggered_desc = { - trigger = { - var:previous_holder = flag:subject - } - desc = mpo_decisions_events.0120.desc.subject - } - } - } - - theme = nomads - left_portrait = { - character = root - animation = jockey_idle - camera = camera_event_horse_left - } - right_portrait = { - character = scope:herder - animation = obsequious_bow - } - lower_right_portrait = { - trigger = { exists = scope:nomad } - character = scope:nomad - } - - immediate = { - set_variable = adventurer_to_nomad_tributary_var - location.county.holder = { save_scope_as = herder } - if = { - limit = { - scope:herder = { - is_independent_ruler = yes - is_tributary = no - } - } - set_variable = { - name = previous_holder - value = flag:independent - } - } - else = { - set_variable = { - name = previous_holder - value = flag:subject - } - if = { - limit = { exists = scope:herder.suzerain } - scope:herder.suzerain = { save_scope_as = nomad } - } - else = { - scope:herder.liege = { save_scope_as = nomad } - } - } - } - - option = { # Become Tributary - name = mpo_decisions_events.0120.a - trigger = { - var:previous_holder = flag:subject - NOT = { is_tributary_of = scope:nomad } # If you are already a Tributary of overlord - } - start_tributary_interaction_effect = { - TRIBUTARY = this - SUZERAIN = scope:nomad - } - - stress_impact = { - ambitious = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 0 - } - ai_value_modifier = { - ai_boldness = -0.5 - } - } - } - - option = { # Refuse to become Tributary - name = mpo_decisions_events.0120.b - trigger = { - var:previous_holder = flag:subject - NOT = { is_tributary_of = scope:nomad } # If you are already a Tributary of overlord - } - add_prestige_level = -1 - scope:nomad = { - add_opinion = { - target = root - modifier = angry_opinion - opinion = -50 - } - } - - stress_impact = { - craven = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - } - } - - option = { # Wait, join our court - name = mpo_decisions_events.0120.c - trigger = { - var:previous_holder = flag:independent - } - add_courtier = scope:herder - - stress_impact = { - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = callous - factor = 0 - } - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - option = { # We'll take it from here - name = mpo_decisions_events.0120.d - trigger = { - var:previous_holder = flag:independent - } - - stress_impact = { - compassionate = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = compassionate - factor = 0 - } - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - after = { - adopt_nomadic_ways_decision_event_effect = yes - remove_variable = previous_holder - remove_variable = previous_provisions - remove_variable = adventurer_to_nomad_tributary_var - } -} - -# Invite Siege Engineer -scripted_trigger invite_siege_engineer_requirements = { - can_be_employed_as = siege_engineer_court_position - is_adult = yes - is_imprisoned = no - is_alive = yes # Because apparently there can be dead characters in the pool (remove when fixed) - is_claimant = no # We don't want recruiting physicians to be a cheap way of getting claimants - "aptitude(siege_engineer_court_position)" = $APTITUDE$ -} - -scripted_effect invite_siege_engineer_find_example = { - if = { # check for a GOOD character in the pool - limit = { - any_pool_character = { - province = root.capital_province - invite_siege_engineer_requirements = { APTITUDE = $APTITUDE$ } - } - } - random_pool_character = { - province = root.capital_province - limit = { - invite_siege_engineer_requirements = { APTITUDE = $APTITUDE$ } - } - save_scope_as = $LEVEL$_siege_engineer_option - } - } - else = { # otherwise create one - random_independent_ruler = { - weight = { - modifier = { - factor = 100 - culture = { - has_same_culture_heritage = root.culture - } - } - modifier = { - factor = 100 - faith.religion = root.faith.religion - } - modifier = { - factor = 1000 - character_is_land_realm_neighbor = root.top_liege - } - } - limit = { - is_landed = yes - NOR = { - government_has_flag = government_is_tribal - government_has_flag = government_is_nomadic - government_has_flag = government_is_herder - } - } - save_scope_as = target_character - } - create_character = { - location = root.capital_province - gender_female_chance = root_soldier_female_chance - template_character = root - random_traits = yes - culture = scope:target_character.culture - faith = scope:target_character.faith - random_traits_list = { - count = 1 - education_learning_$EDUCATION_1$ = {} - education_learning_$EDUCATION_2$ = {} - } - age = { 18 50 } - learning = { - min_template_$MAIN_SKILL_MIN$_skill - max_template_$MAIN_SKILL_MAX$_skill - } - martial = { - min_template_$OTHER_SKILL_MIN$_skill - max_template_$OTHER_SKILL_MAX$_skill - } - stewardship = { - min_template_$OTHER_SKILL_MIN$_skill - max_template_$OTHER_SKILL_MAX$_skill - } - save_scope_as = $LEVEL$_siege_engineer_option - after_creation = { - save_scope_as = $LEVEL$ly_created - add_trait = military_engineer - add_trait_xp = { - trait = military_engineer - value = { - integer_range = { - min = $TRAIT_XP_MIN$ - max = $TRAIT_XP_MAX$ - } - } - } - } - } - } -} - -scripted_effect invite_siege_engineer_appointment = { - pay_short_term_gold = { - target = scope:$SCOPE$_siege_engineer_option - gold = $LEVEL$_skill_siege_engineer_cost - } - add_courtier = scope:$SCOPE$_siege_engineer_option - if = { - limit = { - NOT = { employs_court_position = siege_engineer_court_position } - } - appoint_court_position = { - recipient = scope:$SCOPE$_siege_engineer_option - court_position = siege_engineer_court_position - } - } - else_if = { - limit = { - employs_court_position = siege_engineer_court_position - } - random_court_position_holder = { - type = siege_engineer_court_position - save_scope_as = current_siege_engineer - } - replace_court_position = { - recipient = scope:$SCOPE$_siege_engineer_option - holder = scope:current_siege_engineer - court_position = siege_engineer_court_position - } - } - hidden_effect = { - scope:$SCOPE$_siege_engineer_option = { - add_opinion = { - modifier = grateful_opinion - target = root - opinion = 25 - } - } - } -} - -mpo_decisions_events.0080 = { - type = character_event - title = mpo_decisions_events.0080.t - desc = mpo_decisions_events.0080.desc - theme = nomads - - left_portrait = { - character = scope:great_siege_engineer_option - animation = thinking - } - - right_portrait = { - character = scope:good_siege_engineer_option - animation = storyteller - } - - override_background = { - reference = mpo_camp_steppe - } - - immediate = { - # Good Character - invite_siege_engineer_find_example = { - APTITUDE = 4 - LEVEL = good - EDUCATION_1 = 1 - EDUCATION_2 = 2 - MAIN_SKILL_MIN = average - MAIN_SKILL_MAX = medium - OTHER_SKILL_MIN = low - OTHER_SKILL_MAX = low - TRAIT_XP_MIN = 5 - TRAIT_XP_MAX = 25 - } - # Great Character - invite_siege_engineer_find_example = { - APTITUDE = 5 - LEVEL = great - EDUCATION_1 = 3 - EDUCATION_2 = 4 - MAIN_SKILL_MIN = decent - MAIN_SKILL_MAX = decent - OTHER_SKILL_MIN = average - OTHER_SKILL_MAX = average - TRAIT_XP_MIN = 33 - TRAIT_XP_MAX = 66 - } - - if = { - limit = { - exists = scope:good_siege_engineer_option - exists = scope:great_siege_engineer_option - "scope:good_siege_engineer_option.aptitude(siege_engineer_court_position)" > "scope:great_siege_engineer_option.aptitude(siege_engineer_court_position)" - } - scope:great_siege_engineer_option = { save_scope_as = temp_scope } - scope:good_siege_engineer_option = { save_scope_as = great_siege_engineer_option } - scope:temp_scope = { save_scope_as = good_siege_engineer_option } - } - } - #Great option - option = { - name = mpo_decisions_events.0080.a - custom_tooltip = mpo_decisions_events.0080.a.aptitude - invite_siege_engineer_appointment = { - SCOPE = great - LEVEL = high - } - ai_chance = { - base = 100 - modifier = { - gold < high_skill_court_astrologer_cost - } - } - } - #Good option - option = { - name = mpo_decisions_events.0080.b - custom_tooltip = mpo_decisions_events.0080.b.aptitude - invite_siege_engineer_appointment = { - SCOPE = good - LEVEL = low - } - } - #Nah - option = { - name = mpo_decisions_events.0080.c - } - after = { - if = { - limit = { - exists = scope:goodly_created - NOT = { - scope:goodly_created = { - is_courtier_of = root - } - } - } - scope:goodly_created = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - exists = scope:greatly_created - NOT = { - scope:greatly_created = { - is_courtier_of = root - } - } - } - scope:greatly_created = { - silent_disappearance_effect = yes - } - } - } -} - -# Invite Foreign Emissary -scripted_trigger invite_foreign_emissary_requirements = { - can_be_employed_as = foreign_emissary_court_position - is_adult = yes - is_imprisoned = no - is_alive = yes # Because apparently there can be dead characters in the pool (remove when fixed) - is_claimant = no # We don't want recruiting physicians to be a cheap way of getting claimants - "aptitude(foreign_emissary_court_position)" = $APTITUDE$ -} - -scripted_effect invite_foreign_emissary_find_example = { - if = { # check for a GOOD character in the pool - limit = { - any_pool_character = { - province = root.capital_province - invite_foreign_emissary_requirements = { APTITUDE = $APTITUDE$ } - } - } - random_pool_character = { - province = root.capital_province - limit = { - invite_foreign_emissary_requirements = { APTITUDE = $APTITUDE$ } - } - save_scope_as = $LEVEL$_foreign_emissary_option - } - } - else = { # otherwise create one - random_independent_ruler = { - weight = { - modifier = { - factor = 1000 - government_has_flag = government_is_republic - } - } - limit = { - is_landed = yes - NOR = { - government_has_flag = government_is_tribal - government_has_flag = government_is_nomadic - government_has_flag = government_is_herder - } - } - save_scope_as = target_character - } - create_character = { - location = root.capital_province - gender_female_chance = root_soldier_female_chance - template_character = root - random_traits = yes - culture = scope:target_character.culture - faith = scope:target_character.faith - random_traits_list = { - count = 1 - education_diplomacy_$EDUCATION_1$ = {} - education_diplomacy_$EDUCATION_2$ = {} - } - random_traits_list = { - count = 1 - diplomat = {} - lifestyle_reveler = {} - } - age = { 18 50 } - diplomacy = { - min_template_$MAIN_SKILL_MIN$_skill - max_template_$MAIN_SKILL_MAX$_skill - } - stewardship = { - min_template_$OTHER_SKILL_MIN$_skill - max_template_$OTHER_SKILL_MAX$_skill - } - save_scope_as = $LEVEL$_foreign_emissary_option - after_creation = { - save_scope_as = $LEVEL$ly_created - } - } - } -} - -scripted_effect invite_foreign_emissary_appointment = { - pay_short_term_gold = { - target = scope:$SCOPE$_foreign_emissary_option - gold = $LEVEL$_skill_foreign_emissary_cost - } - add_courtier = scope:$SCOPE$_foreign_emissary_option - if = { - limit = { - NOT = { employs_court_position = foreign_emissary_court_position } - } - appoint_court_position = { - recipient = scope:$SCOPE$_foreign_emissary_option - court_position = foreign_emissary_court_position - } - } - else_if = { - limit = { - employs_court_position = foreign_emissary_court_position - } - random_court_position_holder = { - type = foreign_emissary_court_position - save_scope_as = current_foreign_emissary - } - replace_court_position = { - recipient = scope:$SCOPE$_foreign_emissary_option - holder = scope:current_foreign_emissary - court_position = foreign_emissary_court_position - } - } - hidden_effect = { - scope:$SCOPE$_foreign_emissary_option = { - add_opinion = { - modifier = grateful_opinion - target = root - opinion = 25 - } - } - } -} - -mpo_decisions_events.0090 = { - type = character_event - title = mpo_decisions_events.0090.t - desc = mpo_decisions_events.0090.desc - theme = nomads - - left_portrait = { - character = scope:great_foreign_emissary_option - animation = debating - } - - right_portrait = { - character = scope:good_foreign_emissary_option - animation = thinking - } - - override_background = { - reference = mpo_tent_interior_mongol - } - - immediate = { - ordered_courtier_or_guest = { - order_by = diplomacy - limit = { - age >= 10 - } - save_scope_as = courtier - } - # Good Character - invite_foreign_emissary_find_example = { - APTITUDE = 4 - LEVEL = good - EDUCATION_1 = 1 - EDUCATION_2 = 2 - MAIN_SKILL_MIN = average - MAIN_SKILL_MAX = medium - OTHER_SKILL_MIN = low - OTHER_SKILL_MAX = low - } - # Great Character - invite_foreign_emissary_find_example = { - APTITUDE = 5 - LEVEL = great - EDUCATION_1 = 3 - EDUCATION_2 = 4 - MAIN_SKILL_MIN = high - MAIN_SKILL_MAX = high - OTHER_SKILL_MIN = medium - OTHER_SKILL_MAX = medium - } - - if = { - limit = { - exists = scope:good_foreign_emissary_option - exists = scope:great_foreign_emissary_option - "scope:good_foreign_emissary_option.aptitude(foreign_emissary_court_position)" > "scope:great_foreign_emissary_option.aptitude(foreign_emissary_court_position)" - } - scope:great_foreign_emissary_option = { save_scope_as = temp_scope } - scope:good_foreign_emissary_option = { save_scope_as = great_foreign_emissary_option } - scope:temp_scope = { save_scope_as = good_foreign_emissary_option } - } - } - #Great option - option = { - name = mpo_decisions_events.0090.a - custom_tooltip = mpo_decisions_events.0090.a.aptitude - invite_foreign_emissary_appointment = { - SCOPE = great - LEVEL = high - } - ai_chance = { - base = 100 - modifier = { - gold < high_skill_court_astrologer_cost - } - } - } - #Good option - option = { - name = mpo_decisions_events.0090.b - custom_tooltip = mpo_decisions_events.0090.b.aptitude - invite_foreign_emissary_appointment = { - SCOPE = good - LEVEL = low - } - } - #Nah - option = { - name = mpo_decisions_events.0090.c - } - after = { - if = { - limit = { - exists = scope:goodly_created - NOT = { - scope:goodly_created = { - is_courtier_of = root - } - } - } - scope:goodly_created = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - exists = scope:greatly_created - NOT = { - scope:greatly_created = { - is_courtier_of = root - } - } - } - scope:greatly_created = { - silent_disappearance_effect = yes - } - } - } -} diff --git a/events/dlc/mpo/mpo_events_anna.txt b/events/dlc/mpo/mpo_events_anna.txt deleted file mode 100644 index d261835a7..000000000 --- a/events/dlc/mpo/mpo_events_anna.txt +++ /dev/null @@ -1,988 +0,0 @@ -namespace = mpo_events_anna -################################################## -# Anna's Events for MPO - -#Train Them Young - teach a child how to ride a horse -mpo_events_anna.0001 = { - type = character_event - title = mpo_events_anna.0001.t - desc = mpo_events_anna.0001.desc - theme = nomads - left_portrait = { - character = scope:pushy_adult - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:child - animation = clutching_ball - } - cooldown = { years = 20 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - any_child = { - is_available_child = yes - location = root.location - age >= 5 - } - any_courtier = { - is_available_healthy_ai_adult = yes - } - } - - immediate = { - random_child = { - limit = { - is_available_child = yes - location = root.location - age >= 5 - } - save_scope_as = child - } - - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = pushy_adult - } - } - - #Put the child on the horse - option = { - name = mpo_events_anna.0001.a - flavor = mpo_events_anna.0001.a.tt - random_list = { - 70 = { - desc = mpo_events_anna.0001.a.toast.good - send_interface_toast = { - type = event_toast_effect_good - title = mpo_events_anna.0001.a.toast.good - left_icon = scope:child - right_icon = root - scope:child = { add_learning_lifestyle_xp = medium_lifestyle_experience } - } - } - 20 = { - desc = mpo_events_anna.0001.a.toast.neutral - send_interface_toast = { - type = event_toast_effect_neutral - title = mpo_events_anna.0001.a.toast.neutral - left_icon = scope:child - right_icon = root - scope:child = { add_stress = miniscule_stress_gain } - } - } - 10 = { - desc = mpo_events_anna.0001.a.toast.bad - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_events_anna.0001.a.toast.bad - left_icon = scope:child - right_icon = root - scope:child = { increase_wounds_effect = { REASON = fall } - } - } - } - } - - reverse_add_opinion = { - target = scope:pushy_adult - modifier = respect_opinion - opinion = 10 - } - - stress_impact = { - craven = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - brave = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - } - } - - #Ride together with the child on the horse - option = { - name = mpo_events_anna.0001.b - - reverse_add_opinion = { - target = scope:child - modifier = kindness_opinion - opinion = 20 - } - - add_prestige = minor_prestige_loss - - stress_impact = { - callous = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = 1 - } - } - } - - #Refuse their request - option = { - name = mpo_events_anna.0001.c - - reverse_add_opinion = { - target = scope:pushy_adult - modifier = disrespect_opinion - opinion = -10 - } - - stress_impact = { - craven = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - brave = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = -1 - } - } - } -} - -#Stories from the Past - choose a story to be told -mpo_events_anna.0005 = { - type = character_event - title = mpo_events_anna.0005.t - desc = mpo_events_anna.0005.desc - theme = nomads - left_portrait = { - character = root - animation = ecstasy - } - right_portrait = { - character = scope:storyteller - animation = storyteller - } - override_background = mpo_campfire_steppe - - cooldown = { years = 20 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_child = yes - age >= 5 - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - any_courtier = { - is_available_healthy_ai_adult = yes - } - } - - immediate = { - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = storyteller - } - } - - #Fantastical creatures - option = { - name = mpo_events_anna.0005.a - flavor = mpo_events_anna.0005.a.tt - - add_character_modifier = { - modifier = mpo_storyteller_fantastical_creatures_modifier - years = 5 - } - - stress_impact = { - eccentric = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_energy = 1 - } - } - } - - #Humorous tales - option = { - name = mpo_events_anna.0005.b - flavor = mpo_events_anna.0005.b.tt - - add_character_modifier = { - modifier = mpo_storyteller_humorous_tales_modifier - years = 5 - } - - add_stress = minor_stress_loss - - stress_impact = { - gregarious = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - #Heroic triumphs - option = { - name = mpo_events_anna.0005.c - flavor = mpo_events_anna.0005.c.tt - - add_character_modifier = { - modifier = mpo_storyteller_heroic_triumphs_modifier - years = 5 - } - - stress_impact = { - wrathful = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - } - } - } -} - -#Whistle Like an Arrow - being taught how to whistle as a child -mpo_events_anna.0010 = { - type = character_event - title = mpo_events_anna.0010.t - desc = mpo_events_anna.0010.desc - theme = nomads - left_portrait = { - character = root - animation = shame - } - right_portrait = { - character = scope:whistler - animation = storyteller - } - - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_child = yes - age >= 5 - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - OR = { - any_relation = { - type = guardian - location = root.location - is_available = yes - } - any_parent = { - location = root.location - is_available = yes - } - } - } - - immediate = { - if = { - limit = { - any_relation = { - type = guardian - location = root.location - is_available = yes - } - } - random_relation = { - type = guardian - limit = { - location = root.location - is_available = yes - } - save_scope_as = whistler - } - } - else_if = { - limit = { - any_parent = { - location = root.location - is_available = yes - } - } - random_parent = { - limit = { - location = root.location - is_available = yes - } - save_scope_as = whistler - } - } - } - - option = { - name = mpo_events_anna.0010.a - custom_tooltip = mpo_events_anna.0010.a.tt.learning - duel = { - skill = learning - value = mediocre_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - #This takes the whistlers learning skill into account, using their skills to teach the child of how to whistle - multiplier = { add = scope:whistler.learning multiply = 0.5 } - min = -39 - } - desc = mpo_events_anna.0010.a.tt.success - send_interface_toast = { - type = event_toast_effect_good - title = mpo_events_anna.0010.a.tt.success - left_icon = root - right_icon = scope:whistler - add_learning_lifestyle_xp = medium_lifestyle_experience - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = { add = scope:whistler.learning multiply = -0.5 } - min = -39 - } - desc = mpo_events_anna.0010.a.tt.failure - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_events_anna.0010.a.tt.failure - left_icon = root - right_icon = scope:whistler - add_character_modifier = { - modifier = mpo_whistling_is_difficult_modifier - years = 5 - } - } - } - } - - stress_impact = { - pensive = minor_stress_impact_loss - bossy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_sociability = 1 - } - } - } - - option = { - name = mpo_events_anna.0010.b - - add_prestige = miniscule_prestige_gain - - reverse_add_opinion = { - target = scope:whistler - modifier = disappointed_opinion - opinion = -5 - } - - stress_impact = { - bossy = minor_stress_impact_loss - pensive = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_sociability = -1 - } - } - } -} - -#A Morsel of Meat - choose the fate of a fawn stuck in a trap -mpo_events_anna.0015 = { - type = character_event - title = mpo_events_anna.0015.t - desc = mpo_events_anna.0015.desc - theme = travel - left_portrait = { - character = root - animation = personality_dishonorable - } - right_portrait = { - character = scope:sceptic - animation = personality_cynical - } - - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_landless_adventurer - NOT = { - culture = { has_cultural_tradition = tradition_vegetarianism } - } - is_available_travelling = yes - domicile = { - provisions <= medium_provisions_value - } - current_travel_plan = { - any_entourage_character = { - is_available_allow_travelling = yes - } - } - } - - immediate = { - current_travel_plan = { - random_entourage_character = { - limit = { - is_available_allow_travelling = yes - } - save_scope_as = sceptic - } - } - } - - #Steal the prey, kill it for provisions - option = { - name = mpo_events_anna.0015.a - - domicile = { - change_provisions = minor_provisions_gain - } - - add_prestige = minor_prestige_loss - - stress_impact = { - humble = minor_stress_impact_gain - arrogant = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_greed = 1 - } - } - } - - #Convince the entourage that it is your trap you laid out - option = { - name = mpo_events_anna.0015.b - - duel = { - skill = intrigue - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - domicile = { - change_provisions = minor_provisions_gain - } - add_character_modifier = { - modifier = mpo_sufficient_liar_modifier - years = 5 - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - add_prestige = minor_prestige_loss - add_stress = medium_stress_gain - } - } - - stress_impact = { - honest = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_greed = 1 - ai_boldness = 1 - } - } - } - - #Release the animal - option = { - name = mpo_events_anna.0015.c - - add_character_modifier = { - modifier = mpo_trapped_fawn_modifier - years = 5 - } - - add_prestige = miniscule_prestige_loss - - stress_impact = { - callous = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = 1 - } - } - } - - #It isn't your trap, leave it be - option = { - name = mpo_events_anna.0015.d - - add_prestige = miniscule_prestige_gain - - stress_impact = { - arbitrary = minor_stress_impact_gain - just = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_rationality = 1 - } - } - } -} - -#Race Against Time - encounter a wounded messenger -mpo_events_anna.0020 = { - type = character_event - title = mpo_events_anna.0020.t - desc = mpo_events_anna.0020.desc - theme = travel - left_portrait = { - character = root - animation = disbelief - } - right_portrait = { - character = scope:messenger - animation = loss_1 - } - - cooldown = { years = 20 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - is_independent_ruler = no - is_available_travelling = yes - } - - immediate = { - create_character = { - template = wounded_messenger_character_template - location = root.location - culture = this.culture - faith = this.faith - save_scope_as = messenger - - after_creation = { - scope:messenger = { - increase_wounds_effect = { REASON = battle } - } - } - } - - #This is to make sure that the Trait Wounded is being cured by the root (player) in option A - save_scope_as = physician - } - - #Treat the messengers wounds - option = { - name = mpo_events_anna.0020.a - - current_travel_plan = { - delay_travel_plan = { days = 14 } - } - - custom_tooltip = mpo_events_anna.0020.war_impact.tt - - hidden_effect = { - liege = { - add_character_modifier = { - modifier = mpo_messenger_negative_liege_modifier - years = 10 - } - } - } - - duel = { - skill = learning - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - current_travel_plan = { - any_entourage_character = { - has_court_position = court_physician_court_position - } - } - add = 10 - } - modifier = { - root = { - has_trait = lifestyle_herbalist - } - add = 10 - } - - send_interface_toast = { - type = event_toast_effect_good - title = mpo_events_anna.0020.a.toast.good - left_icon = scope:messenger - right_icon = root - scope:messenger = { - wound_treatment_results_effect = { TREATMENT = safe OUTCOME = success } - } - current_travel_plan = { add_companion = scope:messenger } - - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:messenger - opinion = 10 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_events_anna.0020.a.toast.bad - left_icon = scope:messenger - right_icon = root - } - scope:messenger = { - death = { - death_reason = death_wounds - } - } - } - } - - stress_impact = { - cynical = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - - #Deliver the message - option = { - name = mpo_events_anna.0020.b - - current_travel_plan = { - delay_travel_plan = { days = 21 } - } - - scope:messenger = { - death = { - death_reason = death_wounds - } - } - - custom_tooltip = mpo_events_anna.0020.war_impact.tt - - duel = { - skill = prowess - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - any_owned_story = { - story_type = story_cycle_martial_lifestyle_warhorse - } - add = 10 - } - - send_interface_toast = { - type = event_toast_effect_good - title = mpo_events_anna.0020.b.toast.good - left_icon = root - - add_hook = { - target = liege - type = favor_hook - } - } - - hidden_effect = { - liege = { - add_character_modifier = { - modifier = mpo_messenger_positive_liege_modifier - years = 10 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_events_anna.0020.b.toast.bad - left_icon = root - hidden_effect = { - liege = { - add_character_modifier = { - modifier = mpo_messenger_negative_liege_modifier - years = 10 - } - } - } - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - diligent = minor_stress_impact_loss - craven = minor_stress_impact_gain - lazy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - - #How can they be trusted? - option = { - name = mpo_events_anna.0020.c - - flavor = mpo_events_anna.0020.c_flavor - - hidden_effect = { - liege = { - add_character_modifier = { - modifier = mpo_messenger_negative_liege_modifier - years = 10 - } - } - } - - add_gold = { 5 15 } - - scope:messenger = { - death = { - death_reason = death_wounds - } - } - - custom_tooltip = mpo_events_anna.0020.war_impact.tt - - current_travel_plan = { - every_entourage_character = { - limit = { - has_trait = trusting - } - add_opinion = { - modifier = cruelty_opinion - target = root - opinion = -10 - } - } - } - - stress_impact = { - trusting = minor_stress_impact_gain - paranoid = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } -} - -#Familiar Tunes - encounter with a performer -mpo_events_anna.0025 = { - type = character_event - title = mpo_events_anna.0025.t - desc = mpo_events_anna.0025.desc - theme = travel - left_portrait = { - character = root - animation = happiness - } - right_portrait = { - character = scope:throat_singer - animation = lute_active - } - - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - is_available_travelling = yes - } - - immediate = { - create_character = { - template = throat_singer_character_template - location = root.location - culture = this.culture - faith = this.faith - save_scope_as = throat_singer - } - } - - option = { - name = mpo_events_anna.0025.a - - duel = { - skill = learning - value = low_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = mpo_events_anna.0025.a.toast.success - send_interface_toast = { - type = event_toast_effect_good - title = mpo_events_anna.0025.a.toast.success - left_icon = root - right_icon = scope:throat_singer - add_character_modifier = { - modifier = mpo_inspiring_tunes_modifier - years = 5 - } - add_learning_lifestyle_xp = medium_lifestyle_experience - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = mpo_events_anna.0025.a.toast.failure - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_events_anna.0025.a.toast.failure - left_icon = root - right_icon = scope:throat_singer - add_prestige = miniscule_prestige_loss - } - } - } - - stress_impact = { - calm = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_energy = 1 - ai_sociability = 1 - } - } - } - - option = { - name = mpo_events_anna.0025.b - - add_stress = medium_stress_loss - - stress_impact = { - calm = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - ai_sociability = 1 - } - } - } - after = { - scope:throat_singer = { - silent_disappearance_ai_effect = yes - } - } -} diff --git a/events/dlc/mpo/mpo_events_ariana.txt b/events/dlc/mpo/mpo_events_ariana.txt deleted file mode 100644 index c23910055..000000000 --- a/events/dlc/mpo/mpo_events_ariana.txt +++ /dev/null @@ -1,4825 +0,0 @@ -namespace = mpo_events_ariana -################################################## -# Ariana's Events for MPO - -# Nest Sighting - You spot a nest, and decide if you would like to capture the eaglets in it -mpo_events_ariana.0001 = { - type = character_event - title = mpo_events_ariana.0001.t - desc = { - desc = mpo_events_ariana.0001.desc - first_valid = { - triggered_desc = { # Had an eagle before, and doesn't have one now - trigger = { - has_variable = had_eagle_story - NOT = { has_eagle_trigger = yes } - } - desc = mpo_events_ariana.0001.desc_had_story - } - triggered_desc = { # Has one now - trigger = { - has_eagle_trigger = yes - } - desc = mpo_events_ariana.0001.desc_has_eagle - } - desc = mpo_events_ariana.0001.desc_ending - } - } - - theme = nomads - - cooldown = { years = 10 } - - weight_multiplier = { - base = 1 - modifier = { - add = 10 - current_season_trigger = { SEASON = spring } - } - } - - left_portrait = { - character = root - animation = admiration - } - - trigger = { - has_mpo_dlc_trigger = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - is_available_adult = yes - NOT = { current_season_trigger = { SEASON = winter } } - } - - immediate = { - if = { - limit = { - is_ai = no # So AI don't spam add modifiers - } - if = { - limit = { # Your observant eagle helps you here - location.county = { NOT = { has_county_modifier = hunt_sighting_legendary_modifier } } - has_eagle_trigger = yes - var:eagle_personality_trait_2 ?= flag:observant - } - hunt_activity_deer_game_effect = { PROVINCE = root.location } - location.county = { - hunt_create_sighting_effect = { - TYPE = legendary - ANIMAL = root.var:animal_type - OWNER = root - } - } - } - else_if = { - limit = { - location.county = { NOT = { has_county_modifier = hunt_sighting_falconry_modifier } } - } - location.county = { - random_county_province = { - save_scope_as = falconry_province - } - hunt_activity_falconry_game_effect = { PROVINCE = scope:falconry_province } - hunt_create_sighting_effect = { - TYPE = falconry - ANIMAL = var:animal_type - OWNER = root - } - } - } - } - } - - - option = { # Standard capture method - name = mpo_events_ariana.0001.a - duel = { - skill = prowess - value = decent_skill_rating - desc = mpo_events_ariana.0001.a_tt - 70 = { - desc = mpo_events_ariana.0001.a_win - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -69 - } - modifier = { - factor = 1.2 - has_trait = lifestyle_hunter - } - save_scope_value_as = { - name = eagle_capture_method - value = flag:standard - } - hidden_effect = { - random = { - chance = 30 # Get both eaglets - add_character_flag = { - flag = mpo_events_ariana.0001.both_eaglets - days = 10 - } - } - } - show_as_tooltip = { - add_prestige = medium_prestige_gain - add_trait_xp = { - trait = trait:lifestyle_hunter - track = falconer - value = 10 - } - } - custom_tooltip = mpo_events_ariana.0001.a_win_desc - trigger_event = { - id = mpo_events_ariana.0002 - } - } - 30 = { - desc = travel_events_mpo.0001_lose - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - send_interface_toast = { - type = event_toast_effect_bad - title = travel_events_mpo.0001_lose - left_icon = root - add_prestige = minor_prestige_loss - random_list = { - 50 = { - show_chance = no - desc = mpo_events_ariana.0001.a_lose_ok - } - 50 = { - show_chance = no - desc = mpo_events_ariana.0001.a_lose_bad - change_trait_rank = { - trait = wounded - rank = 1 - max = 3 - } - } - } - - } - } - } - - ai_chance = { - base = 15 - ai_value_modifier = { - ai_energy = 0.7 - } - modifier = { - has_trait = lifestyle_hunter - add = 5 - } - modifier = { - has_trait = brave - add = 5 - } - modifier = { - has_trait = compassionate - add = 5 - } - } - } - - option = { # Lure the eaglets - name = mpo_events_ariana.0001.b - trigger = { - learning >= 10 - } - show_as_unavailable = { - always = yes - } - save_scope_value_as = { - name = eagle_capture_method - value = flag:lure - } - hidden_effect = { - random_list = { - 50 = { } - 30 = { # Get both eaglets - modifier = { add = learning } - add_character_flag = { - flag = mpo_events_ariana.0001.both_eaglets - days = 10 - } - } - } - } - show_as_tooltip = { - add_prestige = medium_prestige_gain - add_trait_xp = { - trait = lifestyle_hunter - track = falconer - value = 10 - } - } - custom_tooltip = mpo_events_ariana.0001.b_win_desc - - trigger_event = { - id = mpo_events_ariana.0002 - } - - ai_chance = { - base = 15 - ai_value_modifier = { - ai_rationality = 1 - } - modifier = { - has_trait = shrewd - factor = 1.3 - } - modifier = { - has_trait = lifestyle_hunter - add = 5 - } - modifier = { - has_trait = craven - add = 5 - } - } - } - - option = { # Observe them - name = mpo_events_ariana.0001.c - stress_impact = { - base = minor_stress_impact_loss - } - add_character_modifier = { - modifier = mpo_daydreaming_birds_modifier - years = 5 - } - - ai_chance = { - base = 10 - modifier = { - has_trait = compassionate - add = 5 - } - modifier = { - has_trait = calm - add = 5 - } - modifier = { - has_trait = content - add = 10 - } - } - } -} - -scripted_effect mpo_events_ariana_002_gift_effect = { - save_scope_as = target - root = { - send_interface_toast = { - type = event_toast_effect_good - title = court_ongoing.1030.d.success - left_icon = root - right_icon = scope:target - scope:target = { - save_scope_value_as = { - name = eagle_capture_method - value = flag:gift - } - start_eagle_story_cycle_effect = yes - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 10 - } - } - } - } -} - -# Nest Sighting follow up - You've captured the eaglets, now what? -mpo_events_ariana.0002 = { - type = character_event - title = mpo_events_ariana.0001.t - desc = { - desc = mpo_events_ariana.0002.desc_intro - first_valid = { # Describing the capture - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:standard - } - desc = mpo_events_ariana.0002.desc_standard - } - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:lure - } - desc = mpo_events_ariana.0002.desc_lure - } - } - first_valid = { # If the result is one or both - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:standard - has_character_flag = mpo_events_ariana.0001.both_eaglets - } - desc = mpo_events_ariana.0002.desc_both_standard - } - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:standard - } - desc = mpo_events_ariana.0002.desc_one_standard - } - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:lure - has_character_flag = mpo_events_ariana.0001.both_eaglets - } - desc = mpo_events_ariana.0002.desc_both_lure - } - triggered_desc = { - trigger = { - scope:eagle_capture_method = flag:lure - } - desc = mpo_events_ariana.0002.desc_one_lure - } - } - } - - theme = nomads - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - trigger = { - exists = scope:eagle_first_recipient - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - character = scope:eagle_first_recipient - animation = admiration - } - - lower_center_portrait = { - trigger = { - exists = scope:eagle_second_recipient - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - character = scope:eagle_second_recipient - } - - trigger = { - has_mpo_dlc_trigger = yes - exists = scope:eagle_capture_method - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - } - - immediate = { - add_prestige = medium_prestige_gain - if = { - limit = { - NOT = { - has_trait = lifestyle_hunter - } - } - add_trait = lifestyle_hunter - } - add_trait_xp = { - trait = lifestyle_hunter - track = falconer - value = 10 - } - - # Looking for possible recipients - # A romantic relation - if = { # Find your main spouse first if you have one - limit = { - exists = primary_spouse - primary_spouse = { - NOT = { has_eagle_trigger = yes } - } - } - primary_spouse = { save_scope_as = eagle_first_recipient } - } - else_if = { # Maybe a concubine instead - limit = { - any_consort = { - NOT = { has_eagle_trigger = yes } - } - } - random_consort = { - limit = { - NOT = { has_eagle_trigger = yes } - } - save_scope_as = eagle_first_recipient - } - } - else_if = { # Maybe a lover - limit = { - any_relation = { - type = lover - NOT = { has_eagle_trigger = yes } - } - } - random_relation = { - type = lover - limit = { - NOT = { has_eagle_trigger = yes } - } - save_scope_as = eagle_first_recipient - } - } - # Do I have a child or ward old enough to care for an eagle? - if = { - limit = { - any_child = { - age >= 13 - is_courtier_of = root - NOT = { has_eagle_trigger = yes } - } - } - random_child = { - limit = { - age >= 13 - is_courtier_of = root - NOT = { has_eagle_trigger = yes } - } - if = { - limit = { - exists = scope:eagle_first_recipient - } - save_scope_as = eagle_second_recipient - } - else = { - save_scope_as = eagle_first_recipient - } - } - } - else_if = { - limit = { - any_relation = { - type = ward - age >= 13 - NOT = { has_eagle_trigger = yes } - } - } - random_relation = { - type = ward - limit = { - age >= 13 - NOT = { has_eagle_trigger = yes } - } - if = { - limit = { - exists = scope:eagle_first_recipient - } - save_scope_as = eagle_second_recipient - } - else = { - save_scope_as = eagle_first_recipient - } - } - } - if = { - limit = { - NOT = { exists = scope:eagle_second_recipient } # If we already have a second recipient by now, we don't need to find another - } - if = { # Maybe a friend - limit = { - any_relation = { - type = friend - age >= 13 - NOT = { has_eagle_trigger = yes } - } - } - random_relation = { - type = friend - limit = { - age >= 13 - NOT = { has_eagle_trigger = yes } - } - if = { - limit = { - exists = scope:eagle_first_recipient - } - save_scope_as = eagle_second_recipient - } - else = { - save_scope_as = eagle_first_recipient - } - } - } - # Or a hunt guy? - if = { - limit = { - exists = court_position:master_of_hunt_court_position - } - court_position:master_of_hunt_court_position = { - if = { - limit = { - exists = scope:eagle_first_recipient - } - save_scope_as = eagle_second_recipient - } - else = { - save_scope_as = eagle_first_recipient - } - } - } - else_if = { - limit = { - exists = court_position:huntperson_camp_officer - } - court_position:huntperson_camp_officer = { - if = { - limit = { - exists = scope:eagle_first_recipient - } - save_scope_as = eagle_second_recipient - } - else = { - save_scope_as = eagle_first_recipient - } - } - } - } - } - - - option = { # Keep the one for yourself - name = mpo_events_ariana.0002.a - trigger = { - NOT = { has_character_flag = mpo_events_ariana.0001.both_eaglets } - NOT = { has_eagle_trigger = yes } # You don't have an eagle - } - start_eagle_story_cycle_effect = yes - - ai_chance = { - base = 200 - } - } - - option = { # Give the one to your first recipient - name = mpo_events_ariana.0002.b - trigger = { - exists = scope:eagle_first_recipient - NOT = { has_character_flag = mpo_events_ariana.0001.both_eaglets } - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - - scope:eagle_first_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - modifier = { # They already like you - add = 50 - scope:eagle_first_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_first_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_first_recipient - } - } - } - } - - option = { # Keep one for yourself, and give the other to your first recipient - name = mpo_events_ariana.0002.b_two - trigger = { - exists = scope:eagle_first_recipient - has_character_flag = mpo_events_ariana.0001.both_eaglets - NOT = { has_eagle_trigger = yes } # You don't have an eagle - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - start_eagle_story_cycle_effect = yes - scope:eagle_first_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - modifier = { # They already like you - add = 50 - scope:eagle_first_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_first_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_first_recipient - } - } - } - } - - option = { # Give the one to your second recipient - name = mpo_events_ariana.0002.c - trigger = { - exists = scope:eagle_second_recipient - NOT = { has_character_flag = mpo_events_ariana.0001.both_eaglets } - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - scope:eagle_second_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - modifier = { # They already like you - add = 50 - scope:eagle_second_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_second_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_second_recipient - } - } - } - } - - option = { # Keep one for yourself, and give the other to your second recipient - name = mpo_events_ariana.0002.c_two - trigger = { - exists = scope:eagle_second_recipient - has_character_flag = mpo_events_ariana.0001.both_eaglets - NOT = { has_eagle_trigger = yes } # You don't have an eagle - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - start_eagle_story_cycle_effect = yes - scope:eagle_second_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - modifier = { # They already like you - add = 50 - scope:eagle_second_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_second_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_second_recipient - } - } - } - } - - option = { # Give to each recipient - name = mpo_events_ariana.0002.d - trigger = { - exists = scope:eagle_first_recipient - exists = scope:eagle_second_recipient - has_character_flag = mpo_events_ariana.0001.both_eaglets - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - scope:eagle_first_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - scope:eagle_second_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 2 - ai_honor = 1 - } - modifier = { - add = 50 - scope:eagle_first_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - scope:eagle_second_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_first_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_first_recipient - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_second_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_second_recipient - } - } - } - } - - option = { # Keep one, sell one - name = mpo_events_ariana.0002.e - trigger = { - has_character_flag = mpo_events_ariana.0001.both_eaglets - NOT = { has_eagle_trigger = yes } # You don't have an eagle - } - send_interface_toast = { - title = mpo_events_ariana.0002.e_tt - type = event_toast_effect_good - left_icon = root - start_eagle_story_cycle_effect = yes - add_short_term_gold = medium_gold_value - if = { - limit = { - exists = scope:eagle_first_recipient - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_first_recipient - modifier = disappointed_opinion - opinion = -10 - } - } - if = { - limit = { - exists = scope:eagle_second_recipient - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_second_recipient - modifier = disappointed_opinion - opinion = -10 - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - modifier = { - add = 50 - scope:eagle_first_recipient ?= { - opinion = { - target = root - value <= low_positive_opinion - } - } - } - modifier = { - add = 50 - scope:eagle_second_recipient ?= { - opinion = { - target = root - value <= low_positive_opinion - } - } - } - } - } - - option = { # Give one to first recipient, sell one (only if you have one already) - name = mpo_events_ariana.0002.e_sell_first - trigger = { - has_character_flag = mpo_events_ariana.0001.both_eaglets - exists = scope:eagle_first_recipient - has_eagle_trigger = yes - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - scope:eagle_first_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - custom_tooltip = mpo_events_ariana.0002.e_tt - add_short_term_gold = medium_gold_value - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = 0.8 - } - modifier = { - add = 50 - scope:eagle_first_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_first_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_first_recipient - } - } - } - } - - option = { # Give one to second recipient, sell one (only if you have one already) - name = mpo_events_ariana.0002.e_sell_second - trigger = { - has_character_flag = mpo_events_ariana.0001.both_eaglets - exists = scope:eagle_second_recipient - has_eagle_trigger = yes - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - scope:eagle_second_recipient = { - save_scope_as = target - mpo_events_ariana_002_gift_effect = yes - } - custom_tooltip = mpo_events_ariana.0002.e_tt - add_short_term_gold = medium_gold_value - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = 0.8 - } - modifier = { - add = 50 - scope:eagle_second_recipient = { - opinion = { - target = root - value >= low_positive_opinion - } - } - } - modifier = { - add = 50 - any_relation = { - type = lover - this = scope:eagle_second_recipient - } - } - modifier = { - add = 25 - any_relation = { - type = friend - this = scope:eagle_second_recipient - } - } - } - } - - option = { # Sell the one (or both) - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = mpo_events_ariana.0001.both_eaglets - } - desc = mpo_events_ariana.0002.f_two - } - desc = mpo_events_ariana.0002.f_one - } - } - } - - - if = { - limit = { - has_character_flag = mpo_events_ariana.0001.both_eaglets - } - send_interface_toast = { - title = mpo_events_ariana.0002.f_tt_two - type = event_toast_effect_good - add_short_term_gold = major_gold_value - if = { - limit = { - exists = scope:eagle_first_recipient - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_first_recipient - modifier = disappointed_opinion - opinion = -15 - } - } - if = { - limit = { - exists = scope:eagle_second_recipient - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_second_recipient - modifier = disappointed_opinion - opinion = -15 - } - } - left_icon = root - } - - } - else = { - send_interface_toast = { - title = mpo_events_ariana.0002.f_tt - type = event_toast_effect_good - add_short_term_gold = medium_gold_value - if = { - limit = { - exists = scope:eagle_first_recipient - scope:eagle_first_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_first_recipient - modifier = disappointed_opinion - opinion = -15 - } - } - if = { - limit = { - exists = scope:eagle_second_recipient - scope:eagle_second_recipient = { - NOT = { has_eagle_trigger = yes } - } - } - reverse_add_opinion = { - target = scope:eagle_second_recipient - modifier = disappointed_opinion - opinion = -15 - } - } - left_icon = root - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - modifier = { - add = 50 - scope:eagle_second_recipient ?= { - opinion = { - target = root - value <= low_positive_opinion - } - } - } - modifier = { - add = 50 - scope:eagle_first_recipient ?= { - opinion = { - target = root - value <= low_positive_opinion - } - } - } - } - } -} - -# The Fire Inside - Your heir wants to convert to a different faith in your realm -mpo_events_ariana.0010 = { - type = character_event - title = mpo_events_ariana.0010.t - - desc = { - desc = mpo_events_ariana.0010.desc - triggered_desc = { - trigger = { - has_trait = zealous - } - desc = mpo_events_ariana.0010.desc_zealous - } - } - - theme = faith - override_background = { reference = throne_room } - - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = zealous } - animation = disapproval - } - animation = personality_rational - } - - right_portrait = { - character = scope:converting_heir - animation = worry - } - - cooldown = { years = 50 } - - weight_multiplier = { - base = 1 - modifier = { - add = 10 - scope:converting_heir = { has_trait = fickle } - } - } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - exists = scope:converting_heir - scope:converting_heir = { - NOT = { has_trait = zealous } - faith = scope:old_faith - is_available_adult = yes - } - exists = scope:new_faith - } - - immediate = { - player_heir ?= { save_scope_as = converting_heir } - - faith = { save_scope_as = old_faith } - - every_sub_realm_county = { - limit = { - NOR = { - faith = scope:old_faith - faith = scope:converting_heir.faith - } - } - save_scope_as = possible_faith_county - root = { - add_to_variable_list = { - name = possible_faiths - target = scope:possible_faith_county.faith - } - } - } - - # Find a faith to convert to - ordered_in_list = { - variable = possible_faiths - order_by = { - value = 0 - # Do not convert to a Righteous faith - if = { - limit = { - faith_hostility_level = { - target = scope:old_faith - value = faith_fully_accepted_level - } - } - add = -1 - } - else_if = { - limit = { - faith_hostility_level = { - target = scope:old_faith - value = faith_astray_level - } - } - add = 3 - } - else_if = { - limit = { - faith_hostility_level = { - target = scope:old_faith - value = faith_hostile_level - } - } - add = 2 - } - else_if = { - limit = { - faith_hostility_level = { - target = scope:old_faith - value = faith_evil_level - } - } - add = 1 - } - } - save_scope_as = new_faith - } - } - - option = { # Accept the conversion - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = zealous - } - desc = mpo_events_ariana.0010.a_zealous - } - desc = mpo_events_ariana.0010.a - } - } - } - - scope:converting_heir = { - set_character_faith = scope:new_faith - } - - set_character_faith = scope:new_faith - if = { - limit = { - scope:new_faith = { has_doctrine = doctrine_monotheist } - } - custom_description_no_bullet = { text = mandala_monotheist_warning_tt } - } - stress_impact = { - zealous = major_stress_impact_gain - eccentric = minor_stress_impact_loss - cynical = minor_stress_impact_loss - stubborn = medium_stress_impact_gain - } - scope:converting_heir = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_boldness = 0.1 - ai_zeal = -1.5 - } - modifier = { - factor = 1 - scope:old_faith = { - faith_hostility_level = { - target = scope:new_faith - value >= faith_astray_level - } - } - } - modifier = { - factor = 0.5 - scope:old_faith = { - faith_hostility_level = { - target = scope:new_faith - value = faith_hostile_level - } - } - } - modifier = { - factor = 0.25 - scope:old_faith = { - faith_hostility_level = { - target = scope:new_faith - value = faith_evil_level - } - } - } - } - } - - option = { # Accept it, but secretly continue to practice the old faith - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = zealous - } - desc = mpo_events_ariana.0010.b_zealous - } - desc = mpo_events_ariana.0010.b - } - } - } - - trigger = { - NOT = { any_secret = { secret_type = secret_crypto_religionist } } - untrustworthy_trigger = yes - } - - scope:converting_heir = { - set_character_faith = scope:new_faith - } - - custom_tooltip = mpo_events_ariana.0010.b.tt - - hidden_effect = { - set_character_faith = scope:new_faith - } - if = { - limit = { - scope:new_faith = { has_doctrine = doctrine_monotheist } - } - custom_description_no_bullet = { text = mandala_monotheist_warning_tt } - } - show_as_tooltip = { - add_secret = { - type = secret_crypto_religionist - } - } - stress_impact = { - honest = medium_stress_impact_gain - zealous = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - } - scope:converting_heir = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - } - - hidden_effect = { - make_character_crypto_religionist_effect = { CRYPTO_RELIGION = scope:old_faith } - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_zeal = -0.5 - ai_honor = -1 - } - } - } - - option = { # Reject the conversion - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = zealous - } - desc = mpo_events_ariana.0010.c_zealous - } - triggered_desc = { - trigger = { - has_trait = cynical - } - desc = mpo_events_ariana.0010.c_cynical - } - desc = mpo_events_ariana.0010.c - } - } - } - - add_piety = medium_piety_gain - - hidden_effect = { - if = { - limit = { - NOT = { has_trait = zealous } - } - add_piety = medium_piety_gain - scope:converting_heir = { - add_opinion = { - target = root - modifier = hurt_opinion - opinion = -25 - } - } - } - else = { - add_piety = medium_piety_gain - scope:converting_heir = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - } - } - - scope:converting_heir = { - set_character_faith = scope:new_faith - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_zeal = 1 - ai_rationality = 1 - } - } - } - - option = { - name = mpo_events_ariana.0010.d - trigger = { - has_trait = zealous - } - custom_tooltip = mpo_events_ariana.0010.d_tt - duel = { - skill = learning - target = scope:converting_heir - 60 = { - desc = mpo_events_ariana.0010.d_success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -59 - } - send_interface_toast = { - title = mpo_events_ariana.0010.d_success - type = event_toast_effect_good - left_icon = root - right_icon = scope:converting_heir - add_piety = major_piety_gain - } - } - 40 = { - desc = mpo_events_ariana.0010.d_failure - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 39 - } - send_interface_toast = { - title = mpo_events_ariana.0010.d_failure - type = event_toast_effect_bad - left_icon = root - right_icon = scope:converting_heir - scope:converting_heir = { - set_character_faith = scope:new_faith - } - add_stress = minor_stress_gain - } - } - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_zeal = 1 - ai_rationality = 1 - } - modifier = { - factor = 1.5 - highest_skill = learning - } - modifier = { - factor = 0.5 - learning <= scope:converting_heir.learning - } - } - } - - after = { - clear_variable_list = possible_faiths - } -} - -scripted_trigger is_valid_spouse_mpo_events_ariana_0020 = { - probably_superstitious = yes - is_available_adult = yes - culture = root.culture -} - -scripted_trigger is_valid_councillor_mpo_events_ariana_0020 = { - NOT = { culture = root.culture } - culture = { - cultural_acceptance = { target = root.culture value <= 75 } - } -} - -# Untrustworthy - A spouse is suspicious of a councillor that has a different culture -mpo_events_ariana.0020 = { - type = character_event - title = mpo_events_ariana.0020.t - desc = { - desc = mpo_events_ariana.0020.desc_intro - first_valid = { - triggered_desc = { - trigger = { - scope:sus_councillor = { is_kurultai_trigger = yes } - } - desc = mpo_events_ariana.0020.desc_marshal - } - triggered_desc = { - trigger = { - scope:sus_councillor = { has_council_position = councillor_spymaster } - } - desc = mpo_events_ariana.0020.desc_spymaster - } - } - desc = mpo_events_ariana.0020.desc_end - } - - theme = court - override_background = { reference = study } - - left_portrait = { - character = root - animation = disbelief - } - - right_portrait = { - character = scope:worried_spouse - animation = worry - } - - lower_center_portrait = scope:sus_councillor - - cooldown = { years = 10 } - - weight_multiplier = { - base = 1 - modifier = { - factor = 0.5 - scope:worried_spouse ?= { has_personality_levelheaded_trigger = yes } - } - } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - any_spouse = { is_valid_spouse_mpo_events_ariana_0020 = yes } - any_councillor = { is_valid_councillor_mpo_events_ariana_0020 = yes } - } - - immediate = { - random_spouse = { - limit = { - is_valid_spouse_mpo_events_ariana_0020 = yes - } - save_scope_as = worried_spouse - } - random_councillor = { - limit = { - is_valid_councillor_mpo_events_ariana_0020 = yes - } - save_scope_as = sus_councillor - } - scope:sus_councillor.culture = { - save_scope_as = councillor_culture - } - } - - option = { # No worries, they'll be gone - name = mpo_events_ariana.0020.a - fire_councillor = scope:sus_councillor - show_as_tooltip = { - scope:sus_councillor = { - add_opinion = { - target = root - modifier = fired_from_council_opinion - opinion = -20 - } - } - } - scope:worried_spouse = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - } - culture = { - change_cultural_acceptance = { - target = scope:councillor_culture - value = low_negative_culture_acceptance - desc = cultural_acceptance_gain_event - } - } - custom_tooltip = mpo_events_ariana.0020.a_tt - hidden_effect = { - every_vassal = { - limit = { - culture = scope:councillor_culture - } - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - } - - stress_impact = { - honest = minor_stress_impact_gain - paranoid = medium_stress_impact_loss - } - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_compassion = 0.5 - ai_honor = 0.5 - } - modifier = { - factor = 1.5 - has_trait = paranoid - } - opinion_modifier = { opinion_target = scope:worried_spouse multiplier = 1.5 } - opinion_modifier = { opinion_target = scope:sus_councillor multiplier = 0.5 } - } - } - - option = { # I suppose I can be more careful - name = mpo_events_ariana.0020.b - scope:worried_spouse = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -5 - } - } - add_character_modifier = { - modifier = cultural_suspicion_modifier - years = 5 - } - - stress_impact = { - paranoid = minor_stress_impact_loss - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_rationality = 1 - } - modifier = { - factor = 1.5 - has_trait = paranoid - } - opinion_modifier = { opinion_target = scope:worried_spouse multiplier = 1.5 } - } - } - - option = { # They're fine... - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - scope:worried_spouse = { has_trait = paranoid } - } - desc = mpo_events_ariana.0020.c_paranoid - } - desc = mpo_events_ariana.0020.c - } - } - } - add_prestige = minor_prestige_gain - scope:worried_spouse = { - add_opinion = { - target = root - modifier = angry_opinion - opinion = -20 - } - } - scope:sus_councillor = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - culture = { - change_cultural_acceptance = { - target = scope:councillor_culture - value = low_positive_culture_acceptance - desc = cultural_acceptance_gain_event - } - } - custom_tooltip = mpo_events_ariana.0020.c_tt - hidden_effect = { - every_vassal = { - limit = { - culture = scope:councillor_culture - } - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 10 - } - } - } - - stress_impact = { - paranoid = medium_stress_impact_gain - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_rationality = 1 - } - modifier = { - factor = 1.5 - has_personality_levelheaded_trigger = yes - } - opinion_modifier = { opinion_target = scope:worried_spouse multiplier = 0.5 } - modifier = { - factor = 1.3 - scope:worried_spouse = { has_trait = paranoid } - } - } - } -} - -# Forbidden Drinks - Someone is selling sus drinks at your feast -mpo_events_ariana.0030 = { - type = activity_event - title = mpo_events_ariana.0030.t - desc = mpo_events_ariana.0030.desc - - theme = feast_activity - - left_portrait = { - character = root - animation = stress - } - - lower_center_portrait = scope:bartender - - right_portrait = { - character = scope:spymaster - animation = disapproval - } - - cooldown = { years = 15 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - is_landed = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - involved_activity = { - any_attending_character = { - is_lowborn = yes - is_adult = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 1.5 - involved_activity = { - has_activity_option = { - category = special_type - option = feast_type_tsagaan_sar - } - } - } - } - - immediate = { - if = { - limit = { - involved_activity = { - any_attending_character = { - is_lowborn = no - NOT = { this = root } - has_council_position = councillor_spymaster - } - } - } - cp:councillor_spymaster = { - save_scope_as = spymaster - } - } - else = { - involved_activity = { - ordered_attending_character = { - limit = { - is_lowborn = no - NOT = { this = root } - } - order_by = intrigue - save_scope_as = spymaster - } - } - } - involved_activity = { - random_attending_character = { - limit = { - is_lowborn = yes - NOT = { this = root } - } - save_scope_as = bartender - } - } - } - - option = { # Ok go to jail - name = mpo_events_ariana.0030.jail - custom_tooltip = mpo_events_ariana.0030.jail_effect - rightfully_imprison_character_less_verbose_effect = { - TARGET = scope:bartender - IMPRISONER = root - } - - add_dread = minor_dread_gain - - stress_impact = { - just = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - - custom_tooltip = { - text = mpo_events_ariana.0030.jail_tt - involved_activity = { - every_attending_character = { - limit = { - is_lowborn = no - NOT = { this = root } - } - add_opinion = { - modifier = pleased_opinion - target = root - opinion = 10 - } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 0.5 - } - modifier = { - has_trait = gregarious - factor = 0.5 - } - } - } - - option = { # Don't care - name = mpo_events_ariana.0030.ignore - custom_tooltip = mpo_events_ariana.0030.ignore_effect - - location.county = { - add_county_modifier = { - modifier = buzzed_peasants_county_modifier - years = 3 - } - } - - scope:bartender = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 10 - } - } - - custom_tooltip = { - text = mpo_events_ariana.0030.ignore_tt - involved_activity = { - every_attending_character = { - limit = { - is_lowborn = no - NOT = { this = root } - } - add_opinion = { - modifier = disappointed_opinion - target = root - opinion = -10 - } - } - } - } - - custom_tooltip = { - text = mpo_events_ariana.0030.ignore_tt_lowborn - involved_activity = { - every_attending_character = { - limit = { - is_lowborn = yes - } - add_opinion = { - modifier = pleased_opinion - target = root - opinion = 10 - } - } - } - } - - stress_impact = { - base = minor_stress_impact_loss - compassionate = minor_stress_impact_loss - gregarious = minor_stress_impact_loss - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_compassion = 0.5 - } - modifier = { - has_trait = gregarious - factor = 1 - } - } - } - - option = { # Let them go, but only if you get some of the cut - name = mpo_events_ariana.0030.greedy - trigger = { - has_trait = greedy - } - custom_tooltip = mpo_events_ariana.0030.greedy_tt - - add_stress = medium_stress_loss - add_short_term_gold = minor_gold_value - add_character_modifier = { - modifier = kumi_tax_modifier - years = 2 - } - - scope:bartender = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -5 - } - } - - scope:spymaster = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } -} - -scripted_trigger is_valid_lover_mpo_events_ariana_0040 = { - is_ai = yes - is_adult = yes - NOR = { - is_spouse_of = root - has_relation_lover = root - has_trait = celibate - is_eunuch_trigger = yes - } - OR = { - is_sibling_of = root - has_relation_rival = root - } - is_attracted_to_gender_of = root - root = { is_attracted_to_gender_of = prev } -} - - -# Unmasked - You flirt with an masked person at an event -mpo_events_ariana.0040 = { - type = activity_event - title = { - first_valid = { - triggered_desc = { - trigger = { - involved_activity = { has_activity_type = activity_feast } - } - desc = mpo_events_ariana.0040.title_feast - } - triggered_desc = { - trigger = { - involved_activity = { has_activity_type = activity_wedding } - } - desc = mpo_events_ariana.0040.title_wedding - } - triggered_desc = { - trigger = { - involved_activity = { has_activity_type = activity_camp_party } - } - desc = mpo_events_ariana.0040.title_camp_party - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - involved_activity = { has_activity_type = activity_feast } - involved_activity = { has_activity_type = activity_wedding } - } - } - desc = mpo_events_ariana.0040.desc_wedding_feast - } - triggered_desc = { - trigger = { - involved_activity = { has_activity_type = activity_camp_party } - } - desc = mpo_events_ariana.0040.desc_camp_party - } - } - } - - theme = love - override_background = { - trigger = { - OR = { - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - } - reference = corridor_night - } - override_background = { - trigger = { - involved_activity ?= { has_activity_type = activity_camp_party } - } - reference = bp1_bonfire - } - - left_portrait = { - character = root - animation = flirtation - } - - right_portrait = { - trigger = { - exists = scope:talker - } - character = scope:talker - animation = happiness - } - - cooldown = { years = 50 } - - trigger = { - has_mpo_dlc_trigger = yes - is_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - involved_activity ?= { - any_attending_character = { - is_valid_lover_mpo_events_ariana_0040 = yes - } - } - OR = { - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - involved_activity ?= { has_activity_type = activity_camp_party } - } - NOT = { - has_trait = celibate - is_eunuch_trigger = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = -0.3 - num_of_relation_lover > 1 - } - modifier = { - add = 0.5 - has_trait = rakish - } - modifier = { - add = 1 - has_trait = lustful - } - modifier = { - add = -0.5 - any_spouse = { - reverse_opinion = { - target = root - value >= 60 - } - } - } - modifier = { - add = -0.4 - any_spouse = { - reverse_has_opinion_modifier = { - target = root - modifier = love_opinion - } - } - } - } - - immediate = { - involved_activity = { save_scope_as = activity } - involved_activity = { - every_attending_character = { - limit = { - is_valid_lover_mpo_events_ariana_0040 = yes - } - save_scope_as = possible_lover - root = { - add_to_variable_list = { - name = possible_lovers - target = scope:possible_lover - } - } - if = { - limit = { - involved_activity = { - any_attending_character = { is_spouse_of = scope:possible_lover } - } - } - involved_activity = { - every_attending_character = { - limit = { is_spouse_of = scope:possible_lover } - save_scope_as = possible_lover_spouse - root = { - add_to_variable_list = { - name = possible_lovers - target = scope:possible_lover_spouse - } - } - } - } - } - } - } - # Find a person - ordered_in_list = { - variable = possible_lovers - order_by = { - value = 1 - add = intrigue - if = { - limit = { - matching_gender_and_sexuality_trigger = { - CHARACTER_1 = root - CHARACTER_2 = this - } - } - add = 10 - } - if = { - limit = { - has_trait = beauty_good - } - add = 5 - } - if = { - limit = { - has_trait = intellect_good - } - add = 5 - } - if = { - limit = { - any_spouse = { - count = 0 - } - } - add = 3 - } - if = { - limit = { - OR = { - has_trait = lustful - has_trait = rakish - } - } - add = 5 - } - } - save_scope_as = masked_guest - } - clear_variable_list = possible_lovers - if = { - limit = { - involved_activity = { has_activity_type = activity_camp_party } - exists = scope:masked_guest - } - involved_activity = { - random_attending_character = { - limit = { - NOT = { this = root } - NOT = { this = scope:masked_guest } - } - save_scope_as = talker - } - } - } - } - - option = { - name = mpo_events_ariana.0040.a - - custom_tooltip = mpo_events_ariana.0040.a_tt - trigger_event = mpo_events_ariana.0041 - - stress_impact = { - base = minor_stress_impact_loss - lustful = minor_stress_impact_loss - chaste = medium_stress_impact_gain - } - } - - option = { - name = mpo_events_ariana.0040.b - trigger = { - OR = { - has_trait = chaste - has_trait = shy - } - } - add_prestige = miniscule_prestige_loss - - stress_impact = { - base = minor_stress_impact_loss - } - } -} - -# Unmasked follow up - You find out who the masked person was -mpo_events_ariana.0041 = { - type = activity_event - title = mpo_events_ariana.0041.title - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - involved_activity = { has_activity_type = activity_feast } - involved_activity = { has_activity_type = activity_wedding } - } - } - desc = mpo_events_ariana.0041.desc_wedding_feast - } - triggered_desc = { - trigger = { - involved_activity = { has_activity_type = activity_camp_party } - } - desc = mpo_events_ariana.0041.desc_camp_party - } - } - desc = mpo_events_ariana.0041.desc_middle - first_valid = { - triggered_desc = { - trigger = { - has_relation_rival = scope:masked_guest - } - desc = mpo_events_ariana.0041.desc_rival - } - triggered_desc = { - trigger = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - desc = mpo_events_ariana.0041.desc_family - } - triggered_desc = { - trigger = { - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - } - } - desc = mpo_events_ariana.0041.desc_family_spouse - } - triggered_desc = { - trigger = { - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - desc = mpo_events_ariana.0041.desc_rival_spouse - } - } - desc = mpo_events_ariana.0041.desc_outro - triggered_desc = { - trigger = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - desc = mpo_events_ariana.0041.desc_family_outro - } - } - - theme = love - override_background = { - trigger = { - OR = { - involved_activity ?= { has_activity_type = activity_feast } - involved_activity ?= { has_activity_type = activity_wedding } - } - } - reference = bedchamber - } - override_background = { - trigger = { - involved_activity ?= { has_activity_type = activity_camp_party } - } - reference = bp1_bonfire - } - - left_portrait = { - character = root - animation = shock - } - - lower_left_portrait = { - trigger = { - exists = primary_spouse - primary_spouse = { has_relation_lover = root } - } - character = primary_spouse - } - - lower_center_portrait = { - trigger = { exists = scope:masked_guest_spouse } - character = scope:masked_guest_spouse - } - - right_portrait = { - character = scope:masked_guest - animation = flirtation - } - - immediate = { - if = { - limit = { - scope:masked_guest = { - any_spouse = { - is_sibling_of = root - } - } - } - scope:masked_guest = { - random_spouse = { - limit = { is_sibling_of = root } - save_scope_as = masked_guest_spouse - } - } - } - else_if = { - limit = { - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - scope:masked_guest = { - random_spouse = { - limit = { has_relation_rival = root } - save_scope_as = masked_guest_spouse - } - } - } - } - - # Sleep with them anyways - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - desc = mpo_events_ariana.0041.a_family - } - triggered_desc = { - trigger = { - has_relation_rival = scope:masked_guest - } - desc = mpo_events_ariana.0041.a_rival - } - triggered_desc = { - trigger = { - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - desc = mpo_events_ariana.0041.a_rival_spouse - } - desc = mpo_events_ariana.0041.a - } - } - } - trigger = { - is_attracted_to_gender_of = scope:masked_guest - scope:masked_guest = { is_attracted_to_gender_of = root } - } - had_sex_with_effect = { - CHARACTER = scope:masked_guest - PREGNANCY_CHANCE = pregnancy_chance - } - if = { - limit = { - has_trait = lustful - root.faith = { trait_is_virtue = lustful } - } - add_piety = minor_piety_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -0.25 - ai_boldness = 0.75 - } - modifier = { - factor = 1.2 - OR = { - has_trait = lustful - has_trait = rakish - } - } - modifier = { - factor = 1.1 - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - modifier = { - factor = 0.8 - has_relation_rival = scope:masked_guest - } - modifier = { - factor = 0.1 - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - modifier = { - factor = 0.75 - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = root - is_child_of = root - root = { is_child_of = prev } - } - } - } - } - modifier = { - factor = 0.5 - OR = { - scope:activity.var:spouse_2_var ?= root - scope:activity.special_guest:spouse_1 ?= root - } - } - } - } - - # Become lovers - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - desc = mpo_events_ariana.0041.b_family - } - triggered_desc = { - trigger = { - has_relation_rival = scope:masked_guest - } - desc = mpo_events_ariana.0041.b_rival - } - triggered_desc = { - trigger = { - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - desc = mpo_events_ariana.0041.b_rival_spouse - } - desc = mpo_events_ariana.0041.b - } - } - } - trigger = { - is_attracted_to_gender_of = scope:masked_guest - scope:masked_guest = { is_attracted_to_gender_of = root } - } - had_sex_with_effect = { - CHARACTER = scope:masked_guest - PREGNANCY_CHANCE = pregnancy_chance - } - progress_towards_lover_effect = { - CHARACTER = scope:masked_guest - REASON = lover_masked_activity - OPINION = 0 - } - if = { - limit = { - has_trait = lustful - root.faith = { trait_is_virtue = lustful } - } - add_piety = minor_piety_gain - } - ai_chance = { - base = 60 - ai_value_modifier = { - ai_honor = -0.25 - ai_boldness = 1 - ai_greed = 0.1 - } - modifier = { - factor = 1.2 - OR = { - has_trait = lustful - has_trait = rakish - } - } - modifier = { - factor = 1.1 - scope:masked_guest = { - any_spouse = { - has_relation_rival = root - } - } - } - modifier = { - factor = 0.7 - has_relation_rival = scope:masked_guest - } - modifier = { - factor = 0.1 - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - modifier = { - factor = 0.5 - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = root - is_child_of = root - root = { is_child_of = prev } - } - } - } - } - modifier = { - factor = 0.5 - OR = { - scope:activity.var:spouse_2_var ?= root - scope:activity.special_guest:spouse_1 ?= root - } - } - } - } - - # Reject them - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - is_sibling_of = scope:masked_guest - is_child_of = scope:masked_guest - scope:masked_guest = { is_child_of = root } - } - } - desc = mpo_events_ariana.0041.c_family - } - triggered_desc = { - trigger = { - has_relation_rival = scope:masked_guest - } - desc = mpo_events_ariana.0041.c_rival - } - triggered_desc = { - trigger = { - exists = primary_spouse - primary_spouse = { has_relation_lover = root } - } - desc = mpo_events_ariana.0041.c_spouse - } - triggered_desc = { - trigger = { - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = root - is_child_of = root - is_parent_of = root - } - } - } - } - desc = mpo_events_ariana.0041.c_family_spouse - } - desc = mpo_events_ariana.0041.c - } - } - } - custom_tooltip = mpo_events_ariana.0041.c_tt - - reverse_add_opinion = { - target = scope:masked_guest - modifier = hurt_opinion - opinion = -20 - } - - if = { - limit = { - OR = { - AND = { - any_spouse = { - count > 0 - } - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:adulterer - GENDER_CHARACTER = root - } - } - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:fornicator - GENDER_CHARACTER = root - } - } - } - add_piety = minor_piety_gain - } - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_honor = 0.5 - ai_vengefulness = 1 - } - modifier = { - factor = 1.5 - has_relation_rival = scope:masked_guest - } - modifier = { - factor = 1.5 - OR = { - is_sibling_of = root - is_child_of = root - is_parent_of = root - } - } - modifier = { - factor = 1.2 - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = root - is_child_of = root - is_parent_of = root - } - } - } - } - } - } - - # Reject them, but stop being rivals - option = { - name = mpo_events_ariana.0041.d - trigger = { - has_relation_rival = scope:masked_guest - } - custom_tooltip = mpo_events_ariana.0041.d_tt - duel = { - skill = intrigue - target = scope:masked_guest - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -59 - } - send_interface_toast = { - title = mpo_events_ariana.0041.d_success - type = event_toast_effect_good - left_icon = root - right_icon = scope:masked_guest - remove_relation_rival = scope:masked_guest - - if = { - limit = { - OR = { - AND = { - any_spouse = { - count > 0 - } - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:adulterer - GENDER_CHARACTER = root - } - } - trait_is_shunned_or_criminal_in_faith_trigger = { - FAITH = faith - TRAIT = trait:fornicator - GENDER_CHARACTER = root - } - } - } - if = { - limit = { - has_trait = forgiving - faith = { trait_is_virtue = forgiving } - } - add_piety = medium_piety_gain - } - else = { - add_piety = minor_piety_gain - } - } - - add_prestige = minor_prestige_gain - - stress_impact = { - base = minor_stress_impact_loss - forgiving = medium_stress_impact_loss - vengeful = medium_stress_impact_gain - } - } - } - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 39 - } - - send_interface_toast = { - title = mpo_events_ariana.0041.d_failure - type = event_toast_effect_bad - left_icon = root - right_icon = scope:masked_guest - stress_impact = { - base = miniscule_stress_impact_gain - } - } - } - } - - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_vengefulness = -0.5 - } - modifier = { - factor = 1.2 - OR = { - is_sibling_of = root - is_child_of = root - is_parent_of = root - } - } - modifier = { - factor = 1.2 - scope:masked_guest = { - any_spouse = { - OR = { - is_sibling_of = root - is_child_of = root - is_parent_of = root - } - } - } - } - } - } -} - -scripted_effect mpo_events_ariana_0050_lose_effect = { - add_prestige = major_prestige_loss - custom_tooltip = mpo_events_ariana_0050_lose_effect_tt - dynasty = { - add_dynasty_modifier = { - modifier = criminal_family_dynasty_modifier - years = 10 - } - } - hidden_effect = { - every_held_title = { - limit = { - is_landless_type_title = no - tier > tier_barony - } - add_to_list = target_titles - } - create_title_and_vassal_change = { - type = conquest - save_scope_as = change - add_claim_on_loss = yes - } - every_in_list = { - list = target_titles - change_title_holder_include_vassals = { - holder = scope:criminal_family.primary_heir - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - } - if = { - limit = { - is_valid_for_laampdom = yes - scope:criminal_family.ep3_laamp_chance_score_value >= 8 - } - create_landless_adventurer_title_effect = { - REASON = flag:voluntary - FLAVOR_CHAR = root - } - add_trait_xp = { - trait = gallowsbait - track = thief - value = 10 - } - } - scope:criminal_family = { - add_stress = major_stress_gain - } -} - -scripted_effect mpo_events_ariana_0050_win_effect = { - add_hook = { - target = scope:criminal_family - type = loyalty_hook - } - dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_value } - scope:criminal_family = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 30 - } - } -} - -scripted_trigger is_valid_family_mpo_events_ariana_0050 = { - is_landed = yes - is_available_adult = yes - dynasty = root.dynasty - exists = primary_heir - highest_held_title_tier <= tier_duchy - is_ai = yes - OR = { - has_trait = avaricious - has_trait = deceitful - has_trait = schemer - has_trait = greedy - has_trait = ambitious - } -} - -# Branded - A family member is caught in a scandal -mpo_events_ariana.0050 = { - type = character_event - title = mpo_events_ariana.0050.t - desc = mpo_events_ariana.0050.desc - - theme = realm - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:criminal_family - animation = beg - } - - cooldown = { years = 50 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - any_close_or_extended_family_member = { - is_valid_family_mpo_events_ariana_0050 = yes - } - } - - immediate = { - random_close_or_extended_family_member = { - limit = { - is_valid_family_mpo_events_ariana_0050 = yes - } - save_scope_as = criminal_family - } - } - - option = { - name = mpo_events_ariana.0050.a - trigger = { - short_term_gold >= massive_gold_value - } - show_as_unavailable = { - always = yes - } - custom_tooltip = mpo_events_ariana.0050.a_tt - remove_short_term_gold = massive_gold_value - add_prestige = medium_prestige_gain - mpo_events_ariana_0050_win_effect = yes - stress_impact = { - greedy = medium_stress_impact_gain - avaricious = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - just = minor_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - short_term_gold < massive_gold_value - } - desc = mpo_events_ariana.0050.b_broke - } - desc = mpo_events_ariana.0050.b - } - } - } - add_prestige = medium_prestige_loss - scope:criminal_family = { - mpo_events_ariana_0050_lose_effect = yes - } - stress_impact = { - callous = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - } - opinion_modifier = { - opinion_target = scope:criminal_family - multiplier = -2 - } - } - } - - option = { - name = mpo_events_ariana.0050.c - trigger = { - diplomacy >= high_skill_rating - } - show_as_unavailable = { - always = yes - } - custom_tooltip = mpo_events_ariana.0050.c_tt - duel = { - skill = diplomacy - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = mpo_events_ariana.0050.win - send_interface_toast = { - title = mpo_events_ariana.0050.win - type = event_toast_effect_good - left_icon = root - right_icon = scope:criminal_family - mpo_events_ariana_0050_win_effect = yes - stress_impact = { - compassionate = medium_stress_impact_loss - just = minor_stress_impact_loss - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = mpo_events_ariana.0050.lose - send_interface_toast = { - title = mpo_events_ariana.0050.lose - type = event_toast_effect_bad - left_icon = root - right_icon = scope:criminal_family - add_prestige = medium_prestige_loss - scope:criminal_family = { - mpo_events_ariana_0050_lose_effect = yes - } - stress_impact = { - callous = medium_stress_impact_loss - } - } - } - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_compassion = -1 - } - opinion_modifier = { - opinion_target = scope:criminal_family - multiplier = -2 - } - } - } -} - -scripted_trigger is_valid_child_mpo_events_ariana_0060 = { - age > 4 - age <= 14 - is_available = yes - is_ai = yes - is_courtier_of = root -} -scripted_effect mpo_events_ariana_0060_lose_effect = { - send_interface_toast = { - title = mpo_events_ariana.0010.failure - type = event_toast_effect_bad - left_icon = root - right_icon = scope:appropriate_child - random = { - chance = 10 - increase_wounds_effect = { REASON = fall } - } - scope:appropriate_child = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - } -} -scripted_effect mpo_events_ariana_0060_win_effect = { - custom_tooltip = mpo_events_ariana.0060.success_tt - add_prestige = miniscule_prestige_gain - trigger_event = mpo_events_ariana.0070 -} - -# Treasure Nest - A child comes to you saying they found treasure in an eagle's nest -mpo_events_ariana.0060 = { - type = character_event - title = mpo_events_ariana.0060.t - desc = mpo_events_ariana.0060.desc - - theme = court - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:appropriate_child - animation = storyteller - } - - cooldown = { years = 15 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - OR = { - any_close_family_member = { is_valid_child_mpo_events_ariana_0060 = yes } - any_relation = { type = ward is_valid_child_mpo_events_ariana_0060 = yes } - any_warden_hostage = { opinion = { target = root value >= low_negative_opinion } is_valid_child_mpo_events_ariana_0060 = yes } - } - } - - immediate = { - if = { - limit = { - any_close_family_member = { - is_valid_child_mpo_events_ariana_0060 = yes - } - } - random_close_family_member = { - #A child you care about - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - is_valid_child_mpo_events_ariana_0060 = yes - } - #Otherwise pick whoever - alternative_limit = { is_valid_child_mpo_events_ariana_0060 = yes } - save_scope_as = appropriate_child - } - } - else_if = { - limit = { - any_relation = { - type = ward - is_valid_child_mpo_events_ariana_0060 = yes - } - } - random_relation = { - type = ward - #A child you care about - limit = { - opinion = { - target = root - value >= low_positive_opinion - } - is_valid_child_mpo_events_ariana_0060 = yes - } - #Otherwise pick whoever - alternative_limit = { is_valid_child_mpo_events_ariana_0060 = yes } - save_scope_as = appropriate_child - } - } - else_if = { - limit = { - any_warden_hostage = { - opinion = { - target = root - value >= low_negative_opinion - } - is_valid_child_mpo_events_ariana_0060 = yes - } - } - random_warden_hostage = { - limit = { - opinion = { - target = root - value >= low_negative_opinion - } - is_valid_child_mpo_events_ariana_0060 = yes - } - save_scope_as = appropriate_child - } - } - add_short_term_gold = 5 - } - - # Climb to the nest - option = { - name = mpo_events_ariana.0060.a - duel = { - skill = prowess - value = decent_skill_rating - desc = mpo_events_ariana.0060.a_tt - 60 = { - desc = mpo_events_ariana.0060.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -59 - } - mpo_events_ariana_0060_win_effect = yes - } - 40 = { - desc = mpo_events_ariana.0010.a_failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - mpo_events_ariana_0060_lose_effect = yes - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 0.1 - } - modifier = { - factor = 1.5 - prowess > intrigue - } - } - } - - # Sneak to the nest - option = { - name = mpo_events_ariana.0060.b - duel = { - skill = intrigue - value = decent_skill_rating - desc = mpo_events_ariana.0060.b_tt - 60 = { - desc = mpo_events_ariana.0060.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -59 - } - mpo_events_ariana_0060_win_effect = yes - } - 40 = { - desc = mpo_events_ariana.0010.b_failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -39 - } - mpo_events_ariana_0060_lose_effect = yes - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 0.1 - } - modifier = { - factor = 1.5 - intrigue > prowess - } - } - } - - # That's nice dear - option = { - name = mpo_events_ariana.0060.d - scope:appropriate_child = { - add_opinion = { - target = root - modifier = hurt_opinion - opinion = -15 - } - } - stress_impact = { - lazy = minor_stress_impact_loss - craven = minor_stress_impact_loss - } - ai_chance = { - base = 75 - opinion_modifier = { - opinion_target = scope:appropriate_child - multiplier = -1 - } - ai_value_modifier = { - ai_energy = -1 - } - } - } -} - -mpo_events_ariana.0070 = { - type = character_event - title = mpo_events_ariana.0060.t - desc = mpo_events_ariana.0070.desc - - theme = court - override_background = { reference = terrain } - - left_portrait = { - character = root - animation = hunting_falcon - } - - right_portrait = { - character = scope:appropriate_child - animation = happiness - } - - immediate = { - add_character_flag = used_in_mpo_events_ariana_0070 - generate_trinket_effect = { - TRINKET_RECEIVER = root - TRINKET_GIVER = root - GRAB_ALL_TRINKETS = no - HISTORY_TYPE = discovered - } - if = { - limit = { exists = scope:new_trinket } - scope:new_trinket = { - save_scope_as = newly_created_artifact - } - } - } - - # Take the sachel - option = { - name = mpo_events_ariana.0070.a - random_list = { - desc = mpo_events_ariana.0070.a_tt - 20 = { - desc = mpo_events_ariana.0070.a_trinket - trigger = { - exists = scope:newly_created_artifact - } - send_interface_toast = { - title = mpo_events_ariana.0070.a_trinket - type = event_toast_effect_good - left_icon = root - scope:newly_created_artifact = { set_owner = root } - add_short_term_gold = 15 - } - } - 30 = { - desc = mpo_events_ariana.0070.a_good - send_interface_toast = { - title = mpo_events_ariana.0070.a_good - type = event_toast_effect_good - left_icon = root - add_short_term_gold = 50 - } - } - 15 = { - desc = mpo_events_ariana.0070.a_great - send_interface_toast = { - title = mpo_events_ariana.0070.a_great - type = event_toast_effect_good - left_icon = root - add_short_term_gold = 100 - } - } - 5 = { - desc = mpo_events_ariana.0070.a_none - send_interface_toast = { - title = mpo_events_ariana.0070.a_none - type = event_toast_effect_bad - left_icon = root - } - hidden_effect = { - stress_impact = { - greedy = minor_stress_impact_gain - } - } - } - } - - stress_impact = { - greedy = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - # Take the eagle - option = { - name = mpo_events_ariana.0070.b - - trigger = { - OR = { - has_eagle_trigger = no - scope:appropriate_child = { has_eagle_trigger = no } - } - } - if = { - limit = { - has_eagle_trigger = no - } - custom_tooltip = mpo_events_ariana.0070.b_self - start_eagle_story_cycle_effect = yes - } - else_if = { - limit = { - scope:appropriate_child = { has_eagle_trigger = no } - } - custom_tooltip = mpo_events_ariana.0070.b_child - scope:appropriate_child = { start_eagle_story_cycle_effect = yes } - scope:appropriate_child = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - # Give the sachel to bro - option = { - name = mpo_events_ariana.0070.c - random_list = { - desc = mpo_events_ariana.0070.c_tt - 20 = { - desc = mpo_events_ariana.0070.a_trinket - trigger = { - exists = scope:newly_created_artifact - } - send_interface_toast = { - title = mpo_events_ariana.0070.a_trinket - type = event_toast_effect_good - left_icon = root - right_icon = scope:appropriate_child - scope:newly_created_artifact = { set_owner = root } - scope:appropriate_child = { add_short_term_gold = 15 } - } - } - 30 = { - desc = mpo_events_ariana.0070.a_good - send_interface_toast = { - title = mpo_events_ariana.0070.a_good - type = event_toast_effect_good - left_icon = root - right_icon = scope:appropriate_child - add_short_term_gold = 25 - scope:appropriate_child = { add_short_term_gold = 25 } - } - } - 15 = { - desc = mpo_events_ariana.0070.a_great - send_interface_toast = { - title = mpo_events_ariana.0070.a_great - type = event_toast_effect_good - left_icon = root - right_icon = scope:appropriate_child - add_short_term_gold = 50 - scope:appropriate_child = { add_short_term_gold = 50 } - } - } - 5 = { - desc = mpo_events_ariana.0070.a_none - custom_tooltip = mpo_events_ariana.0070.c_none_tt - send_interface_toast = { - title = mpo_events_ariana.0070.a_none - type = event_toast_effect_bad - left_icon = root - right_icon = scope:appropriate_child - pay_short_term_gold = { - gold = 5 - target = scope:appropriate_child - } - } - hidden_effect = { - stress_impact = { - greedy = minor_stress_impact_gain - } - } - } - } - - scope:appropriate_child = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - - stress_impact = { - greedy = minor_stress_impact_gain - generous = major_stress_impact_loss - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_greed = -1 - } - opinion_modifier = { - opinion_target = scope:appropriate_child - multiplier = 2 - } - } - } - - # Leave it be - option = { - name = mpo_events_ariana.0070.d - - add_piety = minor_piety_gain - - scope:appropriate_child = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -15 - } - } - - stress_impact = { - temperate = minor_stress_impact_loss - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 0.1 - ai_greed = -1 - } - modifier = { - factor = 1.5 - has_trait = temperate - } - } - } - - after = { - remove_character_flag = used_in_mpo_events_ariana_0070 - } -} - -# Someone tells you about a magical tree -mpo_events_ariana.0080 = { - type = character_event - title = mpo_events_ariana.0080.t - desc = mpo_events_ariana.0080.desc - - theme = nomads - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:tree_lover - animation = storyteller - } - - cooldown = { years = 25 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - location = { geographical_region = world_steppe } - government_has_flag = government_is_nomadic - any_courtier = { - is_available_healthy_ai_adult = yes - } - any_county_in_region = { - region = world_steppe - NOR = { - holder ?= root - holder.liege ?= root - holder.top_liege ?= root - } - squared_distance = { - target = root.capital_county - value >= squared_distance_medium - } - squared_distance = { - target = root.capital_county - value < squared_distance_almost_massive - } - any_county_province = { - OR = { - terrain = forest - terrain = taiga - } - } - } - } - - immediate = { - ordered_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - order_by = learning - save_scope_as = tree_lover - } - random_county_in_region = { - region = world_steppe - limit = { - NOR = { - holder ?= root - holder.liege ?= root - holder.top_liege ?= root - } - squared_distance = { - target = root.capital_county - value >= squared_distance_medium - } - squared_distance = { - target = root.capital_county - value < squared_distance_almost_massive - } - any_county_province = { - OR = { - terrain = forest - terrain = taiga - } - } - } - random_county_province = { - limit = { - OR = { - terrain = forest - terrain = taiga - } - } - save_scope_as = tree_barony - } - } - } - - # ok you can go - option = { - name = mpo_events_ariana.0080.a - - - custom_tooltip = mpo_events_ariana.0080.a_tt - save_scope_value_as = { - name = tree_method - value = flag:tree_guy - } - - pay_short_term_gold = { - gold = major_gold_value - target = scope:tree_lover - } - - scope:tree_lover = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - - trigger_event = { - id = mpo_events_ariana.0081 - days = { 30 90 } - } - - stress_impact = { - greedy = minor_stress_impact_gain - } - - ai_chance = { - base = 150 - ai_value_modifier = { - ai_greed = -0.5 - ai_energy = -0.1 - } - modifier = { - factor = 1.25 - scope:tree_lover.learning >= root.learning - } - modifier = { - gold <= massive_gold_value - factor = 0 - } - } - } - - # ill go - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = arrogant - } - desc = mpo_events_ariana.0080.b_arrogant - } - desc = mpo_events_ariana.0080.b - } - } - } - trigger = { - learning >= high_skill_rating - } - show_as_unavailable = { - always = yes - } - - custom_tooltip = mpo_events_ariana.0080.b_tt - save_scope_value_as = { - name = tree_method - value = flag:self - } - - start_travel_plan = { - destination = scope:tree_barony - on_arrival_event = mpo_events_ariana.0081 - } - - - ai_chance = { - base = 75 - ai_value_modifier = { - ai_rationality = 1 - ai_greed = 0.5 - } - modifier = { - factor = 2 - has_trait = arrogant - } - } - } - - # who cares - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - probably_superstitious = yes - } - desc = mpo_events_ariana.0080.c_sus - } - desc = mpo_events_ariana.0080.c - } - } - } - flavor = mpo_events_ariana.0080.c_flavor - - stress_impact = { - base = minor_stress_impact_loss - cynical = minor_stress_impact_loss - } - - scope:tree_lover = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - - - ai_chance = { - base = 50 - modifier = { - factor = 1.5 - probably_superstitious = yes - } - modifier = { - factor = 1.5 - has_trait = cynical - } - } - } -} - -# The magical tree is brought to you or you find it -mpo_events_ariana.0081 = { - type = character_event - title = mpo_events_ariana.0080.t - desc = { - triggered_desc = { - trigger = { - scope:tree_method = flag:self - } - desc = mpo_events_ariana.0081.desc_self - } - triggered_desc = { - trigger = { - scope:tree_method = flag:tree_guy - scope:tree_lover = { is_alive = yes } - } - desc = mpo_events_ariana.0081.desc_guy - } - triggered_desc = { - trigger = { - scope:tree_method = flag:tree_guy - scope:tree_lover = { is_alive = no } - } - desc = mpo_events_ariana.0081.desc_dead - } - triggered_desc = { - trigger = { - scope:tree_method = flag:tree_guy - scope:tree_lover = { is_alive = yes } - } - desc = mpo_events_ariana.0081.desc - } - desc = mpo_events_ariana.0081.desc_outro - } - - theme = realm - override_background = { - trigger = { - scope:tree_method = flag:tree_guy - } - reference = courtyard - } - override_background = { - trigger = { - scope:tree_method = flag:self - } - reference = terrain - } - - left_portrait = { - character = root - animation = happiness - } - - right_portrait = { - trigger = { - scope:tree_method = flag:tree_guy - } - character = scope:tree_giver - animation = storyteller - } - - lower_center_portrait = { - trigger = { - scope:tree_lover = { is_alive = no } - } - character = scope:tree_lover - } - - immediate = { - # If the guy is dead for whatever reason we need to find a new one - if = { - limit = { - scope:tree_lover = { is_alive = yes } - } - scope:tree_lover = { save_scope_as = tree_giver } - } - else = { - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - } - save_scope_as = tree_giver - } - } - } - - # Wish for Fertility - option = { - name = mpo_events_ariana.0081.a - - duel = { - skill = learning - value = decent_skill_rating - desc = mpo_events_ariana.0081.wish - 70 = { - desc = mpo_events_ariana.0081.success - modifier = { - factor = 1.5 - scope:tree_method = flag:tree_guy - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -69 - } - send_interface_toast = { - title = mpo_events_ariana.0081.success - type = event_toast_effect_good - left_icon = root - add_character_modifier = { - modifier = mpo_magical_tree_fertility_modifier - years = 10 - } - } - } - 30 = { - desc = mpo_events_ariana.0081.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - send_interface_toast = { - title = mpo_events_ariana.0081.failure - type = event_toast_effect_neutral - left_icon = root - add_character_modifier = { - modifier = mpo_magical_tree_modifier - years = 10 - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = lustful - } - } - } - - # Wish for Power - option = { - name = mpo_events_ariana.0081.b - - duel = { - skill = learning - value = decent_skill_rating - desc = mpo_events_ariana.0081.wish - 70 = { - desc = mpo_events_ariana.0081.success - modifier = { - factor = 1.5 - scope:tree_method = flag:tree_guy - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -69 - } - send_interface_toast = { - title = mpo_events_ariana.0081.success - type = event_toast_effect_good - left_icon = root - if = { - limit = { - domicile ?= { herd <= max_herd } - } - domicile ?= { - change_herd = medium_herd_gain - } - } - else = { - add_prestige = medium_prestige_gain - } - add_character_modifier = { - modifier = mpo_magical_tree_power_modifier - years = 10 - } - } - } - 30 = { - desc = mpo_events_ariana.0081.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - send_interface_toast = { - title = mpo_events_ariana.0081.failure - type = event_toast_effect_neutral - left_icon = root - add_character_modifier = { - modifier = mpo_magical_tree_modifier - years = 10 - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 1.5 - has_trait = wrathful - } - } - } - - # Wish for Wisdom - option = { - name = mpo_events_ariana.0081.c - - duel = { - skill = learning - value = decent_skill_rating - desc = mpo_events_ariana.0081.wish - 70 = { - desc = mpo_events_ariana.0081.success - modifier = { - factor = 1.5 - scope:tree_method = flag:tree_guy - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -69 - } - send_interface_toast = { - title = mpo_events_ariana.0081.success - type = event_toast_effect_good - left_icon = root - add_character_modifier = { - modifier = mpo_magical_tree_wisdom_modifier - years = 10 - } - } - } - 30 = { - desc = mpo_events_ariana.0081.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -29 - } - send_interface_toast = { - title = mpo_events_ariana.0081.failure - type = event_toast_effect_neutral - left_icon = root - add_character_modifier = { - modifier = mpo_magical_tree_modifier - years = 10 - } - } - } - } - - ai_chance = { - base = 100 - } - } -} - -scripted_trigger is_valid_family_mpo_events_ariana_0090 = { - is_available = yes - is_adult = no - age >= 8 # Can't be too young - number_of_personality_traits < personality_trait_limit - NAND = { - OR = { - has_trait = content - has_trait = ambitious - } - OR = { - has_trait = lazy - has_trait = diligent - } - } - NOT = { - has_character_modifier = mpo_destined_leader_modifier - } -} - -# Your child wants to be a herder when they grow up -mpo_events_ariana.0090 = { - type = character_event - title = mpo_events_ariana.0090.t - desc = { - desc = mpo_events_ariana.0090.desc - first_valid = { - triggered_desc = { - trigger = { - scope:child = { age >= 12 } - } - desc = mpo_events_ariana.0090.desc_older - } - desc = mpo_events_ariana.0090.desc_younger - } - } - theme = nomads - - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:child - animation = holding_staff - } - - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - government_has_flag = government_is_nomadic - any_child = { - is_valid_family_mpo_events_ariana_0090 = yes - } - } - - immediate = { - random_child = { - limit = { - is_valid_family_mpo_events_ariana_0090 = yes - } - weight = { - base = 1 - modifier = { - factor = 2 - OR = { - has_trait = shy - has_trait = craven - } - } - } - save_scope_as = child - } - } - - # I'll show you their life before you decide - option = { - name = mpo_events_ariana.0090.c - trigger = { - scope:child = { age >= 10 } - OR = { - has_trait = callous - has_trait = peasant_leader - has_trait = diligent - } - } - - reverse_add_opinion = { - target = scope:child - modifier = annoyed_opinion - opinion = -10 - } - - stress_impact = { - callous = minor_stress_impact_loss - } - - random_list = { - desc = mpo_events_ariana.0090.c_duel - 50 = { - desc = mpo_events_ariana.0090.c_1 - send_interface_toast = { - title = mpo_events_ariana.0090.c_1 - type = event_toast_effect_good - left_icon = root - right_icon = scope:child - scope:child = { add_trait_force_tooltip = diligent } - } - } - 50 = { - desc = mpo_events_ariana.0090.c_2 - send_interface_toast = { - title = mpo_events_ariana.0090.c_2 - type = event_toast_effect_good - left_icon = root - right_icon = scope:child - scope:child = { add_prowess_skill = 2 } - } - } - } - - ai_chance = { - base = 75 - modifier = { - factor = 1.5 - has_trait = diligent - } - } - } - - # That's nice dear - option = { - name = mpo_events_ariana.0090.a - flavor = mpo_events_ariana.0090.a_flavor - - reverse_add_opinion = { - target = scope:child - modifier = grateful_opinion - opinion = 15 - } - - scope:child = { - add_trait = content - add_character_modifier = { - modifier = mpo_child_herder_modifier - years = 15 - } - } - - stress_impact = { - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - content = minor_stress_impact_loss - } - - ai_chance = { - base = 50 - modifier = { - factor = 0 - OR = { - has_trait = ambitious - has_trait = arrogant - } - } - modifier = { - factor = 1.5 - has_trait = lazy - } - modifier = { - scope:child.age <= 12 - factor = 1.5 - } - } - } - - # You're destined for more - option = { - name = mpo_events_ariana.0090.b - - reverse_add_opinion = { - target = scope:child - modifier = disappointed_opinion - opinion = -15 - } - - random = { - chance = 50 - scope:child = { add_trait = ambitious } - } - - stress_impact = { - ambitious = minor_stress_impact_loss - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = humble - } - } - modifier = { - factor = 1.5 - has_trait = ambitious - } - } - } -} - -scripted_trigger is_valid_family_mpo_events_ariana_0100 = { - is_available = yes - age >= 14 - OR = { - is_courtier_of = root - is_vassal_or_below_of = root - } - OR = { - prowess >= decent_skill_rating - martial >= decent_skill_rating - } - NOR = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - is_eunuch_trigger = yes - has_trait = disinherited - has_trait = devoted - has_trait = order_member - has_trait = bastard - } - dynasty = root.dynasty - NOT = { root.primary_heir ?= this } -} - -# A non-marital gender relative is beasting people -mpo_events_ariana.0100 = { - type = character_event - title = mpo_events_ariana.0100.t - desc = mpo_events_ariana.0100.desc - - theme = nomads - - override_background = { reference = mpo_camp_steppe } - - left_portrait = { - character = root - animation = admiration - } - - right_portrait = { - character = scope:warrior - animation = wrestling_victory - } - - cooldown = { years = 10 } - - weight_multiplier = { - base = 1 - modifier = { - add = 10 - OR = { - NOT = { exists = primary_heir } - primary_heir ?= { - NOT = { dynasty = root.dynasty } - } - } - } - } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - government_has_flag = government_is_nomadic - NOT = { exists = designated_heir } - any_child = { - is_valid_family_mpo_events_ariana_0100 = yes - } - } - - immediate = { - random_child = { - limit = { - is_valid_family_mpo_events_ariana_0100 = yes - } - save_scope_as = warrior - add_character_flag = wear_armor - } - } - - option = { - name = mpo_events_ariana.0100.a - - add_prestige = medium_prestige_loss - add_legitimacy = minor_legitimacy_loss - - if = { - limit = { - exists = primary_heir - } - reverse_add_opinion = { - target = primary_heir - modifier = angry_opinion - opinion = -30 - } - } - - set_designated_heir = scope:warrior - - reverse_add_opinion = { - target = scope:warrior - modifier = grateful_opinion - opinion = 30 - } - - every_vassal = { - limit = { has_vassal_stance = parochial } - custom = every_parochial_vassal - add_opinion = { - modifier = disapproval_opinion - target = root - opinion = -15 - } - } - - if = { - limit = { - scope:warrior = { is_wrong_gender_in_faith_trigger = { FAITH = root.faith } } - } - every_vassal = { - limit = { has_vassal_stance = zealot } - custom = every_zealot_vassal - add_opinion = { - modifier = disapproval_opinion - target = root - opinion = -15 - } - } - } - - scope:warrior = { - add_prestige = minor_prestige_gain - add_character_modifier = mpo_destined_leader_modifier - set_knight_status = default - } - - stress_impact = { - base = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - trusting = minor_stress_impact_loss - stubborn = minor_stress_impact_gain - } - - ai_chance = { - base = 10 - opinion_modifier = { opinion_target = scope:warrior multiplier = 2 } - modifier = { - factor = 0 - has_trait = stubborn - } - } - } - - option = { - name = mpo_events_ariana.0100.b - - if = { - limit = { - scope:warrior = { is_wrong_gender_in_faith_trigger = { FAITH = root.faith } } - } - every_vassal = { - limit = { has_vassal_stance = zealot } - custom = every_zealot_vassal - add_opinion = { - modifier = disapproval_opinion - target = root - opinion = -15 - } - } - } - - scope:warrior = { - add_prestige = miniscule_prestige_gain - add_character_modifier = ignores_gender_army_rules - set_knight_status = default - } - - if = { - limit = { - scope:warrior = { NOT = { has_trait = craven } } - } - reverse_add_opinion = { - target = scope:warrior - modifier = grateful_opinion - opinion = 15 - } - } - - ai_chance = { - base = 50 - opinion_modifier = { opinion_target = scope:warrior multiplier = 2 } - } - } - - option = { - name = mpo_events_ariana.0100.c - trigger = { - has_dlc_feature = reform_culture - } - - add_character_modifier = { - modifier = mpo_diverse_warriors_modifier - years = 10 - } - - stress_impact = { - ambitious = minor_stress_impact_loss - } - - ai_chance = { - base = 25 - ai_value_modifier = { - ai_rationality = 0.5 - ai_boldness = 1 - } - modifier = { - factor = 2 - culture.culture_head = root - } - } - } - - option = { - name = mpo_events_ariana.0100.d - - if = { - limit = { - scope:warrior = { is_wrong_gender_in_faith_trigger = { FAITH = root.faith } } - } - add_piety = minor_piety_gain - } - - reverse_add_opinion = { - target = scope:warrior - modifier = disappointed_opinion - opinion = -15 - } - - stress_impact = { - callous = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - opinion_modifier = { opinion_target = scope:warrior multiplier = -1 } - } - } - - after = { - scope:warrior = { remove_character_flag = wear_armor } - } -} - -scripted_trigger is_valid_county_0110 = { - uses_county_fertility = yes - is_landless_type_title = no - NOT = { this = root.capital_county } - OR = { - county_fertility > root.capital_county.county_fertility - county_opinion > root.capital_county.county_opinion - } -} - -# Your court astrologer wants you to move your capital -mpo_events_ariana.0110 = { - type = character_event - title = mpo_events_ariana.0110.t - desc = { - desc = mpo_events_ariana.0110.desc - random_valid = { - triggered_desc = { - trigger = { - scope:current_capital = { county_fertility <= 25 } - } - desc = mpo_events_ariana.0110.desc_fertility - } - triggered_desc = { - trigger = { - scope:current_capital = { county_opinion < 0 } - } - desc = mpo_events_ariana.0110.desc_opinion - } - } - desc = mpo_events_ariana.0110.desc_ending - } - - theme = nomads - - override_background = { reference = mpo_camp_steppe } - - left_portrait = { - character = root - animation = worry - } - - right_portrait = { - character = scope:astrologer - animation = storyteller - } - - cooldown = { years = 25 } - - trigger = { - has_mpo_dlc_trigger = yes - is_available_adult = yes - government_has_flag = government_is_nomadic - employs_court_position = court_astrologer_court_position - capital_county ?= { - OR = { - county_fertility <= 25 - county_opinion < 0 - } - } - any_held_title = { - tier = tier_county - is_valid_county_0110 = yes - } - } - - immediate = { - random_courtier = { - limit = { - has_court_position = court_astrologer_court_position - } - save_scope_as = astrologer - } - capital_county = { - save_scope_as = current_capital - } - random_held_title = { - limit = { - tier = tier_county - is_valid_county_0110 = yes - } - save_scope_as = new_capital - } - } - - option = { - name = mpo_events_ariana.0110.a - primary_title = { set_capital_county = scope:new_capital } - set_realm_capital = scope:new_capital - hidden_effect = { domicile = { move_domicile = scope:new_capital.title_province } } - - add_piety = minor_piety_gain - - reverse_add_opinion = { - target = scope:astrologer - modifier = pleased_opinion - opinion = 15 - } - - stress_impact = { - loyal = minor_stress_impact_loss - trusting = minor_stress_impact_loss - paranoid = minor_stress_impact_gain - cynical = minor_stress_impact_gain - } - - hidden_effect = { - random = { - chance = 50 - trigger_event = { - id = mpo_events_ariana.0111 - days = { 30 90 } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = paranoid - has_trait = arbitrary - has_trait = cynical - } - } - modifier = { - factor = 2 - OR = { - has_trait = trusting - has_trait = loyal - } - } - opinion_modifier = { opinion_target = scope:astrologer multiplier = 2 } - } - } - - option = { - name = mpo_events_ariana.0110.b - - reverse_add_opinion = { - target = scope:astrologer - modifier = disappointed_opinion - opinion = -15 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -0.5 - } - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - has_trait = cynical - } - desc = mpo_events_ariana.0110.c_cynical - } - desc = mpo_events_ariana.0110.c - } - } - } - - add_piety = minor_piety_loss - - stress_impact = { - zealous = minor_stress_impact_gain - cynical = minor_stress_impact_loss - paranoid = minor_stress_impact_loss - } - - revoke_court_position = { - recipient = scope:astrologer - court_position = court_astrologer_court_position - } - - add_character_modifier = { - modifier = mpo_home_sweet_home_modifier - years = 10 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - } - modifier = { - factor = 2 - OR = { - has_trait = paranoid - has_trait = arbitrary - } - } - opinion_modifier = { opinion_target = scope:astrologer multiplier = -2 } - } - } -} - -mpo_events_ariana.0111 = { - type = character_event - title = mpo_events_ariana.0111.t - desc = mpo_events_ariana.0111.desc - - theme = nomads - - override_background = { reference = mpo_camp_steppe } - - left_portrait = { - character = root - animation = admiration - } - - right_portrait = { - character = scope:astrologer - animation = happiness - } - - option = { - name = mpo_events_ariana.0111.a - add_prestige = minor_prestige_gain - scope:new_capital = { change_county_fertility = major_county_fertility_gain } - scope:astrologer = { - add_learning_skill = 1 - } - } -} diff --git a/events/dlc/mpo/mpo_events_tova.txt b/events/dlc/mpo/mpo_events_tova.txt deleted file mode 100644 index 31f784cbe..000000000 --- a/events/dlc/mpo/mpo_events_tova.txt +++ /dev/null @@ -1,1868 +0,0 @@ -namespace = mpo_events_tova - -mpo_events_tova.0001 = { #Child expects gift after long journey - type = character_event - title = mpo_events_tova.0001.t - desc = mpo_events_tova.0001.desc - - theme = nomads - override_background = { - trigger = { - is_landed = yes - } - reference = corridor_day - } - override_background = { - trigger = { - is_landed = no - } - reference = bp1_bonfire - } - - cooldown = { years = 10 } - - left_portrait = { - character = root - triggered_animation = { - trigger = { - root = { - OR = { - has_trait = cynical - has_trait = callous - } - } - } - animation = personality_cynical - } - animation = shame - } - - right_portrait = { - character = scope:demanding_relation - animation = admiration - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - } - - option = { #Increase Wanderer Lifestyle Experience by telling the child of your travels. - name = mpo_events_tova.0001.a - - duel = { - skill = learning - target = scope:demanding_relation - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0001.a.tt.success - add_wanderer_lifestyle_xp = medium_lifestyle_experience - send_interface_toast = { - title = mpo_events_tova.0001.a.tt.success - left_icon = root - right_icon = scope:demanding_relation - reverse_add_opinion = { - target = scope:demanding_relation - modifier = pleased_opinion - opinion = 25 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0001.a.tt.failure - send_interface_toast = { - title = mpo_events_tova.0001.a.tt.failure - left_icon = scope:demanding_relation - reverse_add_opinion = { - target = scope:demanding_relation - modifier = insult_opinion - opinion = -25 - } - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_boldness = 1 - } - } - } - - option = { #Purchase child a gift. - name = mpo_events_tova.0001.b - - hidden_effect = { - create_artifact = { - name = gifted_toy_name - description = gifted_toy_desc - modifier = artifact_learning_1_modifier - type = miscellaneous - visuals = pocket_toy - save_scope_as = wanderer_toy - } - } - - remove_short_term_gold = tiny_gold_value - reverse_add_opinion = { - target = scope:demanding_relation - modifier = pleased_opinion - opinion = 15 - } - - send_interface_toast = { - title = mpo_events_tova.0001.b.equipped_tt - left_icon = scope:demanding_relation - right_icon = scope:wanderer_toy - scope:wanderer_toy = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 1 - } - set_owner = { - target = scope:demanding_relation - history = { - location = root.capital_province - actor = root - recipient = scope:demanding_relation - type = given - } - } - } - } - - stress_impact = { - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - gold <= medium_gold_value - factor = 0 - } - } - } - - option = { #Gift false relic. - name = mpo_events_tova.0001.c - - duel = { - skill = intrigue - target = scope:demanding_relation - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0001.c.tt.success - send_interface_toast = { - title = mpo_events_tova.0001.c.tt.success - left_icon = scope:demanding_relation - reverse_add_opinion = { - target = scope:demanding_relation - modifier = pleased_opinion - opinion = 25 - } - scope:demanding_relation = { - if = { - limit = { - OR = { - has_trait = trusting - has_trait = compassionate - has_trait = honest - number_of_personality_traits < childhood_personality_trait_gain_limit - } - } - add_diplomacy_skill = 1 - add_intrigue_skill = -1 - } - else = { - random_list = { - 3 = { - add_trait = trusting - } - 3 = { - add_trait = compassionate - } - 3 = { - add_trait = honest - } - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0001.c.tt.failure - send_interface_toast = { - title = mpo_events_tova.0001.c.tt.failure - left_icon = scope:demanding_relation - reverse_add_opinion = { - target = scope:demanding_relation - modifier = insult_opinion - opinion = -25 - } - scope:demanding_relation = { - if = { - limit = { - OR = { - has_trait = paranoid - has_trait = shy - has_trait = craven - number_of_personality_traits < childhood_personality_trait_gain_limit - } - } - add_diplomacy_skill = -1 - add_intrigue_skill = 1 - } - else = { - random_list = { - 3 = { - add_trait = paranoid - } - 3 = { - add_trait = shy - } - 3 = { - add_trait = craven - } - } - } - } - } - } - } - stress_impact = { - base = minor_stress_impact_gain - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - craven = minor_stress_impact_loss - callous = minor_stress_impact_loss - sadistic = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - } - } -} - -#Check for province that could be interesting for a Monument Expedition. -scripted_trigger tova_events_2_province_requirements = { - NOT = { - culture = root.culture - } - has_special_building = yes - NOR = { - has_building_or_higher = generic_copper_mines_01 - has_building_or_higher = generic_silver_mines_01 - has_building_or_higher = generic_gold_mines_01 - has_building_with_flag = special_mine - } - "squared_distance(root.location)" <= squared_distance_monstrous -} - -mpo_events_tova.0002 = { #Hear musician playing unrecognized song about distant home. - type = character_event - title = mpo_events_tova.0002.t - desc = mpo_events_tova.0002.desc - - theme = nomads - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = happiness - } - - right_portrait = { - character = scope:musician - animation = alto_flute_active - } - - override_background = { - trigger = { - is_landed = yes - } - reference = corridor_day - } - - override_background = { - trigger = { - is_landed = no - } - reference = bp1_bonfire - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - any_special_building_province = { - tova_events_2_province_requirements = yes - } - } - - immediate = { - random_special_building_province = { - limit = { - tova_events_2_province_requirements = yes - } - save_scope_as = journey_province - } - if = { - limit = { - any_pool_character = { - province = scope:journey_province - NOT = { - culture = scope:journey_province.county.culture - } - is_available_ai_adult = yes - } - } - random_pool_character = { - province = scope:journey_province - limit = { - NOT = { - culture = scope:journey_province.county.culture - } - is_available_ai_adult = yes - } - save_scope_as = musician - } - } - else = { - create_character = { - template = poet_template - location = root.location - culture = scope:journey_province.county.culture - save_scope_as = musician - } - } - } - - option = { #Talk to musician to discover POI and improve cultural acceptance. - name = mpo_events_tova.0002.a - custom_tooltip = mpo_events_tova.0002.a.tt - - add_to_variable_list = { - name = extra_journey_target - target = scope:journey_province - } - culture = { - change_cultural_acceptance = { - target = scope:journey_province.county.culture - value = minor_cultural_acceptance_gain - desc = cultural_acceptance_enjoyed_music - } - } - stress_impact = { - ambitious = minor_stress_impact_loss - shy = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - callous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - ai_compassion = 1 - } - } - } - - option = { #Recruit musician over shared love of music. - name = mpo_events_tova.0002.b - flavor = mpo_events_tova.0002.b.flavor - - duel = { - skill = learning - target = scope:musician - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0002.b.tt.success - send_interface_toast = { - title = mpo_events_tova.0002.b.tt.success - left_icon = scope:musician - add_courtier = scope:musician - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0002.b.tt.failure - send_interface_toast = { - title = mpo_events_tova.0002.b.tt.failure - left_icon = scope:musician - add_prestige = minor_prestige_loss - } - } - } - } - - option = { #Rest and reduce stress. - name = mpo_events_tova.0002.c - - if = { - limit = { - has_trait = impatient - } - add_stress = miniscule_stress_loss - } - else_if = { - limit = { - has_trait = lazy - } - add_stress = medium_stress_loss - } - else = { - add_stress = minor_stress_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_greed = -1 - } - } - } -} - -mpo_events_tova.0003 = { #Peasants mock ruler and face deadly consequences. - type = character_event - title = mpo_events_tova.0003.t - desc = mpo_events_tova.0003.desc - - theme = migration - - override_background = { reference = ep2_hunt_foggy_forest } - - override_effect_2d = { - reference = fog - } - - cooldown = { years = 20 } - - left_portrait = { - character = scope:peasant_actor_eldest - animation = prisonhouse - } - right_portrait = { - character = scope:stray_executioner - animation = menacing - } - lower_left_portrait = { - character = scope:peasant_actor_middle - } - lower_right_portrait = { - character = scope:peasant_actor_youngest - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_travelling_adult = yes - is_landed = yes - is_ai = no - is_location_valid_for_travel_event_on_land = yes - location = { - has_holding = yes - terrain = forest - } - exists = location.county.holder - location.county.holder = { is_ai = yes } - NOR = { - this = location.county.holder - is_liege_or_above_of = location.county.holder - } - } - - immediate = { - location = { - save_scope_as = unruly_province - } - location.county.holder = { - save_scope_as = unruly_province_owner - } - create_character = { - template = new_warrior_character - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - gender = male - save_scope_as = stray_executioner - } - create_character = { - template = peasant_character - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - gender = female - age = 57 - save_scope_as = actor_mother - } - hidden_effect = { - scope:actor_mother ?= { - silent_disappearance_effect = yes - } - } - create_character = { - template = peasant_character - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - gender = male - age = 63 - save_scope_as = actor_father - } - hidden_effect = { - scope:actor_father ?= { - silent_disappearance_effect = yes - } - } - create_character = { - template = bp1_doppelganger_template - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - mother = scope:actor_mother - father = scope:actor_father - random_traits = yes - gender = male - age = 31 - save_scope_as = peasant_actor_eldest - } - hidden_effect = { - scope:peasant_actor_eldest = { - copy_inheritable_appearance_from = scope:unruly_province_owner - } - } - create_character = { - template = peasant_character - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - mother = scope:actor_mother - father = scope:actor_father - random_traits = yes - gender = male - age = 28 - save_scope_as = peasant_actor_middle - } - create_character = { - template = peasant_character - location = root.location - culture = scope:unruly_province.culture - faith = scope:unruly_province.faith - mother = scope:actor_mother - father = scope:actor_father - random_traits = yes - gender = male - age = 27 - save_scope_as = peasant_actor_youngest - } - } - - option = { #Actually, the actors are mine and I want them back. - name = mpo_events_tova.0003.a - custom_tooltip = mpo_events_tova.0003.a.tt - - duel = { - skill = intrigue - target = scope:stray_executioner - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0003.a.tt.success - send_interface_toast = { - title = mpo_events_tova.0003.a.tt.success - add_courtier = scope:peasant_actor_eldest - add_courtier = scope:peasant_actor_middle - add_courtier = scope:peasant_actor_youngest - root = { - add_character_modifier = { - modifier = charlatan_inspiration - years = 5 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0003.a.tt.failure - send_interface_toast = { - title = mpo_events_tova.0003.a.tt.failure - left_icon = scope:unruly_province_owner - reverse_add_opinion = { - target = scope:unruly_province_owner - modifier = insult_opinion - opinion = -25 - } - scope:peasant_actor_eldest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_middle = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_youngest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - } - } - } - } - - option = { #Convince the executioner to spare the prisoners' lives. - name = mpo_events_tova.0003.b - custom_tooltip = mpo_events_tova.0003.b.tt - - duel = { - skill = diplomacy - target = scope:stray_executioner - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0003.b.tt.success - send_interface_toast = { - title = mpo_events_tova.0003.b.tt.success - left_icon = scope:unruly_province_owner - add_prestige = medium_prestige_gain - add_piety = medium_piety_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0003.b.tt.failure - send_interface_toast = { - title = mpo_events_tova.0003.b.tt.failure - left_icon = scope:unruly_province_owner - reverse_add_opinion = { - target = scope:unruly_province_owner - modifier = insult_opinion - opinion = -25 - } - scope:peasant_actor_eldest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_middle = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_youngest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - } - } - } - } - - option = { #I have places to be. - name = mpo_events_tova.0003.c - - scope:peasant_actor_eldest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_middle = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - scope:peasant_actor_youngest = { - death = { - death_reason = death_execution - killer = scope:stray_executioner - } - } - - current_travel_plan = { - add_travel_plan_modifier = travel_speed_actor - } - - if = { - limit = { - NEOW_religion_is_broadly_christian_trigger = yes - has_trait = zealous - } - add_stress = medium_stress_loss - } - else_if = { - limit = { - NOT = { - has_trait = sadistic - has_trait = vengeful - has_trait = compassionate - } - } - add_stress = medium_stress_gain - } - else = { - stress_impact = { - sadistic = minor_stress_impact_loss - vengeful = minor_stress_impact_loss - compassionate = major_stress_impact_gain - } - } - } - after = { - scope:stray_executioner = { - silent_disappearance_effect = yes - } - } -} - -mpo_events_tova.0004 = { #Rank Disloyalty - type = character_event - title = mpo_events_tova.0004.t - desc = mpo_events_tova.0004.desc - - theme = migration - - override_background = { - reference = bp1_bonfire - } - cooldown = { years = 20 } - - left_portrait = { - character = root - animation = anger - } - - right_portrait = { - character = scope:maa_leader - animation = drink - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_travelling_adult = yes - is_landed = yes - is_ai = no - is_location_valid_for_travel_event_on_land = yes - exists = location.county.holder - location.county.holder = root - location = { - has_stationed_regiment = yes - } - location.county = { - county_opinion <= -10 - } - } - - immediate = { - location = { - save_scope_as = maa_province - } - create_character = { - template = new_warrior_character - location = root.location - culture = root.culture - faith = root.faith - trait = drunkard - gender = male - save_scope_as = maa_leader - } - } - - option = { #Stricter rations will teach them dicipline. - name = mpo_events_tova.0004.a - flavor = mpo_events_tova.0004.a.flavor - custom_tooltip = mpo_events_tova.0004.a.tt - - add_short_term_gold = medium_gold_value - - scope:maa_province = { - add_province_modifier = { - modifier = sold_provisions - years = 5 - } - } - - stress_impact = { - greedy = medium_stress_impact_loss - } - - hidden_effect = { - random = { - chance = 15 - trigger_event = { - ID = mpo_events_tova.0006 - days = { 2 3 } - } - } - } - } - option = { #I will have the leader's head. - name = mpo_events_tova.0004.b - custom_tooltip = mpo_events_tova.0004.b.tt - - scope:maa_province = { - add_province_modifier = { - modifier = diminished_regiment - years = 5 - } - } - add_character_modifier = { - modifier = reluctant_recruits - years = 5 - } - - if = { - limit = { - OR = { - has_trait = sadistic - has_trait = vengeful - has_trait = wrathful - } - } - add_stress = medium_stress_loss - } - else_if = { - limit = { - OR = { - has_trait = forgiving - has_trait = compassionate - has_trait = calm - } - } - add_stress = medium_stress_gain - } - else = { - add_stress = minor_stress_gain - } - } - option = { #I will pay for better provisions. - name = mpo_events_tova.0004.c - - remove_treasury_or_gold = medium_treasury_or_gold_value - - add_character_modifier = { - modifier = celebrated_leader - years = 5 - } - - stress_impact = { - greedy = medium_stress_impact_gain - generous = medium_stress_impact_loss - } - ai_chance = { - base = 1 - modifier = { - treasury_or_gold <= major_treasury_or_gold_value - factor = 0 - } - } - } - after = { - scope:maa_leader = { - silent_disappearance_effect = yes - } - } -} - -mpo_events_tova.0005 = { #Happy Soldiers - title = mpo_events_tova.0005.t - desc = mpo_events_tova.0005.desc - type = character_event - - theme = migration - - override_background = { reference = bp1_bonfire } - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = happiness - } - - right_portrait = { - character = scope:maa_happy_leader - animation = drink - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_travelling_adult = yes - is_landed = yes - is_ai = no - is_location_valid_for_travel_event_on_land = yes - days_of_continuous_peace = 365 - exists = location.county.holder - location.county.holder = root - location = { - has_stationed_regiment = yes - } - location.county = { - county_opinion >= 10 - } - } - - immediate = { - location = { - save_scope_as = maa_happy_province - } - create_character = { - template = new_warrior_character - location = root.location - culture = root.culture - faith = root.faith - gender = male - save_scope_as = maa_happy_leader - } - } - - option = { #Whip the lazy bums into shape - name = mpo_events_tova.0005.a - - scope:maa_happy_province = { - add_province_modifier = { - modifier = whipped_soldiers - years = 5 - } - } - - stress_impact = { - patient = medium_stress_impact_gain - calm = medium_stress_impact_gain - } - } - - option = { #Dicipline them for not being vigilant. - name = mpo_events_tova.0005.b - - add_character_modifier = { - modifier = alert_soldiers - years = 5 - } - stress_impact = { - patient = medium_stress_impact_gain - calm = medium_stress_impact_gain - } - } - - option = { #Take their happiness and kind words to heart. - name = mpo_events_tova.0005.c - - stress_impact = { - base = major_stress_loss - paranoid = minor_stress_impact_gain - } - } -} - -mpo_events_tova.0006 = { #Just Desserts - opening = mpo_events_tova.0006.t - desc = mpo_events_tova.0006.desc - type = letter_event - - sender = scope:sender - - immediate = { - if = { - limit = { - exists = cp:councillor_steward - } - cp:councillor_steward = { - save_scope_as = sender - } - } - else_if = { - limit = { - exists = cp:councillor_marshal - } - cp:councillor_marshal = { - save_scope_as = sender - } - } - else_if = { - limit = { - exists = cp:councillor_chancellor - } - cp:councillor_chancellor = { - save_scope_as = sender - } - } - } - - trigger = { - OR = { - exists = cp:councillor_steward - exists = cp:councillor_marshal - exists = cp:councillor_chancellor - } - } - - option = { #Hunger makes men desperate, it seems. - name = mpo_events_tova.0006.a - - scope:maa_province.county = { - change_development_level = -2 - } - } -} - -mpo_events_tova.0025 = { # You are invited to a knucklebone shooting game - type = character_event - title = mpo_events_tova.0025.t - desc = mpo_events_tova.0025.desc - - theme = nomads - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = interested - } - - right_portrait = { - character = scope:challenger_anda - animation = hero_flex - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - culture = { - OR = { - has_cultural_pillar = heritage_mongolic - has_cultural_pillar = heritage_turkic - } - } - is_available_adult = yes - any_courtier = { - has_relation_blood_brother = root - is_available_ai_adult = yes - } - } - - immediate = { - random_courtier = { - limit = { - has_relation_blood_brother = root - is_available_ai_adult = yes - } - save_scope_as = challenger_anda - } - } - - option = { # I will outsmart them all! - name = mpo_events_tova.0025.a - duel = { - skill = intrigue - target = scope:challenger_anda - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0025.a.tt.success - send_interface_toast = { - title = mpo_events_tova.0025.a.tt.success - left_icon = root - right_icon = scope:challenger_anda - reverse_add_opinion = { - target = scope:challenger_anda - modifier = impressed_opinion - opinion = 25 - } - add_character_modifier = { - modifier = mpo_sharp_wits_modifier - years = 10 - } - stress_impact = { - deceitful = minor_stress_loss - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0025.a.tt.failure - send_interface_toast = { - title = mpo_events_tova.0025.a.tt.failure - left_icon = root - reverse_add_opinion = { - target = scope:challenger_anda - modifier = disappointed_opinion - opinion = -25 - } - add_prestige = minor_prestige_loss - stress_impact = { - just = minor_stress_gain - honest = minor_stress_gain - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -2 - ai_compassion = -1 - ai_rationality = -1 - ai_boldness = -1 - } - } - } - - option = { # I will crush my opponents' tokens! - name = mpo_events_tova.0025.b - duel = { - skill = prowess - target = scope:challenger_anda - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0025.b.tt.success - send_interface_toast = { - title = mpo_events_tova.0025.b.tt.success - left_icon = root - right_icon = scope:challenger_anda - reverse_add_opinion = { - target = scope:challenger_anda - modifier = impressed_opinion - opinion = 25 - } - add_character_modifier = { - modifier = mpo_thunder_knuckles_modifier - years = 10 - } - stress_impact = { - ambitious = medium_stress_impact_loss - - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_events_tova.0025.b.tt.failure - send_interface_toast = { - title = mpo_events_tova.0025.b.tt.failure - left_icon = scope:challenger_anda - reverse_add_opinion = { - target = scope:challenger_anda - modifier = disappointed_opinion - opinion = -25 - } - add_prestige = minor_prestige_loss - stress_impact = { - brave = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - } - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_sociability = 0.5 - } - modifier = { - OR = { - has_trait = lazy - has_trait = craven - } - factor = 0 - } - } - } - - option = { # Nah - name = mpo_events_tova.0025.c - ai_chance = { - base = 100 - modifier = { - has_trait = lazy - factor = 20 - } - } - } -} - -mpo_events_tova.0030 = { # No astrologer? Someone comes to you with a vision - type = character_event - title = mpo_events_tova.0030.t - desc = { - desc = mpo_events_tova.0030.desc - random_valid = { - desc = mpo_events_tova.0030.desc_red - desc = mpo_events_tova.0030.desc_white - desc = mpo_events_tova.0030.desc_green - } - desc = mpo_events_tova.0030.desc_outro - } - - theme = nomads - override_background = { reference = mpo_steppe_evening } - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = interested - } - - right_portrait = { - character = scope:visionary - animation = personality_zealous - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - NOT = { - employs_court_position = court_astrologer_court_position - } - any_courtier_or_guest = { - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - can_be_employed_as = court_astrologer_court_position - } - - } - - immediate = { - ordered_courtier = { - limit = { - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - can_be_employed_as = court_astrologer_court_position - } - order_by = { - value = learning - if = { - limit = { has_trait = lifestyle_mystic } - add = 2 - } - } - if = { - limit = { - NOT = { has_trait = lifestyle_mystic } - } - add_trait = lifestyle_mystic - } - else = { - add_learning_skill = 2 - } - save_scope_as = visionary - } - } - - option = { # You are truly blessed with special talents! - name = mpo_events_tova.0030.a - add_hook = { - target = scope:visionary - type = obligation_hook - } - custom_tooltip = obligation_hook_tt - court_position_grant_effect = { - EMPLOYER = root - POS = court_astrologer - CANDIDATE = scope:visionary - } - reverse_add_opinion = { - target = scope:visionary - modifier = grateful_opinion - opinion = 30 - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_zeal = 1 - } - modifier = { - factor = 0 - has_trait = cynical - } - } - } - - option = { # The heavens must favor me and my deeds - name = mpo_events_tova.0030.b - if = { - limit = { - has_focus_martial = yes - } - add_character_modifier = { - modifier = mpo_heavens_favor_martial_modifier - years = 10 - } - } - else_if = { - limit = { - has_focus_intrigue = yes - } - add_character_modifier = { - modifier = mpo_heavens_favor_modifier - years = 10 - } - } - else_if = { - limit = { - has_focus_diplomacy = yes - } - add_character_modifier = { - modifier = mpo_heavens_favor_diplo_modifier - years = 10 - } - } - else = { - add_legitimacy = medium_legitimacy_gain - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_greed = -1 - } - } - } - - option = { # What a story! - name = mpo_events_tova.0030.c - stress_impact = { - base = medium_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } -} - -mpo_events_tova.0035 = { # Anda comes to you with marital concerns - type = character_event - title = mpo_events_tova.0035.t - desc = mpo_events_tova.0035.desc - - theme = nomads - override_background = { reference = mpo_tent_interior_mongol } - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = shock - } - - right_portrait = { - character = scope:distressed_anda - animation = worry - } - - lower_right_portrait = { - character = scope:pregnant_woman - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - any_courtier = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - is_married = yes - is_male = yes - is_attracted_to_women = yes - primary_spouse = { - can_have_children = yes - is_available_ai = yes - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 3 - any_courtier = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - is_married = yes - is_male = yes - is_attracted_to_women = yes - primary_spouse = { - is_pregnant = yes - } - } - } - modifier = { - add = -0.5 - any_courtier = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - is_married = yes - is_male = yes - is_attracted_to_women = yes - primary_spouse = { - is_pregnant = no - } - } - } - } - - immediate = { - random_courtier = { - limit = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - is_married = yes - is_male = yes - is_attracted_to_women = yes - primary_spouse = { - can_have_children = yes - is_available_ai = yes - } - } - save_scope_as = distressed_anda - } - scope:distressed_anda = { - primary_spouse = { - save_scope_as = pregnant_woman - } - } - hidden_effect = { - scope:pregnant_woman = { - if = { - limit = { - NOT = { - has_trait = pregnant - } - } - make_pregnant = { father = scope:distressed_anda } - } - } - } - } - - option = { # Rejoice! The heavens sent you a child. - name = mpo_events_tova.0035.a - custom_tooltip = mpo_events_tova.0035.a.tt - add_piety = medium_piety_gain - reverse_add_opinion = { - target = scope:pregnant_woman - modifier = grateful_opinion - opinion = 30 - } - hidden_effect = { - random = { - chance = 33 - scope:pregnant_woman = { - add_character_flag = blessed_baby - } - } - } - stress_impact = { - cynical = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = cynical - factor = 0 - } - ai_value_modifier = { - ai_zeal = 1 - } - } - } - - option = { # Blatant lies! - name = mpo_events_tova.0035.b - scope:distressed_anda = { - divorce_effect = { - DIVORCER = scope:distressed_anda - DIVORCEE = scope:pregnant_woman - } - random = { - chance = 33 - if = { - limit = { - NOT = { - has_trait = shrewd - } - } - add_trait = shrewd - } - else = { add_intrigue_skill = 2 } - } - } - reverse_add_opinion = { - target = scope:distressed_anda - modifier = grateful_opinion - opinion = 30 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - modifier = { - has_trait = compassionate - factor = 0 - } - } - } - - option = { # That is the funniest thing I ever heard! - name = mpo_events_tova.0035.c - stress_impact = { - base = medium_stress_impact_loss - compassionate = medium_stress_impact_gain - trusting = medium_stress_impact_gain - } - reverse_add_opinion = { - target = scope:distressed_anda - modifier = insulted_opinion - opinion = -30 - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -1 - } - } - } -} - -mpo_events_tova.0045 = { # Anda comes bearing gifts - type = character_event - title = mpo_events_tova.0045.t - desc = { - desc = mpo_events_tova.0045.desc - first_valid = { - triggered_desc = { - trigger = { exists = scope:knucklebone_gift } - desc = mpo_events_tova.0045.desc_knucklebone - } - triggered_desc = { - trigger = { exists = scope:herd_gift } - desc = mpo_events_tova.0045.desc_herd - } - desc = mpo_events_tova.0045.desc_axe - } - } - - theme = nomads - override_background = { reference = mpo_campfire_steppe } - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = happiness - } - - right_portrait = { - character = scope:generous_anda - triggered_animation = { - trigger = { - exists = scope:knucklebone_gift - } - animation = steward - } - triggered_animation = { - trigger = { - exists = scope:herd_gift - } - animation = admiration - } - animation = marshal_axe - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - culture = { - OR = { - has_cultural_pillar = heritage_mongolic - has_cultural_pillar = heritage_turkic - } - } - is_available_adult = yes - any_courtier = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - } - NOT = { - AND = { - has_character_flag = knucklebone_gift - has_character_flag = herd_gift - has_character_flag = axe_gift - } - } - } - - immediate = { - random_courtier = { - limit = { - has_relation_blood_brother = root - is_available_ai_adult = yes - is_close_family_or_spouse_of_root_trigger = no - } - save_scope_as = generous_anda - } - random_list = { - 3 = { - trigger = { - NOT = { - has_character_flag = knucklebone_gift - } - } - hidden_effect = { - create_artifact = { - name = gifted_bone_name - description = gifted_bone_desc - modifier = artifact_monthly_prestige_3_modifier - type = miscellaneous - visuals = pocket_pouch - save_scope_as = gift - } - } - add_character_flag = knucklebone_gift - save_scope_as = knucklebone_gift - } - 3 = { - trigger = { - NOT = { - has_character_flag = herd_gift - domicile = { - herd >= major_herd_value - } - } - } - add_character_flag = herd_gift - save_scope_as = herd_gift - } - 3 = { - trigger = { - NOT = { - has_character_flag = axe_gift - } - } - hidden_effect = { - create_artifact = { - name = gifted_axe_name - description = gifted_axe_desc - modifier = artifact_prowess_3_modifier - type = axe - visuals = axe - save_scope_as = gift - } - } - add_character_flag = axe_gift - } - } - } - - option = { # I will treasure this gift. - name = mpo_events_tova.0045.a - if = { - limit = { - exists = scope:gift - } - send_interface_toast = { - title = mpo_events_tova.0045.a.equipped_tt - left_icon = root - right_icon = scope:gift - scope:gift = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 1 - } - set_owner = { - target = root - history = { - location = root.capital_province - actor = scope:generous_anda - recipient = root - type = given - } - } - } - } - } - else = { - domicile ?= { change_herd = medium_herd_gain } - } - - stress_impact = { - greedy = medium_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - option = { # Your friendship is the only gift I need. - name = mpo_events_tova.0045.b - if = { - limit = { - exists = scope:gift - } - send_interface_toast = { - title = mpo_events_tova.0045.a.equipped_tt - left_icon = scope:generous_anda - right_icon = scope:gift - scope:gift = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 1 - } - set_owner = { - target = scope:generous_anda - history = { - location = root.capital_province - actor = scope:generous_anda - recipient = scope:generous_anda - type = given - } - } - } - } - } - reverse_add_opinion = { - target = scope:generous_anda - modifier = grateful_opinion - opinion = 30 - } - - stress_impact = { - base = medium_stress_impact_loss - greedy = major_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 0.5 - } - } - } -} diff --git a/events/dlc/mpo/mpo_flavor_events_settled.txt b/events/dlc/mpo/mpo_flavor_events_settled.txt deleted file mode 100644 index c9135fdee..000000000 --- a/events/dlc/mpo/mpo_flavor_events_settled.txt +++ /dev/null @@ -1,456 +0,0 @@ -namespace = mpo_flavor_events_settled - -# mpo_flavor_events_settled.0001 - You hear of a Havsarsan Zud -# mpo_flavor_events_settled.0010 - Horse Lord at your door - -####################### -# You hear of a Havsarsan Zud -####################### -mpo_flavor_events_settled.0001 = { - type = character_event - title = mpo_flavor_events_settled.0001.t - desc = mpo_flavor_events_settled.0001.desc - theme = nomads - override_background = { reference = ep3_city_gate } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = sadistic - } - } - animation = schadenfreude - } - triggered_animation = { - trigger = { - OR = { - has_trait = brave - has_trait = arrogant - } - } - animation = dismissal - } - animation = worry - } - right_portrait = { - character = scope:nomad - animation = horse_exhausted - camera = camera_event_horse_right - } - widget = { - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - NOT = { government_has_flag = government_is_nomadic } - OR = { - any_character_situation = { # You are a settled ruler in the Great Steppe - any_participant_group = { - participant_group_type = settled_rulers - participant_group_has_character = root - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - } - } - any_sub_realm_county = { # You are neighbouring the Great Steppe - any_neighboring_county = { - holder != root - any_county_situation = { - situation:the_great_steppe ?= this - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - } - } - } - } - } - } - - immediate = { - if = { - limit = { - any_neighboring_top_liege_realm_owner = { - government_has_flag = government_is_nomadic - } - } - random_neighboring_top_liege_realm_owner = { - limit = { government_has_flag = government_is_nomadic } - save_scope_as = nomad_lord - } - } - else = { - random_ruler = { - limit = { - in_diplomatic_range = root - government_has_flag = government_is_nomadic - } - save_scope_as = nomad_lord - } - } - create_character = { - location = root.location - template = nomadic_hunter_template - faith = scope:nomad_lord.faith - culture = scope:nomad_lord.culture - save_scope_as = nomad - } - scope:nomad = { add_trait = nomadic_philosophy } - } - - option = { # Get out - name = mpo_flavor_events_settled.0001.aa - reason = faith - add_internal_flag = special - trigger = { - faith = { - trait_is_virtue = callous - } - } - add_piety = medium_piety_gain - stress_impact = { - callous = major_stress_impact_loss - generous = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = callous - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = paranoid - } - } - } - } - - option = { # Let's prepare - name = mpo_flavor_events_settled.0001.a - remove_short_term_gold = medium_gold_value - every_sub_realm_county = { - limit = { holder = root } - add_county_modifier = { - modifier = mpo_settled_preparations_war_county_modifier - years = 15 - } - } - stress_impact = { - wrathful = medium_stress_impact_loss - brave = medium_stress_impact_loss - craven = medium_stress_impact_gain - greedy = medium_stress_impact_gain - avaricious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = wrathful - has_trait = brave - } - factor = 0 - } - modifier = { - OR = { - short_term_gold <= major_gold_value - has_trait = greedy - has_trait = avaricious - has_trait = craven - } - factor = 0 - } - } - } - - option = { # We should focus on building - name = mpo_flavor_events_settled.0001.b - every_sub_realm_county = { - limit = { holder = root } - add_county_modifier = { - modifier = mpo_settled_preparations_building_county_modifier - years = 10 - } - } - stress_impact = { - compassionate = major_stress_impact_loss - greedy = medium_stress_impact_gain - avaricious = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # Recruit this guy - name = mpo_flavor_events_settled.0001.c - trigger = { - NOT = { - faith = { - trait_is_virtue = callous - } - } - } - add_courtier = scope:nomad - if = { - limit = { - faith = { trait_is_virtue = compassionate } - } - add_piety = major_piety_gain - } - else = { - add_piety = medium_piety_gain - } - stress_impact = { - compassionate = major_stress_impact_loss - callous = major_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - after = { - custom_tooltip = mpo_flavor_events_settled.0001.tt - if = { - limit = { is_ai = yes } - scope:nomad = { silent_disappearance_effect = yes } - } - } -} - -####################### -# Horse Lord at your door -####################### -scripted_trigger mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = { - government_has_flag = government_is_nomadic - NOR = { - is_close_family_of = root - is_vassal_of = root - is_tributary_of = root - this = root.liege - this = root.suzerain - } - any_character_situation = { - situation:the_great_steppe ?= this - } -} - -mpo_flavor_events_settled.0010 = { - type = character_event - title = mpo_flavor_events_settled.0010.t - desc = mpo_flavor_events_settled.0010.desc - theme = nomads - override_background = { reference = ep3_city_gate } - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:nomad - animation = horse_conversing_left - camera = camera_event_horse_right - } - lower_right_portrait = scope:nomad_lord - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - NOR = { - government_has_flag = government_is_nomadic - any_primary_war_enemy = { government_has_flag = government_is_nomadic } - } - any_neighboring_top_liege_realm_owner = { - mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - any_neighboring_top_liege_realm_owner = { - government_has_flag = government_is_nomadic - highest_held_title_tier >= tier_kingdom - } - factor = 2 - } - } - - immediate = { - random_neighboring_top_liege_realm_owner = { - limit = { mpo_flavor_events_settled_0010_valid_nomad_lord_trigger = yes } - weight = { - base = 1 - modifier = { - highest_held_title_tier >= tier_kingdom - add = 5 - } - } - save_scope_as = nomad_lord - } - create_character = { - location = root.location - template = nomadic_commander_template - faith = scope:nomad_lord.faith - culture = scope:nomad_lord.culture - save_scope_as = nomad - } - hidden_effect = { - scope:nomad = { add_trait = nomadic_philosophy } - scope:nomad_lord = { add_courtier = scope:nomad } - } - } - - option = { # Pay tribute - name = mpo_flavor_events_settled.0010.a - trigger = { - OR = { - scope:nomad_lord.primary_title.tier > root.primary_title.tier - scope:nomad_lord.current_military_strength > root.current_military_strength - } - } - start_tributary_interaction_effect = { - TRIBUTARY = root - SUZERAIN = scope:nomad_lord - } - scope:nomad_lord = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 25 - } - } - add_prestige = medium_prestige_gain - stress_impact = { - vengeful = major_stress_impact_loss - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 0 - } - } - - option = { # Pay to get truce - name = mpo_flavor_events_settled.0010.b - trigger = { - NOR = { - scope:nomad_lord.primary_title.tier > root.primary_title.tier - scope:nomad_lord.current_military_strength > root.current_military_strength - } - } - if = { - limit = { - has_perk = defensive_measures_perk - } - custom_tooltip = mpo_flavor_events_settled.0010.b_perk_tt - pay_short_term_gold = { - target = scope:nomad_lord - gold = root.purchase_truce_interaction_small_sum - } - add_truce_both_ways = { - character = scope:nomad_lord - days = purchase_truce_interaction_truce_days_medium_value - name = TRUCE_PURCHASED - } - } - else = { - pay_short_term_gold = { - target = scope:nomad_lord - gold = root.purchase_truce_interaction_medium_sum - } - add_truce_both_ways = { - character = scope:nomad_lord - days = purchase_truce_interaction_truce_days_medium_value - name = TRUCE_PURCHASED - } - } - stress_impact = { - brave = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 50 - modifier = { - OR = { - has_trait = content - has_trait = craven - } - factor = 2 - } - modifier = { - OR = { - has_trait = brave - has_trait = ambitious - has_trait = arrogant - has_trait = greedy - gold <= root.purchase_truce_interaction_major_sum - } - factor = 0 - } - } - } - - option = { # Offend them - name = mpo_flavor_events_settled.0010.c - add_dread = medium_dread_value - scope:nomad_lord = { - progress_towards_rival_effect = { - CHARACTER = root - OPINION = -40 - REASON = rival_disrespected_envoy - } - } - stress_impact = { - callous = major_stress_impact_loss - craven = major_stress_impact_gain - vengeful = major_stress_impact_gain - } - ai_chance = { - base = 0 - modifier = { - add = 150 - has_trait = callous - current_military_strength > scope:nomad_lord.current_military_strength - } - } - } - - option = { # Let's just be friends - name = mpo_flavor_events_settled.0010.d - add_diplomacy_lifestyle_xp = minor_lifestyle_xp - scope:nomad_lord = { - add_opinion = { - target = root - modifier = pleased_opinion - opinion = 5 - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - } - ai_chance = { - base = 200 - } - } - - after = { - if = { - limit = { is_ai = yes } - scope:nomad = { silent_disappearance_effect = yes } - } - } -} \ No newline at end of file diff --git a/events/dlc/mpo/mpo_interactions_events.txt b/events/dlc/mpo/mpo_interactions_events.txt deleted file mode 100644 index e66e03d53..000000000 --- a/events/dlc/mpo/mpo_interactions_events.txt +++ /dev/null @@ -1,1120 +0,0 @@ -namespace = mpo_interactions_events - -# # # OFFER CONFEDERATION # # # - -#Handles effects of offer confederation and assigns events -mpo_interactions_events.0001 = { - hidden = yes - - trigger = { - scope:actor = { - is_ruler = yes - is_landed = yes - } - scope:recipient = { - is_ruler = yes - is_landed = yes - } - } - - immediate = { - #Confederation doesn't exist and actor is becoming liege - if = { - limit = { - scope:actor = { - is_confederation_member = no - } - } - scope:actor = { - #create culturally-named duchy title if you both have same culture - if = { - limit = { - culture = { - this = scope:recipient.culture - } - NOT = { - any_confederation = { - has_variable = confederation_culture - var:confederation_culture = scope:actor.culture - } - } - } - create_confederation = { - name = CONFEDERATION_CULTURE_NAME - } - scope:new_confederation = { - set_variable = { - name = confederation_culture - value = scope:actor.culture - } - - } - } - #Duchy title fallback - else = { - #You two are in the same duchy, name it after that - if = { - limit = { - exists = scope:recipient.capital_county - capital_county.duchy = { - any_de_jure_county = { - this = scope:recipient.capital_county - } - } - } - capital_county = { - duchy = { - save_scope_as = capital_duchy - } - } - } - #You are a duke, name it after your duchy - else_if = { - limit = { - primary_title = { - tier = tier_duchy - any_de_jure_county = { - holder = scope:recipient - } - } - } - primary_title = { - save_scope_as = capital_duchy - } - } - #Name after your capital duchy - else = { - capital_county = { - duchy = { - save_scope_as = capital_duchy - } - } - } - create_confederation = { - name = CONFEDERATION_DUCHY_NAME - } - } - scope:recipient = { - save_scope_as = other_confederate - } - trigger_event = { - id = mpo_interactions_events.0002 - days = 1 - } - } - scope:new_confederation = { - add_confederation_member = scope:recipient - } - } - #Confederation already exists - else = { - scope:actor.confederation = { - add_confederation_member = scope:recipient - } - #letter event - scope:actor = { - trigger_event = { - id = mpo_interactions_events.0003 - days = 1 - } - } - } - #Vassal event - scope:actor = { - save_scope_as = other_confederate - } - scope:recipient = { - trigger_event = { - id = mpo_interactions_events.0002 - days = 1 - } - } - } -} - -#Confederation event -mpo_interactions_events.0002 = { - type = character_event - theme = vassal - title = mpo_interactions_events.0002.t - desc = { - desc = mpo_interactions_events.0002.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:new_confederation - } - desc = mpo_interactions_events.0002.desc_new - } - desc = mpo_interactions_events.0002.desc_joining - } - } - override_background = { - reference = bp1_bonfire - } - override_effect_2d = { - reference = smoke - } - left_portrait = { - character = root - animation = marshal_dagger - camera = camera_event_very_left - } - right_portrait = { - character = scope:other_confederate - animation = marshal_dagger - camera = camera_event_very_right - } - immediate = { - confederation = { - save_scope_as = confederation - } - if = { - limit = { - exists = scope:new_confederation - } - custom_tooltip = new_confederation_created_tt - } - else = { - custom_tooltip = joined_confederation_tt - } - custom_tooltip = confederation_defensive_wars_tt - custom_tooltip = unlock_leave_confederation_interaction_tt - show_as_tooltip = { - if = { - limit = { - government_has_flag = government_is_nomadic - } - add_character_modifier = { - modifier = mpo_confederation_member_modifier - years = 5 - } - capital_county ?= { - change_county_fertility = major_county_fertility_level_gain - } - } - } - custom_tooltip = confederation_raiding_attacking_tt - if = { - limit = { - government_has_flag = government_is_nomadic - } - custom_tooltip = confederation_restrictions_warning_tt - } - else = { - custom_tooltip = confederation_restrictions_tribe_warning_tt - } - if = { - limit = { - government_has_flag = government_is_nomadic - } - custom_tooltip = confederation_migrating_leaving_warning_tt - } - } - #Accept - option = { - name = mpo_interactions_events.0002.a - } -} - -#Confederation acceptance letter event -mpo_interactions_events.0003 = { - type = letter_event - sender = scope:recipient - opening = { - desc = mpo_interactions_events.0003.opening - } - desc = mpo_interactions_events.0003.desc - - immediate = { - confederation = { - save_scope_as = confederation - } - custom_tooltip = recipient_joined_confederation_tt - } - - #Accept - option = { - name = mpo_interactions_events.0003.a - } -} - -#Confderation rejection letter event -mpo_interactions_events.0004 = { - type = letter_event - sender = scope:recipient - opening = { - desc = mpo_interactions_events.0004.opening - } - desc = { - desc = mpo_interactions_events.0004.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:asking_to_join - } - desc = mpo_interactions_events.0004.desc_join - } - desc = mpo_interactions_events.0004.desc_offer - } - } - - #Accept - option = { - name = mpo_interactions_events.0004.a - } -} - -# # # TEACH COMMANDER TRAITS # # # - -# Ward's Martial Drill - Success Event -mpo_interactions_events.0101 = { - type = character_event - title = mpo_interactions_events.0101.t - desc = { - desc = mpo_interactions_events.0101.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:target_trait = trait:logistician } - desc = mpo_interactions_events.0101.desc_logistician - } - triggered_desc = { - trigger = { scope:target_trait = trait:military_engineer } - desc = mpo_interactions_events.0101.desc_military_engineer - } - triggered_desc = { - trigger = { scope:target_trait = trait:aggressive_attacker } - desc = mpo_interactions_events.0101.desc_aggressive_attacker - } - triggered_desc = { - trigger = { scope:target_trait = trait:unyielding_defender } - desc = mpo_interactions_events.0101.desc_unyielding_defender - } - triggered_desc = { - trigger = { scope:target_trait = trait:forder } - desc = mpo_interactions_events.0101.desc_forder - } - triggered_desc = { - trigger = { scope:target_trait = trait:flexible_leader } - desc = mpo_interactions_events.0101.desc_flexible_leader - } - triggered_desc = { - trigger = { scope:target_trait = trait:desert_warrior } - desc = mpo_interactions_events.0101.desc_desert_warrior - } - triggered_desc = { - trigger = { scope:target_trait = trait:jungle_stalker } - desc = mpo_interactions_events.0101.desc_jungle_stalker - } - triggered_desc = { - trigger = { scope:target_trait = trait:reaver } - desc = mpo_interactions_events.0101.desc_reaver - } - triggered_desc = { - trigger = { scope:target_trait = trait:reckless } - desc = mpo_interactions_events.0101.desc_reckless - } - triggered_desc = { - trigger = { scope:target_trait = trait:holy_warrior } - desc = mpo_interactions_events.0101.desc_holy_warrior - } - triggered_desc = { - trigger = { scope:target_trait = trait:open_terrain_expert } - desc = mpo_interactions_events.0101.desc_open_terrain_expert - } - triggered_desc = { - trigger = { scope:target_trait = trait:rough_terrain_expert} - desc = mpo_interactions_events.0101.desc_rough_terrain_expert - } - triggered_desc = { - trigger = { scope:target_trait = trait:forest_fighter } - desc = mpo_interactions_events.0101.desc_forest_fighter - } - triggered_desc = { - trigger = { scope:target_trait = trait:cautious_leader } - desc = mpo_interactions_events.0101.desc_cautious_leader - } - triggered_desc = { - trigger = { scope:target_trait = trait:organizer } - desc = mpo_interactions_events.0101.desc_organizer - } - triggered_desc = { - trigger = { scope:target_trait = trait:winter_soldier } - desc = mpo_interactions_events.0101.desc_winter_soldier - } - } - } - theme = martial - override_background = { - trigger = { scope:target_trait = trait:open_terrain_expert } - reference = wilderness_steppe - } - override_background = { - trigger = { scope:target_trait = trait:rough_terrain_expert } - reference = wilderness_mountains - } - override_background = { - trigger = { scope:target_trait = trait:jungle_stalker } - reference = wilderness_jungle - } - override_background = { - trigger = { scope:target_trait = trait:winter_soldier } - reference = ep2_hunt_snowy_forest - } - override_background = { - trigger = { scope:target_trait = trait:desert_warrior } - reference = wilderness_desert - } - override_background = { - trigger = { scope:target_trait = trait:forest_fighter } - reference = wilderness_forest - } - override_background = { - trigger = { - OR = { - scope:target_trait = trait:reckless - scope:target_trait = trait:forder - } - } - reference = ep2_travel_bridge - } - override_background = { - reference = army_camp - } - widget = { - is_shown = { - location = { has_winter_trigger = yes } - scope:target_trait = trait:winter_soldier - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - left_portrait = { - character = root - animation = celebrate_wooden_sword - } - right_portrait = { - character = scope:recipient - animation = wooden_sword_coup_degrace - } - - trigger = { - exists = scope:target_trait - } - - immediate = { - } - - option = { - name = mpo_interactions_events.0101.a - flavor = mpo_interactions_events.0101.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 = { - NOT = { this = root } - is_ai = no - } - } - } - scope:recipient = { - every_parent = { - limit = { - NOT = { this = root } - is_ai = no - } - send_interface_message = { - type = event_childhood_good_text - title = guardian_influenced_commander - desc = guardian_influenced_commander_desc - left_icon = scope:recipient - right_icon = scope:actor - } - } - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } -} - -# Ward's Martial Drill - Failure Event -mpo_interactions_events.0102 = { - type = character_event - title = mpo_interactions_events.0102.t - desc = { - desc = mpo_interactions_events.0102.desc_intro - first_valid = { - triggered_desc = { - trigger = { scope:target_trait = trait:logistician } - desc = mpo_interactions_events.0102.desc_logistician - } - triggered_desc = { - trigger = { scope:target_trait = trait:military_engineer } - desc = mpo_interactions_events.0102.desc_military_engineer - } - triggered_desc = { - trigger = { scope:target_trait = trait:aggressive_attacker } - desc = mpo_interactions_events.0102.desc_aggressive_attacker - } - triggered_desc = { - trigger = { scope:target_trait = trait:unyielding_defender } - desc = mpo_interactions_events.0102.desc_unyielding_defender - } - triggered_desc = { - trigger = { scope:target_trait = trait:forder } - desc = mpo_interactions_events.0102.desc_forder - } - triggered_desc = { - trigger = { scope:target_trait = trait:flexible_leader } - desc = mpo_interactions_events.0102.desc_flexible_leader - } - triggered_desc = { - trigger = { scope:target_trait = trait:desert_warrior } - desc = mpo_interactions_events.0102.desc_desert_warrior - } - triggered_desc = { - trigger = { scope:target_trait = trait:jungle_stalker } - desc = mpo_interactions_events.0102.desc_jungle_stalker - } - triggered_desc = { - trigger = { scope:target_trait = trait:reaver } - desc = mpo_interactions_events.0102.desc_reaver - } - triggered_desc = { - trigger = { scope:target_trait = trait:reckless } - desc = mpo_interactions_events.0102.desc_reckless - } - triggered_desc = { - trigger = { scope:target_trait = trait:holy_warrior } - desc = mpo_interactions_events.0102.desc_holy_warrior - } - triggered_desc = { - trigger = { scope:target_trait = trait:open_terrain_expert } - desc = mpo_interactions_events.0102.desc_open_terrain_expert - } - triggered_desc = { - trigger = { scope:target_trait = trait:rough_terrain_expert} - desc = mpo_interactions_events.0102.desc_rough_terrain_expert - } - triggered_desc = { - trigger = { scope:target_trait = trait:forest_fighter } - desc = mpo_interactions_events.0102.desc_forest_fighter - } - triggered_desc = { - trigger = { scope:target_trait = trait:cautious_leader } - desc = mpo_interactions_events.0102.desc_cautious_leader - } - triggered_desc = { - trigger = { scope:target_trait = trait:organizer } - desc = mpo_interactions_events.0102.desc_organizer - } - triggered_desc = { - trigger = { scope:target_trait = trait:winter_soldier } - desc = mpo_interactions_events.0102.desc_winter_soldier - } - } - } - theme = martial - override_background = { - trigger = { scope:target_trait = trait:open_terrain_expert } - reference = wilderness_steppe - } - override_background = { - trigger = { scope:target_trait = trait:rough_terrain_expert } - reference = wilderness_mountains - } - override_background = { - trigger = { scope:target_trait = trait:jungle_stalker } - reference = wilderness_jungle - } - override_background = { - trigger = { scope:target_trait = trait:winter_soldier } - reference = ep2_hunt_snowy_forest - } - override_background = { - trigger = { scope:target_trait = trait:desert_warrior } - reference = wilderness_desert - } - override_background = { - trigger = { scope:target_trait = trait:forest_fighter } - reference = wilderness_forest - } - override_background = { - trigger = { scope:target_trait = trait:reckless } - reference = ep2_travel_bridge - } - override_background = { - reference = army_camp - } - - widget = { - is_shown = { - location = { has_winter_trigger = yes } - scope:target_trait = trait:winter_soldier - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - left_portrait = { - character = root - animation = menacing_wooden_sword - } - right_portrait = { - character = scope:recipient - animation = wooden_sword_yield_start - } - - option = { - name = mpo_interactions_events.0102.a - flavor = mpo_interactions_events.0102.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 = { - NOT = { this = root } - is_ai = no - } - } - } - scope:recipient = { - every_parent = { - limit = { - NOT = { this = root } - is_ai = no - } - send_interface_message = { - type = event_childhood_bad_text - title = guardian_influenced_commander_fail - desc = guardian_influenced_commander_fail_desc - left_icon = scope:recipient - right_icon = scope:actor - } - } - } - } - stress_impact = { - base = minor_stress_impact_gain - } - } - - #force it - option = { - name = mpo_interactions_events.0102.b - flavor = mpo_interactions_events.0102.b.flavor - add_dread = 5 - add_prestige = medium_prestige_loss - scope:recipient = { - add_trait = scope:target_trait - add_opinion = { - target = root - modifier = confused_opinion - opinion = -40 - } - add_stress = medium_stress_impact_gain - } - if = { - limit = { - scope:recipient = { - any_parent = { - NOT = { this = root } - is_ai = no - } - } - } - scope:recipient = { - every_parent = { - limit = { - NOT = { this = root } - is_ai = no - } - send_interface_message = { - type = event_childhood_good_text - title = guardian_influenced_commander - desc = guardian_influenced_commander_desc - left_icon = scope:recipient - right_icon = scope:actor - } - } - } - } - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = { - base = 0 #ai shouldn't inflate the trait count, so no access to forcing it through - } - } -} - -#Blood brother acceptance event for actor -mpo_interactions_events.0006 = { - type = character_event - theme = alliance - title = mpo_interactions_events.0006.t - desc = { - desc = mpo_interactions_events.0006.desc_intro - first_valid = { - triggered_desc = { - trigger = { - culture = { - has_cultural_pillar = heritage_mongolic - } - } - desc = mpo_interactions_events.0006.desc_anda - } - desc = mpo_interactions_events.0006.desc_no_anda - } - desc = mpo_interactions_events.0006.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:shared_foe - } - desc = mpo_interactions_events.0006.desc_shared_foe - } - triggered_desc = { - trigger = { - always = scope:memories_together - } - desc = mpo_interactions_events.0006.desc_memories - } - triggered_desc = { - trigger = { - always = scope:war_allies - } - desc = mpo_interactions_events.0006.desc_war_allies - } - desc = mpo_interactions_events.0006.desc_outro - } - } - override_background = { - trigger = { - government_has_flag = government_is_nomadic - } - reference = mpo_campfire_steppe - } - override_background = { - trigger = { - NOT = { government_has_flag = government_is_nomadic } - location = { - OR = { - terrain = desert - terrain = drylands - terrain = oasis - terrain = floodplains - terrain = desert_mountains - } - } - } - reference = ce1_legendary_oasis - } - override_background = { - trigger = { - #NOT = { government_has_flag = government_is_nomadic } - location = { - NOR = { - terrain = desert - terrain = drylands - terrain = oasis - terrain = floodplains - terrain = desert_mountains - } - NAND = { - location_has_harsh_winter_trigger = yes - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - reference = ce1_legendary_spring - } - override_background = { - trigger = { - #NOT = { government_has_flag = government_is_nomadic } - location = { - NOR = { - terrain = desert - terrain = drylands - terrain = oasis - terrain = floodplains - terrain = desert_mountains - } - location_has_harsh_winter_trigger = yes - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - reference = sitting_room - } - - left_portrait = { - character = root - animation = hunting_knife_start - } - right_portrait = { - character = scope:blood_bro - animation = celebrate_dagger - } - lower_right_portrait = scope:shared_foe - - #Show the right tooltip based on who this is - immediate = { - if = { - limit = { - this = scope:actor - } - mpo_blood_brother_tooltip_actor_effect = yes - } - else = { - mpo_blood_brother_tooltip_recipient_effect = yes - } - if = { - limit = { - scope:blood_bro = { - mpo_blood_brother_august_trigger = { OTHER_BROTHER = root } - } - } - scope:blood_bro = { - add_character_flag = august_blood_brother - } - } - if = { - limit = { - scope:blood_bro = { - mpo_blood_brother_warrior_trigger = { OTHER_BROTHER = root } - } - } - scope:blood_bro = { - add_character_flag = warrior_blood_brother - } - } - if = { - limit = { - scope:blood_bro = { - mpo_blood_brother_clever_trigger = yes - } - } - scope:blood_bro = { - add_character_flag = clever_blood_brother - } - } - if = { - limit = { - scope:blood_bro = { - mpo_blood_brother_loving_trigger = yes - } - } - scope:blood_bro = { - add_character_flag = loving_blood_brother - } - } - } - #My blood brother will help me destroy our common foe - option = { - trigger = { - exists = scope:shared_foe - } - name = mpo_interactions_events.0006.a - flavor = mpo_interactions_events.0006.a.flavor - add_internal_flag = special - add_character_modifier = blood_brother_foe_modifier - custom_tooltip = blood_brother_foe_modifier_cb_reduction - custom_tooltip = blood_brother_modifier_lasts_tt - set_variable = { - name = blood_brother_foe - value = scope:shared_foe - } - - stress_impact = { - vengeful = miniscule_stress_impact_loss - sadistic = miniscule_stress_impact_loss - wrathful = miniscule_stress_impact_loss - compassionate = miniscule_stress_impact_gain - forgiving = miniscule_stress_impact_gain - content = miniscule_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - modifier = { - add = -50 - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = content - } - } - } - } - #My blood brother is higher-ranked and influential - option = { - trigger = { - scope:blood_bro = { - has_character_flag = august_blood_brother - } - } - name = mpo_interactions_events.0006.b - add_internal_flag = special - if = { - limit = { - government_has_flag = government_is_nomadic - } - add_character_modifier = { - modifier = blood_brother_august_nomadic_modifier - } - } - else = { - add_character_modifier = { - modifier = blood_brother_august_modifier - } - } - custom_tooltip = blood_brother_modifier_lasts_tt - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_energy = 1 - } - } - } - #My blood brother is a powerful defender and dread warrior - option = { - trigger = { - scope:blood_bro = { - has_character_flag = warrior_blood_brother - } - } - name = mpo_interactions_events.0006.c - add_internal_flag = special - - add_character_modifier = { - modifier = blood_brother_warrior_modifier - } - custom_tooltip = blood_brother_modifier_lasts_tt - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_zeal = 1 - } - } - } - #My blood brother is clever and intelligent - option = { - trigger = { - scope:blood_bro = { - has_character_flag = clever_blood_brother - } - } - name = mpo_interactions_events.0006.d - add_internal_flag = special - if = { - limit = { - government_has_flag = government_is_nomadic - } - add_character_modifier = { - modifier = blood_brother_clever_nomadic_modifier - } - } - else = { - add_character_modifier = { - modifier = blood_brother_clever_modifier - } - } - - custom_tooltip = blood_brother_modifier_lasts_tt - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_sociability = 1 - } - } - } - #My blood brother is loving and beloved - option = { - trigger = { - scope:blood_bro = { - has_character_flag = loving_blood_brother - } - } - name = mpo_interactions_events.0006.e - add_internal_flag = special - - add_character_modifier = { - modifier = blood_brother_loving_modifier - } - custom_tooltip = blood_brother_modifier_lasts_tt - - ai_chance = { - base = 50 - ai_value_modifier = { - ai_honor = 1 - ai_energy = -1 - } - } - } - #My blood brother is just some guy, but he cool - option = { - trigger = { - scope:blood_bro = { - NOR = { - has_character_flag = warrior_blood_brother - has_character_flag = august_blood_brother - has_character_flag = loving_blood_brother - has_character_flag = clever_blood_brother - } - } - } - name = mpo_interactions_events.0006.f - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -1 - ai_vengefulness = -1 - } - } - } - after = { - scope:blood_bro = { - remove_character_flag = warrior_blood_brother - remove_character_flag = august_blood_brother - remove_character_flag = loving_blood_brother - remove_character_flag = clever_blood_brother - } - } -} - -# Pledge Tribute - Accepted -mpo_interactions_events.0010 = { - type = letter_event - sender = scope:recipient - opening = { - desc = mpo_interactions_events.0010.opening - } - desc = mpo_interactions_events.0010.desc - - #Nice - option = { - name = mpo_interactions_events.0010.a - break_subject_contract_and_establish_tributary_effect = { SUZERAIN = scope:recipient TRIBUTARY = scope:actor } - } -} - -# Pledge Tribute - Denied -mpo_interactions_events.0011 = { - type = letter_event - sender = scope:recipient - opening = { - desc = mpo_interactions_events.0011.opening - } - desc = mpo_interactions_events.0011.desc - - #Ay - option = { - name = mpo_interactions_events.0011.a - scope:recipient = { - add_opinion = { - target = scope:actor - modifier = annoyed_opinion - opinion = -15 - } - } - } -} - -# Herd Gift Sent -mpo_interactions_events.0020 = { - type = letter_event - opening = { - desc = char_interaction.0030.opening # Positive greeting - } - desc = mpo_interactions_events.0020.desc - - sender = scope:actor - - option = { - name = mpo_interactions_events.0020.a - - show_as_tooltip = { - scope:actor = { - pay_herd = { - target = scope:recipient - value = domicile.herd_gift_value - } - } - scope:recipient = { - add_opinion = { - target = scope:actor - modifier = sent_herd_opinion - opinion = 20 - } - } - } - } -} - -#Confederation acceptance letter event -mpo_interactions_events.0030 = { - type = letter_event - sender = scope:recipient - opening = { - desc = mpo_interactions_events.0030.opening - } - desc = mpo_interactions_events.0030.desc - - immediate = { - scope:recipient.confederation = { - save_scope_as = confederation - } - scope:confederation = { - add_confederation_member = scope:actor - } - } - - #Accept - option = { - name = mpo_interactions_events.0030.a - } -} diff --git a/events/dlc/mpo/mpo_migration_contract_events.txt b/events/dlc/mpo/mpo_migration_contract_events.txt deleted file mode 100644 index 717402737..000000000 --- a/events/dlc/mpo/mpo_migration_contract_events.txt +++ /dev/null @@ -1,1585 +0,0 @@ -namespace = mpo_contract_events - -############################# -# Migration Contract Events -############################# -### Disagreeable Herders -# Start -mpo_contract_events.0001 = { - type = character_event - hidden = yes - - trigger = { - mpo_settlement_issue_trigger = { NUMBER = 1 } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 1 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0003 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 1 - ID = 0001 - } - } -} - -# Event -mpo_contract_events.0005 = { - type = character_event - title = mpo_contract_events.0005.t - desc = mpo_contract_events.0005.desc - theme = nomads - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:herder_character - animation = debating - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_1 - } - } - - immediate = { - scope:task_contract.task_contract_location = { - save_scope_as = task_location - } - create_character = { - template = herder_character - faith = scope:task_contract.task_contract_location.faith - culture = scope:task_contract.task_contract_location.culture - location = scope:task_contract.task_contract_location - save_scope_as = herder_character - after_creation = { - remove_character_flag = peasant_outfit - } - } - } - - option = { - name = mpo_contract_events.0005.a - - duel = { - skills = { diplomacy martial } - value = 15 - 50 = { - desc = mpo_contract_events.0005.a.impressed - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0005.a.impressed - domicile = { - change_herd = minor_herd_value_static - } - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } - } - 50 = { - desc = mpo_contract_events.0005.a.unimpressed - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0005.a.unimpressed - scope:task_contract.task_contract_location.county = { - change_county_fertility = tiny_county_fertility_level_loss - } - } - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0005.b - scope:task_contract.task_contract_location.county = { - change_county_fertility = tiny_county_fertility_level_gain - } - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - remove_short_term_gold = tiny_gold_value - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0005.c - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - ai_chance = { - base = 1 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:herder_character = { - silent_disappearance_ai_effect = yes - } - } -} - -### The Wild Herd -# Start -mpo_contract_events.0011 = { - type = character_event - hidden = yes - - trigger = { - mpo_settlement_issue_trigger = { NUMBER = 2 } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 2 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0013 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 2 - ID = 0011 - } - } -} - -# Event -mpo_contract_events.0015 = { - type = character_event - title = mpo_contract_events.0015.t - desc = mpo_contract_events.0015.desc - theme = nomads - override_background = { reference = wilderness } - left_portrait = { - character = root - animation = survey - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_2 - } - } - - option = { - name = mpo_contract_events.0015.a - duel = { - skill = martial - value = 15 - 50 = { - desc = mpo_contract_events.0015.a.successful - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0015.a.successful - domicile = { - change_herd = minor_herd_value_static - } - } - } - 50 = { - desc = mpo_contract_events.0015.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0015.a.failure - domicile = { - change_herd = miniscule_herd_value_static - } - } - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0015.b - add_character_modifier = { - modifier = mpo_si_slaughtered_for_a_feast - years = 3 - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0015.c - add_gold = minor_gold_value - - ai_chance = { - base = 1 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } -} - -### Contentious Grazelands -# Start -mpo_contract_events.0021 = { - type = character_event - hidden = yes - - trigger = { - any_knight = { - count >= 2 - is_landed = no - } - any_held_county = { - is_landless_type_title = no - exists = title_province - county_control < 90 - NOT = { has_county_modifier = ongoing_settlement_contract } - } - NOT = { - any_task_contract = { - has_task_contract_type = nomadic_migration_contract_3 - } - } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 3 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0023 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 3 - ID = 0021 - } - } -} - -# Event -mpo_contract_events.0025 = { - type = character_event - title = mpo_contract_events.0025.t - desc = mpo_contract_events.0025.desc - theme = nomads - left_portrait = { - character = root - animation = boredom - } - - right_portrait = { - character = scope:task_contract.task_contract_employer - animation = debating - } - - lower_left_portrait = scope:knight_2 - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_3 - } - } - - immediate = { - random_knight = { - limit = { - NOT = { this = scope:task_contract.task_contract_employer } - is_landed = no - is_ai = yes - } - save_scope_as = knight_2 - } - } - - option = { - name = mpo_contract_events.0025.a - scope:task_contract.task_contract_location.county = { change_county_control = 25 } - scope:task_contract.task_contract_employer = { - add_opinion = { - opinion = 15 - modifier = friendliness_opinion - target = root - } - } - scope:knight_2 = { - add_opinion = { - opinion = -15 - modifier = disappointed_opinion - target = root - } - } - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0025.b - scope:task_contract.task_contract_location.county = { change_county_control = 25 } - scope:knight_2 = { - add_opinion = { - opinion = 15 - modifier = friendliness_opinion - target = root - } - } - scope:task_contract.task_contract_employer = { - add_opinion = { - opinion = -15 - modifier = disappointed_opinion - target = root - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0025.c - domicile = { change_herd = settlement_issue_herd_reward } - - ai_chance = { - base = 0 - } - } - - after = { settlement_issue_after_completing_effect = yes } -} - -### A Lack of Tools -# Start -mpo_contract_events.0031 = { - type = character_event - hidden = yes - - trigger = { - mpo_settlement_issue_trigger = { NUMBER = 4 } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 4 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0033 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 4 - ID = 0031 - } - } -} - -scripted_effect mpo_contract_event_35_remove_modifier_effect = { - if = { - limit = { - has_character_modifier = mpo_si_lacking_tools_3 - } - remove_character_modifier = mpo_si_lacking_tools_3 - } - else_if = { - limit = { - has_character_modifier = mpo_si_lacking_tools_2 - } - remove_character_modifier = mpo_si_lacking_tools_2 - } - else_if = { - limit = { - has_character_modifier = mpo_si_lacking_tools - } - remove_character_modifier = mpo_si_lacking_tools - } -} - -# Event -mpo_contract_events.0035 = { - type = character_event - title = mpo_contract_events.0035.t - desc = mpo_contract_events.0035.desc - theme = nomads - left_portrait = { - character = root - animation = thinking - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_4 - } - } - - option = { - name = mpo_contract_events.0035.a - trigger = { - domicile ?= { - has_domicile_building_or_higher = trade_yurt_01 - } - } - reason = trade_yurt - - add_prestige = minor_prestige_gain - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - mpo_contract_event_35_remove_modifier_effect = yes - - ai_chance = { - base = 5 - } - } - - option = { - name = mpo_contract_events.0035.b - trigger = { - domicile ?= { - NOT = { has_domicile_building_or_higher = trade_yurt_01 } - } - } - show_as_unavailable = { - always = yes - } - - remove_short_term_gold = minor_gold_value - - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - mpo_contract_event_35_remove_modifier_effect = yes - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0035.c - trigger = { - domicile ?= { - NOT = { has_domicile_building_or_higher = trade_yurt_01 } - } - } - show_as_unavailable = { - always = yes - } - - add_prestige = medium_prestige_loss - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - mpo_contract_event_35_remove_modifier_effect = yes - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0035.d - trigger = { - domicile ?= { - NOT = { has_domicile_building_or_higher = trade_yurt_01 } - } - } - show_as_unavailable = { - always = yes - } - - if = { - limit = { - has_character_modifier = mpo_si_lacking_tools_3 - } - add_character_modifier = { - modifier = mpo_si_lacking_tools_3 - years = 30 - } - add_prestige = minor_prestige_loss - } - else_if = { - limit = { - has_character_modifier = mpo_si_lacking_tools_2 - } - hidden_effect = { remove_character_modifier = mpo_si_lacking_tools_2 } - add_character_modifier = { - modifier = mpo_si_lacking_tools_3 - years = 20 - } - } - else_if = { - limit = { - has_character_modifier = mpo_si_lacking_tools - } - hidden_effect = { remove_character_modifier = mpo_si_lacking_tools } - add_character_modifier = { - modifier = mpo_si_lacking_tools_2 - years = 20 - } - } - else = { - add_character_modifier = { - modifier = mpo_si_lacking_tools - years = 20 - } - } - } - - after = { - settlement_issue_after_completing_effect = yes - } -} - -### Fragmentation of the Tribe -# Start -mpo_contract_events.0041 = { - type = character_event - hidden = yes - - trigger = { - domain_size > 1 - any_knight = { - count >= 1 - } - any_held_county = { - is_landless_type_title = no - exists = title_province - county_control < 90 - NOR = { - this.title_province = root.capital_province - has_county_modifier = ongoing_settlement_contract - } - } - NOT = { - any_task_contract = { - has_task_contract_type = nomadic_migration_contract_5 - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 5 - domain_limit_available < 0 - } - } - - immediate = { - if = { - limit = { - NOT = { exists = scope:contract_province } - } - random_held_county = { - limit = { - is_landless_type_title = no - exists = title_province - county_control < 90 - NOR = { - this.title_province = root.capital_province - has_county_modifier = ongoing_settlement_contract - } - } - title_province = { save_scope_as = contract_province } - } - } - - if = { - limit = { - NOT = { exists = scope:new_employer } - } - random_knight = { - limit = { - is_landed = no - is_ai = yes - } - alternative_limit = { is_ai = yes } - save_scope_as = new_employer - } - } - - create_task_contract = { - task_contract_type = nomadic_migration_contract_5 - task_contract_tier = 1 - location = scope:contract_province - task_contract_employer = scope:new_employer - } - } -} - -# Reset -mpo_contract_events.0043 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 5 - ID = 0041 - } - } -} - -# Event -mpo_contract_events.0045 = { - type = character_event - title = mpo_contract_events.0045.t - desc = mpo_contract_events.0045.desc - theme = nomads - left_portrait = { - character = root - animation = thinking - } - - right_portrait = { - character = scope:new_chieftain - animation = debating - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_5 - } - } - - immediate = { - create_character = { - template = nomadic_chieftain_character - gender_female_chance = root_soldier_female_chance - employer = root - save_scope_as = new_chieftain - } - } - - option = { - name = mpo_contract_events.0045.a - - duel = { - skill = diplomacy - target = scope:new_chieftain - 50 = { - desc = mpo_contract_events.0045.a.successful - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0045.a.successful - add_prestige = medium_prestige_gain - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } - } - 50 = { - desc = mpo_contract_events.0045.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0045.a.failure - scope:task_contract.task_contract_location.county = { - change_county_control = -25 - } - } - } - } - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0045.b - - create_title_and_vassal_change = { - type = granted - save_scope_as = change - add_claim_on_loss = no - } - scope:task_contract.task_contract_location.county = { - change_title_holder = { - holder = scope:new_chieftain - change = scope:change - } - } - - resolve_title_and_vassal_change = scope:change - - scope:new_chieftain = { - add_opinion = { - modifier = obedience_opinion - target = root - years = 15 - } - } - - scope:task_contract.task_contract_location.county = { - change_county_control = 100 - hidden_effect = { set_county_culture = scope:new_chieftain.culture } - } - - domicile = { - change_herd = minor_herd_value_static - } - - add_character_modifier = { - modifier = mpo_si_accepting_cultures - years = 10 - } - - custom_tooltip = mpo_contract_events.0045.b.tt - hidden_effect = { - if = { - limit = { - scope:new_chieftain = { - is_landed = yes - can_diverge_excluding_cost = yes - } - } - scope:new_chieftain = { - create_divergent_culture_with_side_effects_excluding_cost = yes - } - scope:task_contract.task_contract_location.county = { - set_county_culture = scope:new_chieftain.culture - } - } - } - - ai_chance = { - base = 0 # Too many irritating small divergences - } - } - - option = { - name = mpo_contract_events.0045.c - - remove_short_term_gold = minor_gold_value - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0045.d - - scope:task_contract.task_contract_location.county = { - change_county_control = -10 - } - - ai_chance = { - base = 0 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:new_chieftain = { - if = { - limit = { - is_ruler = no - } - silent_disappearance_ai_effect = yes - } - } - } -} - -### Poisonous Lands -# Start -mpo_contract_events.0051 = { - type = character_event - hidden = yes - - trigger = { - mpo_settlement_issue_trigger = { NUMBER = 6 } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 6 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0053 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 6 - ID = 0051 - } - } -} - -# Event -mpo_contract_events.0055 = { - type = character_event - title = mpo_contract_events.0055.t - desc = mpo_contract_events.0055.desc - theme = nomads - override_background = { reference = wilderness } - left_portrait = { - character = root - animation = survey - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_6 - } - } - - option = { - name = mpo_contract_events.0055.a - - duel = { - skill = learning - value = 8 - 50 = { - desc = mpo_contract_events.0055.a.successful - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0055.a.successful - add_prestige = minor_prestige_gain - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } - } - 50 = { - desc = mpo_contract_events.0055.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0055.a.failure - domicile ?= { - change_herd = { - subtract = medium_herd_value_static - } - } - } - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0055.b - - remove_short_term_gold = minor_gold_value - - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0055.c - - domicile ?= { - change_herd = { - subtract = minor_herd_value_static - } - } - - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - - add_character_modifier = { - modifier = mpo_si_slaughtered_animals - } - - ai_chance = { - base = 1 - } - } - - after = { - settlement_issue_after_completing_effect = yes - } -} - -### Troublesome Neighbors -# Start -mpo_contract_events.0061 = { - type = character_event - hidden = yes - - trigger = { - any_knight = { - count >= 1 - } - any_held_county = { - is_landless_type_title = no - exists = title_province - county_control < 90 - NOT = { has_county_modifier = ongoing_settlement_contract } - any_neighboring_county = { - NOT = { holder.top_liege ?= root.top_liege } - } - } - NOT = { - any_task_contract = { - has_task_contract_type = nomadic_migration_contract_7 - } - } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 7 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0063 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 7 - ID = 0061 - } - } -} - -# Event -mpo_contract_events.0065 = { - type = character_event - title = mpo_contract_events.0065.t - desc = mpo_contract_events.0065.desc - theme = nomads - override_background = { reference = wilderness } - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:neighbor_leader - animation = anger - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_7 - } - } - - immediate = { - scope:task_contract.task_contract_location.county = { - random_neighboring_county = { - limit = { - NOT = { holder.top_liege = root.top_liege } - } - holder = { save_scope_as = neighbor_leader } - } - } - } - - option = { - name = mpo_contract_events.0065.a - - duel = { - skills = { diplomacy martial } - target = scope:neighbor_leader - 50 = { - desc = mpo_contract_events.0065.a.successful - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0065.a.successful - domicile ?= { - change_herd = minor_herd_value_static - } - } - } - 50 = { - desc = mpo_contract_events.0065.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = mpo_contract_events.0065.a.failure - scope:neighbor_leader = { - add_opinion = { - opinion = -15 - modifier = disgusted_opinion - target = root - } - } - } - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0065.b - - domicile ?= { - change_herd = { - integer_range = { - min = minor_herd_value_static - max = medium_herd_value_static - } - } - } - - scope:neighbor_leader = { - add_opinion = { - modifier = upset_opinion - target = root - opinion = -20 - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0065.c - - ai_chance = { - base = 1 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } -} - -### The Leftovers -# Start -mpo_contract_events.0071 = { - type = character_event - hidden = yes - - trigger = { - mpo_settlement_issue_trigger = { NUMBER = 8 } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 8 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0073 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 8 - ID = 0071 - } - } -} - -# Event -mpo_contract_events.0075 = { - type = character_event - title = mpo_contract_events.0075.t - desc = mpo_contract_events.0075.desc - override_background = { reference = wilderness } - theme = nomads - left_portrait = { - character = root - animation = horse_surveying - camera = camera_event_horse_right_forward - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_8 - } - } - - immediate = { - random_realm_province = { - limit = { - county = scope:task_contract.task_contract_location.county - } - save_scope_as = barony_location - } - } - - option = { - name = mpo_contract_events.0075.a - - domicile ?= { - change_herd = minor_herd_value_static - } - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0075.b - - scope:task_contract.task_contract_location.county = { - change_county_fertility = tiny_county_fertility_level_gain - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0075.c - - add_gold = minor_gold_value - - ai_chance = { - base = 0 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - } -} - -### Drawing Lines -# Start -mpo_contract_events.0081 = { - type = character_event - hidden = yes - - trigger = { - any_knight = { - count >= 1 - } - any_held_county = { - is_landless_type_title = no - exists = title_province - county_control < 90 - NOT = { has_county_modifier = ongoing_settlement_contract } - any_neighboring_county = { - holder = root - } - } - NOT = { - any_task_contract = { - has_task_contract_type = nomadic_migration_contract_9 - } - } - } - - immediate = { - mpo_settlement_issue_own_lands_effect = { - NUMBER = 9 - TIER = 1 - } - } -} - -# Reset -mpo_contract_events.0083 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 9 - ID = 0081 - } - } -} - -# Event -mpo_contract_events.0085 = { - type = character_event - title = mpo_contract_events.0085.t - desc = mpo_contract_events.0085.desc - theme = nomads - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:task_contract.task_contract_employer - animation = debating - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_9 - } - } - - immediate = { - scope:task_contract.task_contract_location.county = { - random_neighboring_county = { - limit = { - holder = root - } - save_scope_as = other_county - } - } - } - - option = { - name = mpo_contract_events.0085.a - - scope:task_contract.task_contract_location.county = { - change_county_fertility = tiny_county_fertility_level_gain - change_county_control = 25 - } - scope:other_county = { - add_county_modifier = { - modifier = mpo_si_spurned_tribe - years = 10 - } - } - - ai_chance = { - base = 1 - } - } - - option = { - name = mpo_contract_events.0085.b - - scope:other_county = { - change_county_fertility = tiny_county_fertility_level_gain - change_county_control = 25 - } - scope:task_contract.task_contract_location.county = { - add_county_modifier = { - modifier = mpo_si_spurned_tribe - years = 10 - } - } - - ai_chance = { - base = 0 - } - } - - after = { - settlement_issue_after_completing_effect = yes - } -} - -### The Old Tribe -# Start -mpo_contract_events.0091 = { - type = character_event - hidden = yes - - trigger = { - any_knight = { - count >= 1 - } - any_held_county = { - is_landless_type_title = no - exists = title_province - county_control < 90 - has_variable = migration_previous_culture - NOR = { - var:migration_previous_culture ?= root.culture - has_county_modifier = ongoing_settlement_contract - } - var:migration_previous_culture = { - any_tradition = { - save_temporary_scope_as = culture_trigger_scope - OR = { - NOT = { has_tradition_category = regional } - NOT = { - root.culture = { - any_tradition = { - this = scope:culture_trigger_scope - } - } - } - } - } - } - } - NOT = { - any_task_contract = { - has_task_contract_type = nomadic_migration_contract_10 - } - } - } - - immediate = { - if = { - limit = { - NOT = { exists = scope:contract_province } - } - random_held_county = { - limit = { - is_landless_type_title = no - exists = title_province - county_control < 90 - has_variable = migration_previous_culture - NOT = { has_county_modifier = ongoing_settlement_contract } - } - title_province = { save_scope_as = contract_province } - } - } - - if = { - limit = { - NOT = { exists = scope:new_employer } - } - random_knight = { - limit = { - is_landed = no - is_ai = yes - } - alternative_limit = { is_ai = yes } - save_scope_as = new_employer - } - } - - create_task_contract = { - task_contract_type = nomadic_migration_contract_10 - task_contract_tier = 1 - location = scope:contract_province - task_contract_employer = scope:new_employer - } - } -} - -# Reset -mpo_contract_events.0093 = { - type = character_event - hidden = yes - - immediate = { - mpo_settlement_issue_reset_effect = { - NUMBER = 10 - ID = 0091 - } - } -} - -# Event -mpo_contract_events.0095 = { - type = character_event - title = mpo_contract_events.0095.t - desc = mpo_contract_events.0095.desc - theme = nomads - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:new_chieftain - animation = debating - } - - trigger = { - any_character_active_contract = { - has_task_contract_type = nomadic_migration_contract_10 - } - } - - immediate = { - scope:task_contract.task_contract_location.county.var:migration_previous_culture = { - save_scope_as = previous_culture - } - create_character = { - template = nomadic_chieftain_character - gender_female_chance = root_soldier_female_chance - location = scope:task_contract.task_contract_location - culture = scope:previous_culture - save_scope_as = new_chieftain - } - } - - option = { - name = mpo_contract_events.0095.a - - scope:previous_culture = { - change_cultural_acceptance = { - target = root.culture - value = 5 - desc = cultural_acceptance_gain_event - } - every_tradition = { - limit = { - save_temporary_scope_as = culture_trigger_scope - root = { can_embrace_tradition = prev } - NOT = { - root.culture = { - any_tradition = { - this = scope:culture_trigger_scope - } - } - } - } - inspired_by_tradition_effect = { CHARACTER = root } - } - } - - scope:task_contract.task_contract_location.county = { - add_county_modifier = { - modifier = mpo_si_old_tribe - years = 10 - } - } - - add_courtier = scope:new_chieftain - scope:new_chieftain = { - add_opinion = { - modifier = obedience_opinion - target = root - years = 10 - } - } - - ai_chance = { - base = 0 - } - } - - option = { - name = mpo_contract_events.0095.b - - add_dread = minor_dread_gain - - ai_chance = { - base = 1 - } - } - - after = { - settlement_issue_after_completing_effect = yes - scope:task_contract.task_contract_location.county = { - change_county_control = 25 - } - domicile ?= { - change_herd = { - value = minor_herd_value_static - divide = 2 - } - } - scope:new_chieftain = { - silent_disappearance_ai_effect = yes - } - } -} diff --git a/events/dlc/mpo/mpo_migration_events.txt b/events/dlc/mpo/mpo_migration_events.txt deleted file mode 100644 index a89ad8ee0..000000000 --- a/events/dlc/mpo/mpo_migration_events.txt +++ /dev/null @@ -1,4571 +0,0 @@ -namespace = migration_events - -############################ -## Mechanical Migration Events -## 0001-0099 -############################ - -# migration_events.0001 - Arrival at Migration destination, title transfer - -# Arrival at Migration destination, title transfer -migration_events.0001 = { - type = character_event - title = migration_events.0001.t - desc = { - first_valid = { # Season - triggered_desc = { - trigger = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_severe_drought_season - situation_sub_region_has_county = root.location.county - } - } - } - desc = migration_events.0001.desc.drought - } - triggered_desc = { - trigger = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - desc = migration_events.0001.desc.white_zud - } - triggered_desc = { - trigger = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - desc = migration_events.0001.desc.havsarsan_zud - } - triggered_desc = { - trigger = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.location.county - } - } - } - desc = migration_events.0001.desc.blessing - } - desc = migration_events.0001.desc.intro - } - first_valid = { # Relationship - triggered_desc = { - trigger = { - has_variable = migrating_into_tributary_var - } - desc = migration_events.0001.desc.tributary - } - triggered_desc = { - trigger = { - scope:recipient = { government_has_flag = government_is_herder } - } - desc = migration_events.0001.desc.herder - } - triggered_desc = { - trigger = { - scope:recipient = { - OR = { - is_obedient_to = root - has_any_good_relationship_with_root_trigger = yes - } - } - } - desc = migration_events.0001.desc.nomad_obedient - } - triggered_desc = { - trigger = { - scope:recipient = { - has_any_bad_relationship_with_root_trigger = yes - } - } - desc = migration_events.0001.desc.nomad_angry - } - desc = migration_events.0001.desc.nomad - } - first_valid = { # Fertility - triggered_desc = { - trigger = { - location.county.county_fertility >= good_county_fertility_level - } - desc = migration_events.0001.desc.good - } - triggered_desc = { - trigger = { - location.county.county_fertility <= bad_county_fertility_level - } - desc = migration_events.0001.desc.bad - } - desc = migration_events.0001.desc.meh - } - } - theme = migration - override_background = { - trigger = { - OR = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - } - reference = bp3_steppe_winter - } - override_background = { - trigger = { - NOR = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.location.county - } - } - } - } - reference = mpo_steppe_evening - } - widgets = { - widget = { - is_shown = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - widget = { - is_shown = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - } - left_portrait = { - character = scope:actor - animation = horse_archer_idle - camera = camera_event_horse_left - } - right_portrait = { - character = scope:recipient - triggered_animation = { - trigger = { - scope:recipient = { government_has_flag = government_is_herder } - } - animation = shepherd_with_sheep - } - triggered_animation = { - trigger = { - scope:recipient = { has_any_bad_relationship_with_root_trigger = yes } - } - animation = personality_callous - } - animation = throne_room_bow_1 - camera = camera_event_right_away - } - lower_right_portrait = { - trigger = { exists = scope:overlord } - character = scope:overlord - } - - immediate = { - remove_variable = migration_title - if = { - limit = { - has_variable = migrating_into_tributary_var - } - var:migrating_into_tributary_var = { - save_scope_as = overlord - } - save_scope_as = new_tributary # For the toasts to overlord - } - if = { - limit = { - NOT = { exists = scope:recipient } - } - hidden_effect = { - create_character = { - template = herder_character - faith = root.location.county.faith - culture = root.location.county.culture - location = root.location - save_scope_as = recipient - after_creation = { - remove_character_flag = peasant_outfit - add_to_list = government_change - add_character_flag = created - } - } - } - } - } - - option = { # If you're moving to a Tributary's land we ask you to become a Tributary yourself - Accept - name = migration_events.0001.aaa - trigger = { - has_variable = migrating_into_tributary_var - } - start_tributary_interaction_effect = { - TRIBUTARY = root - SUZERAIN = scope:overlord - } - hidden_effect = { - scope:overlord = { - send_interface_toast = { - left_icon = scope:new_tributary - title = msg_tributary_toast - custom_tooltip = msg_tributary_toast_tt - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # If you're moving to a Tributary's land we ask you to become a Tributary yourself - Refuse - name = migration_events.0001.aa - trigger = { - has_variable = migrating_into_tributary_var - } - scope:overlord = { - custom_tooltip = { - text = migration_events.0001.aa.cb_tt - if = { - limit = { - NOT = { # You don't already have a Retaliation CB on this guy - is_target_in_variable_list = { - name = retaliation_cb_var_list - target = root - } - } - } - add_to_variable_list = { - name = retaliation_cb_var_list - target = root - years = 5 - } - } - } - add_opinion = { - target = root - modifier = angry_opinion - opinion = -50 - } - hidden_effect = { - scope:overlord = { - send_interface_toast = { - left_icon = scope:new_tributary - title = msg_tributary_toast_bad - custom_tooltip = msg_tributary_toast_bad_tt - } - } - } - } - ai_chance = { # AI normally doesn't refuse - base = 10 - modifier = { # Unless... - OR = { - has_trait = ambitious - has_trait = arrogant - } - NOT = { has_trait = craven } - add = 25 - } - modifier = { - current_military_strength >= scope:overlord.current_military_strength - add = 125 - } - } - } - - option = { # Special option if your Astrologer wanted you to come here - name = migration_events.0001.a - add_internal_flag = special - trigger = { - var:astrologer_desired_area ?= root.primary_title - NOT = { has_variable = migrating_into_tributary_var } - } - custom_tooltip = migration_events.0001.a.tt - add_character_modifier = { - modifier = astrologer_desired_area_modifier - years = 5 - } - ai_chance = { - base = 100 - } - } - - option = { - name = migration_events.0001.b - trigger = { - NOR = { - var:astrologer_desired_area ?= root.primary_title - has_variable = migrating_into_tributary_var - } - } - ai_chance = { - base = 100 - } - } - - after = { - remove_variable = migrating_into_tributary_var - scope:recipient = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Arrival at Migration destination through war, triggered if you're moving into a Tributary's lands -migration_events.0002 = { - type = character_event - title = migration_events.0002.t - desc = { - desc = migration_events.0002.desc.intro - first_valid = { - triggered_desc = { - trigger = { - higher_or_equal_dominance_trigger = { - FIRST_TARGET = root - SECOND_TARGET = scope:overlord - } - } - desc = migration_events.0002.desc.high_dominance - } - desc = migration_events.0002.desc - } - } - theme = migration - override_background = { - trigger = { - OR = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.location.county - } - } - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - } - reference = bp3_steppe_winter - } - widgets = { - widget = { - is_shown = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - widget = { - is_shown = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.location.county - } - } - } - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - } - left_portrait = { - character = scope:actor - animation = horse_archer_aggressive - camera = camera_event_horse_left - } - lower_right_portrait = { - trigger = { exists = scope:overlord } - character = scope:overlord - } - - immediate = { - var:migrating_into_tributary_war_var = { - save_scope_as = overlord - } - save_scope_as = new_tributary # For the toasts to overlord - } - - option = { # Accept - name = migration_events.0002.a - trigger = { - higher_dominance_trigger = { - FIRST_TARGET = scope:overlord - SECOND_TARGET = root - } - } - start_tributary_interaction_effect = { - TRIBUTARY = root - SUZERAIN = scope:overlord - } - hidden_effect = { - scope:overlord = { - send_interface_toast = { - left_icon = scope:new_tributary - title = msg_tributary_toast - custom_tooltip = msg_tributary_toast_tt - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Refuse - name = { - trigger = { - higher_dominance_trigger = { - FIRST_TARGET = scope:overlord - SECOND_TARGET = root - } - } - text = migration_events.0002.b - } - name = { - trigger = { - higher_or_equal_dominance_trigger = { - FIRST_TARGET = root - SECOND_TARGET = scope:overlord - } - } - text = migration_events.0002.b.alt - } - if = { - limit = { - higher_or_equal_dominance_trigger = { - FIRST_TARGET = root - SECOND_TARGET = scope:overlord - } - } - add_legitimacy = medium_legitimacy_gain - } - scope:overlord = { - custom_tooltip = { - text = migration_events.0001.aa.cb_tt - if = { - limit = { - NOT = { # You don't already have a Retaliation CB on this guy - is_target_in_variable_list = { - name = retaliation_cb_var_list - target = root - } - } - } - add_to_variable_list = { - name = retaliation_cb_var_list - target = root - years = 5 - } - } - } - add_opinion = { - target = root - modifier = angry_opinion - opinion = -50 - } - hidden_effect = { - scope:overlord = { - send_interface_toast = { - left_icon = scope:new_tributary - title = msg_tributary_toast_bad - custom_tooltip = msg_tributary_toast_bad_tt - } - } - } - } - ai_chance = { # AI normally doesn't refuse - base = 10 - modifier = { # Unless... - OR = { - has_trait = ambitious - has_trait = arrogant - } - NOT = { has_trait = craven } - add = 120 - } - } - } - - after = { - remove_variable = migrating_into_tributary_war_var - } -} - -scripted_trigger migration_events_1000_local_ruler_trigger = { - NOR = { - this = root - is_allied_to = root - has_truce = root - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - is_liege_or_above_of = root - is_vassal_or_below_of = root - } - OR = { - NOT = { - capital_county ?= root.location.county - } - highest_held_title_tier <= tier_duchy - } - gold >= 0 - NOT = { - has_character_flag = migration_events_1000_victim_flag - } - #If they're present and able to defend, should be weak - trigger_if = { - limit = { - government_has_flag = government_is_nomadic - capital_county ?= root.location.county - } - domicile.herd <= root.domicile.herd - } -} - -###################### -#Migration flavor events -#1000-1999 -# by Jason Cantalini -###################### - -#There's some good hunting and plundering to be had here... -migration_events.1000 = { - type = character_event - title = migration_events.1000.t - desc = { - desc = migration_events.1000.desc - first_valid = { - triggered_desc = { - trigger = { - scope:local_ruler.capital_county ?= root.location.county - } - desc = migration_events.1000.desc.ruler_present - } - desc = migration_events.1000.desc.ruler_away - } - desc = migration_events.1000.desc_outro - } - theme = migration - override_background = { - reference = terrain - } - left_portrait = { - character = root - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:local_rep - animation = war_defender - } - lower_right_portrait = scope:local_overlord - - trigger = { - age >= 10 - is_migrating = yes - has_mpo_dlc_trigger = yes - location.county = { - uses_county_fertility = yes - } - OR = { - #Holder has lots of gold - AND = { - location.county = { - uses_county_fertility = yes - county_fertility >= 40 - } - location.county.holder = { - gold >= 200 - } - } - #Location is very fertile - location.county = { - county_fertility >= 70 - } - } - location.county.holder = { - migration_events_1000_local_ruler_trigger = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - location.county.holder = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - } - modifier = { - add = 1 - location.county.holder = { - gold > 500 - } - } - modifier = { - add = 1 - location.county = { - county_fertility >= 95 - } - } - } - - cooldown = { - years = 5 - } - - immediate = { - location.county = { - save_scope_as = location_county - } - location.county.holder = { - save_scope_as = local_ruler - add_character_flag = { - flag = migration_events_1000_victim_flag - years = 5 - } - } - #Put in ruler if they are low tier - if = { - limit = { - scope:location_county = scope:local_ruler.capital_county - scope:local_ruler = { - location.county = scope:location_county - NOR = { - is_incapable = yes - has_trait = infirm - age <= 8 - } - } - } - scope:local_ruler = { - save_scope_as = local_rep - } - } - if = { - limit = { - NOT = { - exists = scope:local_rep - } - } - scope:local_ruler = { - random_councillor = { - limit = { - NOT = { - is_spouse_of = root - } - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:local_ruler } - } - save_scope_as = local_rep - } - save_scope_as = local_overlord - } - } - if = { - limit = { - NOT = { - exists = scope:local_rep - } - } - scope:local_ruler = { - random_knight = { - save_scope_as = local_rep - } - save_scope_as = local_overlord - } - } - if = { - limit = { - NOT = { - exists = scope:local_rep - } - } - scope:local_ruler = { - random_courtier = { - limit = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:local_ruler } - is_adult = yes - basic_is_available_ai = yes - } - save_scope_as = local_rep - } - save_scope_as = local_overlord - } - } - } - #We can hunt for pelts too! - option = { - trigger = { - has_trait = lifestyle_hunter - NOT = { - location = { - terrain = desert - } - } - } - name = migration_events.1000.a - flavor = migration_events.1000.a.flavor - - add_trait_xp = { - trait = lifestyle_hunter - value = medium_trait_xp - track = hunter - } - add_trait_xp = { - trait = lifestyle_hunter - value = medium_trait_xp - track = falconer - } - mpo_dominance_scaled_minor_gold_gain = yes - reverse_add_opinion = { - modifier = angry_opinion - target = scope:local_ruler - opinion = -20 - } - stress_impact = { - lazy = minor_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_energy = 1 - } - modifier = { - factor = 0.5 - scope:local_ruler = { - government_has_flag = government_is_nomadic - domicile.herd > root.domicile.herd - } - } - modifier = { - factor = 0 - has_trait = lazy - } - } - } - #I'm not leaving these people to their riches - option = { - trigger = { - OR = { - scope:local_ruler = { - is_ai = yes - } - is_ai = no - } - } - name = migration_events.1000.b - flavor = migration_events.1000.b.flavor - scope:local_ruler = { - if = { - limit = { - treasury_or_gold >= minor_treasury_or_gold_value - } - pay_treasury_or_gold = { - target = root - value = minor_treasury_or_gold_value - } - } - } - if = { - limit = { - scope:local_ruler = { - government_has_flag = government_is_herder - } - } - domicile = { - change_herd = miniscule_herd_gain - } - reverse_add_opinion = { - target = scope:local_ruler - modifier = angry_opinion - opinion = -40 - } - } - else = { - scope:local_ruler = { - pay_herd = { - target = root - value = domicile.minor_herd_value - } - progress_towards_rival_effect = { - REASON = rival_raided_me - CHARACTER = root - OPINION = -40 - } - } - } - scope:location_county = { - change_county_control = minor_county_control_loss - } - stress_impact = { - greedy = miniscule_stress_impact_loss - fickle = miniscule_stress_impact_loss - just = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - generous = minor_stress_impact_gain - craven = minor_stress_impact_gain - } - ai_chance = { - base = 75 - ai_value_modifier = { - ai_compassion = -0.5 - ai_greed = 0.5 - ai_honor = -0.5 - } - modifier = { - factor = 1.5 - scope:local_ruler = { - government_has_flag = government_is_herder - } - } - modifier = { - factor = 0.25 - scope:local_ruler = { - government_has_flag = government_is_nomadic - domicile.herd > root.domicile.herd - } - } - modifier = { - factor = 0 - OR = { - has_trait = compassionate - has_trait = just - has_trait = generous - has_trait = craven - } - } - } - } - #Let the animals graze a while; lets grab some horses - option = { - name = migration_events.1000.c - - domicile = { - change_herd = medium_herd_gain - } - reverse_add_opinion = { - modifier = angry_opinion - target = scope:local_ruler - opinion = -20 - } - current_travel_plan = { - delay_travel_plan = { days = 30 } - } - stress_impact = { - content = miniscule_stress_impact_loss - impatient = medium_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = -0.5 - ai_greed = 0.5 - } - modifier = { - factor = 0.5 - scope:local_ruler = { - government_has_flag = government_is_nomadic - domicile.herd > root.domicile.herd - } - } - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = humble - } - } - } - } - #Better to just keep moving - option = { - name = migration_events.1000.d - scope:local_ruler = { - add_opinion = { - modifier = friendliness_opinion - target = root - opinion = 20 - } - } - stress_impact = { - greedy = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_compassion = 0.5 - } - modifier = { - factor = 1.5 - scope:local_ruler = { - government_has_flag = government_is_nomadic - domicile.herd > root.domicile.herd - } - } - modifier = { - factor = 0 - has_trait = greedy - } - } - } -} - -scripted_trigger migration_events_1010_deserves_rest_trigger = { - OR = { - has_trait = wounded_2 - has_trait = wounded_3 - health <= poor_health - has_trait = maimed - has_trait = infirm - } -} - -#Wife wants you to get into the great yurt -migration_events.1010 = { - type = character_event - title = migration_events.1010.t - desc = migration_events.1010.desc - theme = migration - override_background = { - reference = wilderness - } - left_portrait = { - character = root - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:spouse - animation = flirtation_left - } - cooldown = { years = 5 } - - trigger = { - is_married = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - is_migrating = yes - has_mpo_dlc_trigger = yes - NOT = { - has_realm_law = nomadic_authority_1 - } - is_available_travelling_adult = yes - NOR = { - has_trait = infirm - has_character_modifier = obese_modifier - } - primary_spouse ?= { - is_available_allow_travelling = yes - NOT = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - opinion = { - target = root - value > 0 - } - NOT = { - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - OR = { - migration_events_1010_deserves_rest_trigger = yes - has_trait = wounded_1 - } - } - modifier = { - add = 1 - primary_spouse ?= { - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - } - } - } - - immediate = { - location.county = { - save_scope_as = location_county - } - primary_spouse = { - save_scope_as = spouse - } - } - #Yeah... I need that anyway - option = { - trigger = { - OR = { - migration_events_1010_deserves_rest_trigger = yes - has_trait = wounded_1 - } - } - name = migration_events.1010.a - random_list = { - 10 = { - trigger = { - has_trait = wounded_1 - } - remove_trait = wounded_1 - } - 10 = { - trigger = { - has_trait = wounded_2 - } - remove_trait = wounded_2 - } - 10 = { - trigger = { - has_trait = wounded_3 - } - remove_trait = wounded_3 - } - 10 = { - trigger = { - has_trait = ill - } - remove_trait = ill - } - 10 = { - trigger = { - has_trait = pneumonic - } - remove_trait = pneumonic - } - 10 = { - add_character_modifier = { - modifier = nomadic_comforts_modifier - years = 5 - } - } - } - - stress_impact = { - base = minor_stress_impact_loss - craven = miniscule_stress_impact_loss - paranoid = miniscule_stress_impact_loss - diligent = miniscule_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_energy = -0.5 - } - modifier = { - factor = 0.5 - has_trait = diligent - } - } - } - #Yeah of course, I love you wife - option = { - trigger = { - OR = { - has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse } - scope:spouse = { - opinion = { - target = root - value >= 80 - } - } - has_trait = gregarious - has_trait = compassionate - has_trait = lustful - has_trait = generous - } - is_attracted_to_gender_of = scope:spouse - scope:spouse = { - is_attracted_to_gender_of = root - NOR = { - has_trait = celibate - has_trait = chaste - } - } - NOR = { - has_trait = celibate - } - } - add_internal_flag = special - name = migration_events.1010.b - if = { - limit = { - scope:spouse = { - is_obedient_to = root - } - } - reverse_add_opinion = { - target = scope:spouse - modifier = love_opinion - opinion = 40 - } - } - else = { - scope:spouse = { - add_opinion = { - modifier = obedience_opinion - target = root - } - } - } - - had_sex_with_effect = { - CHARACTER = scope:spouse - PREGNANCY_CHANCE = pregnancy_chance - } - if = { - limit = { - has_relation_lover = scope:spouse - NOT = { - has_relation_soulmate = scope:spouse - } - } - set_relation_soulmate = { - target = scope:spouse - reason = lover_made_love_on_yurt_wagon - } - } - else = { - progress_towards_lover_effect = { - REASON = lover_made_love_on_yurt_wagon - CHARACTER = scope:spouse - OPINION = 0 - } - } - - stress_impact = { - lustful = miniscule_stress_impact_gain - chaste = medium_stress_impact_gain - humble = miniscule_stress_impact_gain - just = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_honor = -0.5 - } - modifier = { - factor = 0 - OR = { - has_trait = chaste - has_trait = humble - has_trait = just - } - } - } - } - #I need to be seen riding with my men - option = { - name = migration_events.1010.c - - if = { - limit = { - migration_events_1010_deserves_rest_trigger = yes - health < fine_health - } - add_legitimacy = minor_legitimacy_gain - every_knight = { - custom = custom.every_knight - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - stress_impact = { - base = medium_stress_impact_gain - lazy = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - fickle = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - else = { - add_legitimacy = miniscule_legitimacy_gain - every_knight = { - custom = custom.every_knight - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - stress_impact = { - base = miniscule_stress_impact_gain - lazy = medium_stress_impact_gain - arbitrary = minor_stress_impact_gain - fickle = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = lazy - has_trait = arbitrary - has_trait = fickle - has_trait = arrogant - } - } - } - } - #It does sound comfy... - option = { - name = migration_events.1010.d - flavor = migration_events.1010.d.flavor - if = { - limit = { - any_consort = { - NOT = { - this = scope:spouse - } - } - } - every_consort = { - custom = custom.every_consort - scope:spouse = { - add_opinion = { - modifier = pleased_opinion - target = root - opinion = 10 - } - } - } - } - else = { - scope:spouse = { - add_opinion = { - modifier = pleased_opinion - target = root - opinion = 20 - } - } - } - - if = { - limit = { - migration_events_1010_deserves_rest_trigger = no - health < fine_health - } - add_prestige = miniscule_prestige_loss - } - - - stress_impact = { - base = minor_stress_impact_loss - lazy = miniscule_stress_impact_loss - content = miniscule_stress_impact_loss - diligent = minor_stress_impact_gain - humble = miniscule_stress_impact_gain - just = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_energy = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = just - } - } - } - } -} - -scripted_trigger migration_events_1020_valid_aspirant_trigger = { - NOR = { - is_primary_heir_of = root - is_player_heir_of = root - is_heir_of = root - has_trait = loyal - is_obedient_to = root - has_dread_level_towards = { - target = root - level >= 2 - } - } - is_adult = yes - is_courtier_of = root - is_imprisoned = no - is_healthy = yes - OR = { - AND = { - is_male = yes - faith_dominant_gender_male_or_equal = yes - } - AND = { - is_female = yes - faith_dominant_gender_female_or_equal = yes - } - } - ai_boldness >= 0 - ai_energy >= 0 - ai_compassion < medium_positive_ai_value - health >= fine_health -} - -scripted_trigger migration_events_1020_very_eager_trigger = { - OR = { - AND = { - ai_boldness > medium_positive_ai_value - ai_energy > medium_positive_ai_value - } - opinion = { - target = root - value < -60 - } - NOT = { is_obedient_to = root } - } - NOT = { - has_dread_level_towards = { - target = root - level >= 1 - } - } - migration_events_1020_valid_aspirant_trigger = yes -} - -scripted_effect migration_events_1020_pay_minor_herd_effect = { - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_4 - } - } - } - else_if = { - limit = { - has_realm_law = nomadic_authority_3 - } - } - else_if = { - limit = { - has_realm_law = nomadic_authority_2 - } - } - else = { - - } -} - -#Family member wants to take land from local herder -migration_events.1020 = { - type = character_event - title = migration_events.1020.t - desc = migration_events.1020.desc - theme = migration - override_background = { - reference = terrain - } - left_portrait = { - character = root - animation = jockey_walk - camera = camera_event_horse_left_forward - } - right_portrait = { - character = scope:aspirant - animation = horse_surveying - camera = camera_event_horse_right_forward - } - lower_right_portrait = scope:herder - lower_left_portrait = scope:herder_liege - - trigger = { - age >= 6 - is_migrating = yes - has_mpo_dlc_trigger = yes - highest_held_title_tier >= tier_county - is_available_allow_travelling = yes - - #location is takeable herder county - location.county.holder = { - government_has_flag = government_is_herder - OR = { - is_independent_ruler = yes - liege = { - OR = { - is_ai = yes - this = root - } - NOR = { - is_at_war_with = root - is_causing_raid_hostility_towards = root - root = { - is_causing_raid_hostility_towards = prev - } - } - } - } - } - location.county = { - NOT = { - any_county_province = { - OR = { - is_raided = yes - is_occupied = yes - } - } - } - } - - #valid breakoff ruler - OR = { - any_child = { - migration_events_1020_valid_aspirant_trigger = yes - } - any_sibling = { - migration_events_1020_valid_aspirant_trigger = yes - } - dynasty ?= { - any_dynasty_member = { - migration_events_1020_valid_aspirant_trigger = yes - } - } - } - #A bit weird if you are great khan and your relatives are begging for some sheep - NOT = { - has_realm_law = nomadic_authority_5 - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - OR = { - any_child = { - migration_events_1020_very_eager_trigger = yes - } - any_sibling = { - migration_events_1020_very_eager_trigger = yes - } - dynasty ?= { - any_dynasty_member = { - migration_events_1020_very_eager_trigger = yes - } - } - } - } - modifier = { - add = -1 - has_realm_law = nomadic_authority_4 - } - } - - cooldown = { - years = 5 - } - - immediate = { - location.county = { - save_scope_as = location_county - holder = { - save_scope_as = herder - if = { - limit = { - is_independent_ruler = no - } - liege = { - save_scope_as = herder_liege - } - } - } - } - if = { - limit = { - exists = dynasty - } - dynasty = { - ordered_dynasty_member = { - order_by = age - limit = { - migration_events_1020_valid_aspirant_trigger = yes - } - save_scope_as = aspirant - } - } - } - if = { - limit = { - NOT = { - exists = scope:aspirant - } - } - ordered_sibling = { - order_by = age - limit = { - migration_events_1020_valid_aspirant_trigger = yes - } - save_scope_as = aspirant - } - } - if = { - limit = { - NOT = { - exists = scope:aspirant - } - } - ordered_child = { - order_by = age - limit = { - migration_events_1020_valid_aspirant_trigger = yes - } - save_scope_as = aspirant - } - } - random_knight = { - limit = { - is_landed = no - is_councillor = no - has_any_court_position = no - NOR = { - is_spouse_of = root - is_heir_of = root - this = scope:aspirant - } - is_available_allow_travelling = yes - is_acclaimed = no - } - save_scope_as = knight_1 - } - random_knight = { - limit = { - is_landed = no - is_councillor = no - has_any_court_position = no - NOR = { - is_spouse_of = root - is_heir_of = root - this = scope:aspirant - this = scope:knight_1 - } - is_available_allow_travelling = yes - is_acclaimed = no - } - save_scope_as = knight_2 - } - save_scope_as = root_scope - } - #Yes, as my tributary of course! - option = { - trigger = { - NOT = { - exists = scope:herder_liege - } - OR = { - has_realm_law = nomadic_authority_2 - has_realm_law = nomadic_authority_3 - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - add_internal_flag = special - name = migration_events.1020.a - - add_prestige = minor_prestige_gain - - create_title_and_vassal_change = { - type = usurped - save_scope_as = change - add_claim_on_loss = no - } - scope:location_county = { - change_title_holder = { - holder = scope:aspirant - change = scope:change - } - } - scope:aspirant = { - add_opinion = { - target = root - modifier = helpful_opinion - opinion = 20 - } - } - resolve_title_and_vassal_change = scope:change - scope:aspirant = { - change_government = nomad_government - add_courtier = scope:herder - scope:herder = { - pay_short_term_gold = { - target = scope:aspirant - gold = current_gold_value - } - } - start_tributary_interaction_effect = { - TRIBUTARY = scope:aspirant - SUZERAIN = root - } - } - pay_herd = { - target = scope:aspirant - value = domicile.minor_herd_value - } - - stress_impact = { - generous = medium_stress_impact_gain - humble = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_greed = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = humble - has_trait = compassionate - } - } - } - } - #I will establish you here properly - option = { - trigger = { - culture = scope:aspirant.culture - domicile = { - herd >= major_herd_value - } - } - name = migration_events.1020.b - flavor = migration_events.1020.b.flavor - - dynasty ?= { - add_dynasty_prestige = miniscule_dynasty_prestige_gain - - } - - create_title_and_vassal_change = { - type = usurped - save_scope_as = change - add_claim_on_loss = no - } - scope:location_county = { - change_title_holder = { - holder = scope:aspirant - change = scope:change - } - } - scope:aspirant = { - add_opinion = { - target = root - modifier = helpful_opinion - opinion = 60 - } - progress_towards_friend_effect = { - REASON = friend_granted_title - CHARACTER = root - OPINION = 0 - } - if = { - limit = { - exists = scope:herder_liege - } - change_liege = { - liege = scope:herder_liege - change = scope:change - } - } - } - resolve_title_and_vassal_change = scope:change - scope:aspirant = { - change_government = nomad_government - } - scope:aspirant = { - add_prestige = medium_prestige_gain - } - scope:location_county = { - if = { - limit = { - NOT = { - culture = scope:aspirant.culture - } - } - set_county_culture = scope:aspirant.culture - } - if = { - limit = { - NOT = { - faith = scope:aspirant.faith - } - } - set_county_faith = scope:aspirant.faith - } - } - scope:aspirant = { - add_courtier = scope:herder - scope:herder = { - pay_short_term_gold = { - target = scope:aspirant - gold = current_gold_value - } - } - if = { - limit = { - exists = scope:knight_1 - } - add_courtier = scope:knight_1 - scope:knight_1 = { - every_spouse = { - limit = { - is_imprisoned = no - is_courtier_of = root - } - scope:aspirant = { - add_courtier = prev - } - } - hidden_effect = { - every_child = { - limit = { - is_imprisoned = no - is_courtier_of = root - is_adult = no - } - scope:aspirant = { - add_courtier = prev - } - } - } - } - } - if = { - limit = { - exists = scope:knight_2 - } - add_courtier = scope:knight_2 - scope:knight_2 = { - every_spouse = { - limit = { - is_imprisoned = no - is_courtier_of = root - } - scope:aspirant = { - add_courtier = prev - } - } - hidden_effect = { - every_child = { - limit = { - is_imprisoned = no - is_courtier_of = root - is_adult = no - } - scope:aspirant = { - add_courtier = prev - } - } - } - } - } - } - pay_herd = { - target = scope:aspirant - value = domicile.major_herd_value - } - add_prestige = medium_prestige_loss - - if = { - limit = { - scope:herder_liege ?= { - NOT = { - this = root - } - } - } - scope:herder_liege = { - reverse_add_opinion = { - target = root - modifier = disrespect_opinion - opinion = -30 - } - } - } - - stress_impact = { - greedy = medium_stress_impact_gain - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_greed = -0.5 - ai_compassion = 0.5 - } - modifier = { - factor = 0 - has_trait = greedy - } - } - } - #Good luck kid - option = { - name = migration_events.1020.c - create_title_and_vassal_change = { - type = usurped - save_scope_as = change - add_claim_on_loss = no - } - scope:location_county = { - change_title_holder = { - holder = scope:aspirant - change = scope:change - } - } - scope:aspirant = { - add_opinion = { - target = root - modifier = helpful_opinion - opinion = 30 - } - if = { - limit = { - exists = scope:herder_liege - } - change_liege = { - liege = scope:herder_liege - change = scope:change - } - } - } - resolve_title_and_vassal_change = scope:change - scope:aspirant = { - change_government = nomad_government - add_courtier = scope:herder - scope:herder = { - pay_short_term_gold = { - target = scope:aspirant - gold = current_gold_value - } - } - } - pay_herd = { - target = scope:aspirant - value = domicile.minor_herd_value - } - - if = { - limit = { - scope:herder_liege ?= { - NOT = { - this = root - } - } - } - scope:herder_liege = { - reverse_add_opinion = { - target = root - modifier = disrespect_opinion - opinion = -30 - } - } - } - - stress_impact = { - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 0.5 - ai_greed = 0.5 - } - } - } - #No, remain with your people - option = { - name = migration_events.1020.d - - if = { - limit = { - OR = { - has_trait = wrathful - has_trait = sadistic - has_trait = vengeful - has_trait = paranoid - has_trait = torturer - has_trait = overseer - has_trait = greatest_of_khans - has_trait = irritable - } - } - add_dread = miniscule_dread_gain - } - scope:aspirant = { - add_opinion = { - target = root - modifier = refusal_opinion - opinion = -15 - } - } - - stress_impact = { - generous = minor_stress_impact_gain - trusting = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 0.5 - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = trusting - } - } - } - } -} - -#Your animals are hungry -migration_events.1030 = { - type = character_event - title = migration_events.1030.t - desc = migration_events.1030.desc - theme = migration - override_background = { - reference = mpo_steppe_evening - } - left_portrait = { - character = root - animation = horse_exhausted - camera = camera_event_horse_left - } - lower_right_portrait = scope:local_ruler - - trigger = { - age >= 6 - is_migrating = yes - has_mpo_dlc_trigger = yes - highest_held_title_tier >= tier_county - is_available_allow_travelling = yes - location.county.holder = { - is_ai = yes - NOR = { - has_relation_rival = root - has_relation_nemesis = root - is_at_war_with = root - } - } - location.county = { - uses_county_fertility = yes - NOT = { - any_county_province = { - OR = { - is_raided = yes - is_occupied = yes - } - } - } - county_fertility <= 40 - } - domicile = { - herd >= major_herd_value - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - modifier = { - add = 1 - location.county = { - county_fertility <= 10 - } - } - modifier = { - add = 1 - location.county = { - county_fertility <= 20 - } - } - } - - cooldown = { - years = 5 - } - - immediate = { - location.county = { - save_scope_as = location_county - holder = { - save_scope_as = local_ruler - } - } - } - #The local ruler WILL provide good pasture - option = { - trigger = { - dread >= 50 - OR = { - scope:local_ruler = { - has_dread_level_towards = { - target = root - level >= 1 - } - } - has_realm_law = nomadic_authority_5 - AND = { - has_realm_law = nomadic_authority_4 - scope:local_ruler = { - OR = { - has_realm_law = nomadic_authority_2 - has_realm_law = nomadic_authority_1 - } - } - } - AND = { - has_realm_law = nomadic_authority_3 - scope:local_ruler = { - has_realm_law = nomadic_authority_1 - } - } - } - } - name = migration_events.1030.a - - add_dread = minor_dread_gain - - reverse_add_opinion = { - modifier = threatened_opinion - target = scope:local_ruler - opinion = -20 - } - current_travel_plan = { - delay_travel_plan = { days = 10 } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - craven = minor_stress_impact_gain - just = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = 300 - ai_value_modifier = { - ai_boldness = 0.5 - ai_honor = -0.5 - } - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = just - has_trait = humble - } - } - } - } - #Sell the animals to the local ruler - option = { - trigger = { - diplomacy > high_skill_rating - trigger_if = { - limit = { - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - scope:local_ruler.gold >= root.monumental_gold_value - } - trigger_if = { - limit = { - has_realm_law = nomadic_authority_3 - } - scope:local_ruler.gold >= root.massive_gold_value - } - trigger_if = { - limit = { - has_realm_law = nomadic_authority_2 - } - scope:local_ruler.gold >= root.major_gold_value - } - trigger_if = { - limit = { - has_realm_law = nomadic_authority_1 - } - scope:local_ruler.gold >= root.medium_gold_value - } - } - name = migration_events.1030.b - flavor = migration_events.1030.b.flavor - - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - scope:local_ruler = { - pay_treasury_or_gold = { - target = root - value = root.monumental_treasury_or_gold_value - } - } - } - if = { - limit = { - has_realm_law = nomadic_authority_3 - } - scope:local_ruler = { - pay_treasury_or_gold = { - target = root - value = root.massive_treasury_or_gold_value - } - } - } - if = { - limit = { - has_realm_law = nomadic_authority_2 - } - scope:local_ruler = { - pay_treasury_or_gold = { - target = root - value = root.major_treasury_or_gold_value - } - } - } - if = { - limit = { - has_realm_law = nomadic_authority_1 - } - scope:local_ruler = { - pay_treasury_or_gold = { - target = root - value = root.medium_treasury_or_gold_value - } - } - } - - pay_herd = { - target = scope:local_ruler - value = domicile.medium_herd_value - } - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:local_ruler - opinion = 20 - } - - stress_impact = { - honest = minor_stress_impact_gain - just = minor_stress_impact_gain - generous = minor_stress_impact_gain - } - ai_chance = { - base = 200 - ai_value_modifier = { - ai_greed = 0.5 - ai_honor = -0.5 - } - modifier = { - factor = 0 - OR = { - has_trait = honest - has_trait = just - has_trait = generous - } - } - } - } - #Slaughter the animals and have a feast - option = { - name = migration_events.1030.c - flavor = migration_events.1030.c.flavor - - if = { - limit = { - has_trait = lifestyle_reveler - } - add_trait_xp = { - trait = lifestyle_reveler - value = 10 - } - } - add_prestige = medium_prestige_gain - every_courtier = { - custom = custom.every_courtier - add_opinion = { - modifier = grateful_opinion - target = root - opinion = 20 - } - } - domicile = { - change_herd = major_herd_loss - } - - stress_impact = { - gluttonous = minor_stress_impact_loss - generous = miniscule_stress_impact_loss - gregarious = miniscule_stress_impact_loss - temperate = minor_stress_impact_gain - stubborn = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 0.5 - ai_greed = -0.5 - } - modifier = { - factor = 0 - has_trait = temperate - } - } - } - #We need to search for somewhere they can graze - option = { - name = migration_events.1030.d - - duel = { - skill = stewardship - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_realm_law = nomadic_authority_1 - add = 20 - } - modifier = { - has_realm_law = nomadic_authority_2 - add = 10 - } - desc = migration_events.1030.d.success - send_interface_toast = { - type = event_toast_effect_good - title = migration_events.1030.d.success - left_icon = root - if = { - limit = { - NOT = { - has_trait = lifestyle_traveler - } - } - add_trait = lifestyle_traveler - } - else = { - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = small_lifestyle_random_xp_mid - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - OR = { - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_4 - } - add = 20 - } - desc = migration_events.1030.d.failure - send_interface_toast = { - type = event_toast_effect_bad - title = migration_events.1030.d.failure - left_icon = root - - domicile = { - change_herd = medium_herd_loss - } - } - } - } - current_travel_plan = { - delay_travel_plan = { days = 20 } - } - - stress_impact = { - impatient = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 0.5 - } - modifier = { - factor = 0 - has_trait = impatient - } - } - } -} - -#Local ruler offers you traditional hospitality and a gift -migration_events.1040 = { - type = character_event - title = migration_events.1040.t - desc = { - desc = migration_events.1040.desc - first_valid = { - triggered_desc = { - trigger = { - root.current_location = { - OR = { - terrain = taiga - terrain = forest - terrain = jungle - terrain = wetlands - } - } - } - desc = migration_events.1040.furs - } - triggered_desc = { - trigger = { - root.current_location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - } - desc = migration_events.1040.camels - } - triggered_desc = { - trigger = { - root.current_location = { - OR = { - terrain = hills - terrain = mountains - terrain = drylands - } - } - } - desc = migration_events.1040.wool - } - desc = migration_events.1040.horses - } - } - theme = migration - override_background = { - reference = mpo_camp_steppe - } - left_portrait = { - character = root - animation = standing_horse - camera = camera_event_standing_with_horse_left - } - right_portrait = { - character = scope:local_ruler - animation = throne_room_bow_1 - } - - trigger = { - age >= 10 - is_migrating = yes - has_mpo_dlc_trigger = yes - location.county = { - NOT = { - any_county_province = { - OR = { - is_raided = yes - is_occupied = yes - } - } - } - } - location.county.holder = { - NOT = { this = root } - age >= 12 - basic_is_available_ai = yes - mpo_lower_nomad_authority_trigger = { CHARACTER = root } - OR = { - government_has_flag = government_is_nomadic - government_has_flag = government_is_herder - } - NOR = { - has_character_flag = migration_events_1040_giver_flag - is_at_war_with = root - is_causing_raid_hostility_towards = root - root = { - is_causing_raid_hostility_towards = prev - } - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - ai_greed <= low_positive_ai_value - OR = { - opinion = { - target = root - value >= -20 - } - has_dread_level_towards = { - target = root - level >= 1 - } - } - } - } - - weight_multiplier = { - base = 2 - modifier = { - add = -1 - location.county.holder = { - opinion = { - target = root - value <= 0 - } - } - } - modifier = { - add = 1 - location.county.holder = { - opinion = { - target = root - value >= 70 - } - } - } - modifier = { - add = 1 - location.county.holder = { - is_vassal_or_below_of = root - } - } - modifier = { - add = 1 - location.county.holder = { - is_allied_to = root - } - } - modifier = { - add = 1 - location.county.holder = { - has_dread_level_towards = { - target = root - level >= 2 - } - } - } - } - - cooldown = { - years = 5 - } - - immediate = { - location.county = { - save_scope_as = location_county - } - location.county.holder = { - save_scope_as = local_ruler - add_character_flag = { - flag = migration_events_1040_giver_flag - years = 1 - } - } - } - #That's all...? - option = { - trigger = { - OR = { - has_realm_law = nomadic_authority_5 - AND = { - has_realm_law = nomadic_authority_4 - scope:local_ruler = { - NOT = { has_realm_law = nomadic_authority_4 } - } - } - AND = { - has_realm_law = nomadic_authority_3 - scope:local_ruler = { - NOT = { has_realm_law = nomadic_authority_3 } - } - } - } - OR = { - has_trait = avaricious - has_trait = conqueror - has_trait = greatest_of_khans - is_gurkhan = yes - scope:local_ruler = { - has_dread_level_towards = { - target = root - level >= 2 - } - } - } - } - name = migration_events.1040.a - add_internal_flag = special - - add_prestige = minor_prestige_gain - scope:local_ruler = { - pay_herd = { - target = root - value = domicile.medium_herd_value - } - } - scope:local_ruler = { - add_opinion = { - target = root - modifier = humiliated_opinion - opinion = -50 - } - progress_towards_rival_effect = { - REASON = rival_extorted_me_for_gifts - CHARACTER = root - OPINION = 0 - } - } - stress_impact = { - base = minor_stress_impact_loss - greedy = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - humble = miniscule_stress_impact_gain - generous = major_stress_impact_gain - compassionate = medium_stress_impact_gain - content = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_compassion = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = compassionate - has_trait = content - } - } - } - } - #We can trade gifts! - option = { - trigger = { - domicile = { - herd >= minor_herd_value - } - } - name = migration_events.1040.b - - #Cultural acceptance gain - if = { - limit = { - NOT = { - culture = scope:local_ruler.culture - } - OR = { - root.culture = { - culture_head = root - } - scope:local_ruler.culture = { - culture_head = scope:local_ruler - } - } - } - culture = { - change_cultural_acceptance = { - target = scope:local_ruler.culture - value = minor_cultural_acceptance_gain - desc = cultural_acceptance_meal_of_hospitality - } - } - } - else_if = { - limit = { - NOT = { - culture = scope:local_ruler.culture - } - #These rulers should be at least a little significant - NOT = { - has_realm_law = nomadic_authority_1 - } - is_ai = no - } - culture = { - change_cultural_acceptance = { - target = scope:local_ruler.culture - value = miniscule_cultural_acceptance_gain - desc = cultural_acceptance_meal_of_hospitality - } - } - } - scope:local_ruler = { - add_opinion = { - target = root - modifier = friendliness_opinion - opinion = 20 - } - } - stress_impact = { - base = minor_stress_impact_loss - gluttonous = miniscule_stress_impact_loss - generous = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - paranoid = miniscule_stress_impact_gain - greedy = medium_stress_impact_gain - callous = minor_stress_impact_gain - sadistic = minor_stress_impact_gain - } - ai_chance = { - base = 50 - ai_value_modifier = { - ai_sociability = 1 - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = callous - has_trait = sadistic - AND = { - OR = { - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_4 - } - scope:local_ruler = { - has_realm_law = nomadic_authority_1 - } - } - } - } - } - } - #We have no time to dawdle - option = { - name = migration_events.1040.c - add_character_modifier = { - modifier = mpo_refusing_diplomatic_stops_modifier - months = 6 - } - reverse_add_opinion = { - target = scope:local_ruler - modifier = spurned_gift_opinion - opinion = -25 - } - if = { - limit = { - is_ai = no - } - scope:local_ruler = { - add_prestige = minor_prestige_loss - } - } - stress_impact = { - impatient = minor_stress_impact_loss - gregarious = medium_stress_impact_gain - gluttonous = medium_stress_impact_gain - humble = minor_stress_impact_gain - patient = minor_stress_impact_gain - lazy = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = -1 - ai_energy = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = gregarious - has_trait = gluttonous - has_trait = humble - has_trait = patient - - } - } - } - } - #Yeah, thanks - option = { - name = migration_events.1040.d - - scope:local_ruler = { - pay_herd = { - target = root - value = domicile.miniscule_herd_value - } - } - stress_impact = { - base = minor_stress_impact_loss - gluttonous = miniscule_stress_impact_loss - temperate = miniscule_stress_impact_gain - impatient = miniscule_stress_impact_gain - paranoid = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - ai_greed = 1 - } - } - } -} - -#Your warriors overrun a local settlement and offer you spoils -migration_events.1050 = { - type = character_event - title = migration_events.1050.t - desc = migration_events.1050.desc - theme = migration - override_background = { - reference = mpo_campfire_steppe - } - left_portrait = { - character = root - animation = personality_dishonorable - } - right_portrait = { - character = scope:warrior - animation = random_weapon_celebrate - } - lower_right_portrait = scope:local_ruler - - trigger = { - age >= 6 - is_migrating = yes - has_mpo_dlc_trigger = yes - location.county = { - NOT = { - any_county_province = { - OR = { - is_raided = yes - is_occupied = yes - } - } - } - } - location.county.holder = { - NOR = { - has_character_flag = migration_events_1050_raided_flag - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - is_tributary_of = root - root = { - is_tributary_of = prev - } - is_vassal_or_below_of = root - root = { - is_vassal_or_below_of = prev - } - is_allied_to = root - house ?= root.house - has_truce = root - } - } - any_courtier = { - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - } - } - - weight_multiplier = { - base = 2 - modifier = { - add = -1 - location.county.holder = { - opinion = { - target = root - value >= 60 - } - } - } - modifier = { - add = -1 - location.county.holder = { - culture = root.culture - } - } - modifier = { - add = 1 - location.county.holder = { - OR = { - is_at_war_with = root - is_causing_raid_hostility_towards = root - root = { - is_causing_raid_hostility_towards = prev - } - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - } - } - } - } - - cooldown = { - years = 5 - } - - immediate = { - - location.county = { - save_scope_as = location_county - } - location.county.holder = { - save_scope_as = local_ruler - add_character_flag = { - flag = migration_events_1050_raided_flag - years = 1 - } - } - random_dummy_gender_soldier_effect = { SCOPE_NAME = dummy_gender } - hidden_effect = { - scope:local_ruler = { - random_list = { - 45 = { - save_scope_value_as = { - name = quality - value = 5 - } - save_scope_value_as = { - name = wealth - value = 5 - } - } - 45 = { - save_scope_value_as = { - name = quality - value = 10 - } - save_scope_value_as = { - name = wealth - value = 10 - } - } - 5 = { - save_scope_value_as = { - name = quality - value = 20 - } - save_scope_value_as = { - name = wealth - value = 20 - } - } - 5 = { - save_scope_value_as = { - name = quality - value = 30 - } - save_scope_value_as = { - name = wealth - value = 30 - } - } - 5 = { - trigger = { - scope:local_ruler = { - highest_held_title_tier >= tier_kingdom - } - } - save_scope_value_as = { - name = quality - value = 40 - } - save_scope_value_as = { - name = wealth - value = 40 - } - } - 5 = { - trigger = { - scope:local_ruler = { - highest_held_title_tier >= tier_empire - } - } - save_scope_value_as = { - name = quality - value = 50 - } - save_scope_value_as = { - name = wealth - value = 50 - } - } - } - clear_saved_scope = root - save_scope_as = root - random_list = { - 1 = { - create_artifact_bow_effect = { OWNER = scope:local_ruler CREATOR = scope:dummy_gender SET_BOW_TYPE = flag:artifact_bow_type_composite } - } - 1 = { - create_artifact_necklace_effect = { OWNER = scope:local_ruler SMITH = scope:dummy_gender } - } - 1 = { - create_artifact_armor_effect = { - OWNER = scope:local_ruler - CREATOR = scope:dummy_gender - SET_ARMOR_TYPE = flag:no - } - } - 1 = { - create_artifact_animal_hide_effect = { - OWNER = scope:local_ruler - HUNTER = scope:local_ruler - LEGENDARY = no - ANIMAL = flag:none - } - } - 1 = { - create_artifact_weapon_effect = { - OWNER = scope:local_ruler - CREATOR = scope:dummy_gender - SET_WEAPON_TYPE = flag:no - } - } - 1 = { - create_artifact_ring_effect = { - OWNER = scope:local_ruler - SMITH = scope:dummy_gender - } - } - 1 = { - create_artifact_bowl_effect = { - OWNER = scope:local_ruler - SMITH = scope:dummy_gender - } - } - 1 = { - create_artifact_brooch_effect = { - OWNER = scope:local_ruler - SMITH = scope:dummy_gender - } - } - } - } - } - clear_saved_scope = root - save_scope_as = root - - random_knight = { - limit = { - is_acclaimed = yes - is_courtier_of = root - } - save_scope_as = warrior - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - } - random_knight = { - limit = { - is_courtier_of = root - } - save_scope_as = warrior - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - } - random_courtier = { - limit = { - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - } - save_scope_as = warrior - } - } - scope:warrior = { - add_character_flag = need_military_outfit - } - scope:local_ruler = { - add_opinion = { - target = root - opinion = -25 - modifier = raided_me_opinion - } - #Steal from AI if root is player - if = { - limit = { - root = { - is_ai = no - } - } - if = { - limit = { - government_has_flag = government_is_nomadic - } - pay_herd = { - target = root - value = root.domicile.minor_herd_value - } - } - else = { - root.domicile = { - change_herd = minor_herd_gain - } - } - pay_short_term_gold = { - target = root - gold = root.minor_gold_value - } - root.location.county = { - change_county_control = minor_county_control_loss - } - } - #Simply gain resources if not - else = { - root = { - domicile = { - change_herd = minor_herd_gain - } - add_gold = minor_gold_value - } - } - } - } - #You're a bold captain, warrior, and deserve acknowledgement - option = { - trigger = { - OR = { - has_trait = gallant - has_trait = strategist - has_trait = education_martial_prowess_2 - has_trait = education_martial_prowess_3 - has_trait = education_martial_prowess_4 - has_trait = education_martial_3 - has_trait = education_martial_4 - has_trait = education_martial_5 - } - } - name = migration_events.1050.a - - scope:newly_created_artifact = { - add_artifact_history = { - location = root.location - actor = scope:local_ruler - recipient = scope:warrior - type = stolen - } - set_owner = scope:warrior - } - if = { - limit = { - scope:warrior = { - is_acclaimed = yes - } - } - scope:warrior.accolade = { - add_glory = minor_glory_gain - } - scope:warrior = { - add_martial_skill = 1 - } - } - else_if = { - limit = { - scope:warrior = { - NOT = { - has_trait = reaver - } - } - } - scope:warrior = { - add_trait = reaver - add_martial_skill = 1 - } - } - else = { - scope:warrior = { - add_martial_skill = 1 - add_prowess_skill = 1 - } - } - if = { - limit = { - scope:warrior = { - NOT = { is_obedient_to = root } - } - } - scope:warrior = { - add_opinion = { - modifier = obedience_opinion - target = root - } - } - } - else_if = { - limit = { - scope:warrior = { - NOT = { - has_trait = disloyal - } - } - } - scope:warrior = { - add_trait = loyal - } - } - - stress_impact = { - greedy = miniscule_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - - } - } - } - } - #BURN AND DESPOIL AS WE GO - option = { - trigger = { - NOT = { - has_realm_law = nomadic_authority_1 - } - OR = { - has_trait = sadistic - has_trait = greedy - has_trait = wrathful - has_trait = arbitrary - has_trait = avaricious - has_trait = torturer - has_trait = conqueror - has_trait = greatest_of_khans - has_trait = overseer - has_trait = viking - } - } - name = migration_events.1050.b - - #Gain gold and herd every time you travel into a new province - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_3 - culture = { - culture_head = root - } - } - } - custom_tooltip = migration_raiding_effect_tt - } - else = { - custom_tooltip = migration_raiding_effect_no_culture_tt - } - scope:newly_created_artifact = { - add_artifact_history = { - location = root.location - actor = scope:local_ruler - recipient = root - type = stolen - } - set_owner = root - } - - add_character_flag = { - flag = migration_raiding_flag - years = 1 - } - add_dread = minor_dread_gain - - stress_impact = { - compassionate = minor_stress_impact_gain - craven = minor_stress_impact_gain - just = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 150 - ai_value_modifier = { - ai_boldness = 1 - ai_compassion = -1 - ai_greed = 1 - } - modifier = { - factor = 0.5 - has_realm_law = nomadic_authority_3 - } - modifier = { - factor = 0 - OR = { - has_trait = content - has_trait = craven - has_trait = compassionate - has_trait = just - has_trait = paranoid - } - } - } - } - #This was cruel, and all loot should be returned to the survivors - option = { - trigger = { - OR = { - has_trait = just - has_trait = compassionate - has_trait = generous - has_trait = forgiving - has_trait = trusting - has_trait = humble - has_trait = diplomat - has_trait = education_diplomacy_3 - has_trait = education_diplomacy_4 - has_trait = education_diplomacy_5 - } - } - name = migration_events.1050.c - - hidden_effect = { - destroy_artifact = scope:newly_created_artifact - } - #Increase culture acceptance - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_3 - culture = { - culture_head = root - } - } - NOT = { - culture = scope:local_ruler.culture - } - } - culture = { - change_cultural_acceptance = { - target = scope:local_ruler.culture - value = minor_cultural_acceptance_gain - desc = cultural_acceptance_recompense_for_raiding - } - } - - } - else = { - add_piety = medium_piety_gain - } - scope:local_ruler = { - add_opinion = { - target = root - modifier = kindness_opinion - opinion = 50 - } - } - location.county = { - change_county_control = minor_county_control_gain - } - remove_short_term_gold = minor_gold_value - domicile = { - change_herd = minor_herd_loss - } - - stress_impact = { - greedy = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - vengeful = miniscule_stress_impact_gain - sadistic = minor_stress_impact_gain - callous = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_compassion = 1 - ai_greed = -1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = arbitrary - has_trait = arrogant - has_trait = sadistic - has_trait = callous - } - } - } - } - #Distribute my share among my men - option = { - name = migration_events.1050.d - - scope:newly_created_artifact = { - add_artifact_history = { - location = root.location - actor = scope:local_ruler - recipient = scope:warrior - type = stolen - } - set_owner = scope:warrior - } - - remove_short_term_gold = minor_gold_value - domicile = { - change_herd = minor_herd_loss - } - if = { - limit = { - any_knight = { - NOT = { - this = scope:warrior - } - } - } - every_knight = { - custom = custom.every_knight - if = { - limit = { - root = { has_realm_law = nomadic_authority_1 } - } - add_opinion = { - target = root - opinion = 25 - modifier = loyalty_opinion - } - add_prowess_skill = 1 - } - else_if = { - limit = { - root = { has_realm_law = nomadic_authority_2 } - } - add_opinion = { - target = root - opinion = 20 - modifier = loyalty_opinion - } - add_prowess_skill = 1 - } - else_if = { - limit = { - root = { has_realm_law = nomadic_authority_3 } - } - add_opinion = { - target = root - opinion = 15 - modifier = loyalty_opinion - } - add_stress = minor_stress_impact_loss - } - else = { - add_opinion = { - target = root - opinion = 10 - modifier = loyalty_opinion - } - add_stress = minor_stress_impact_loss - } - } - } - else = { - scope:warrior = { - if = { - limit = { - root = { has_realm_law = nomadic_authority_1 } - } - add_prowess_skill = 1 - } - else_if = { - limit = { - root = { has_realm_law = nomadic_authority_2 } - } - add_prowess_skill = 1 - } - else_if = { - limit = { - root = { has_realm_law = nomadic_authority_3 } - } - add_stress = minor_stress_impact_loss - } - else = { - add_stress = minor_stress_impact_loss - } - } - } - - if = { - limit = { - any_knight = { - NOT = { is_obedient_to = root } - } - } - random_knight = { - limit = { NOT = { is_obedient_to = root } } - add_opinion = { - modifier = obedience_opinion - target = root - } - } - } - stress_impact = { - greedy = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_honor = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = arrogant - } - } - } - } - #I will take my share - option = { - name = migration_events.1050.e - - #Gain artifact - - scope:newly_created_artifact = { - add_artifact_history = { - location = root.location - actor = scope:local_ruler - recipient = root - type = stolen - } - set_owner = root - } - - stress_impact = { - generous = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = miniscule_stress_impact_gain - compassionate = miniscule_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = humble - } - } - } - } - after = { - scope:warrior = { - remove_character_flag = need_military_outfit - } - } -} - -migration_events.1051 = { - hidden = yes - - immediate = { - location = { - save_scope_as = raided_settlement - } - send_interface_message = { - type = event_raiding_good_with_text - title = migration_events.1051_title - desc = migration_events.1051_tooltip - left_icon = scope:local_ruler - - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - } - } - add_gold = medium_gold_value - } - if = { - limit = { - OR = { - has_realm_law = nomadic_authority_3 - has_realm_law = nomadic_authority_2 - } - } - add_gold = minor_gold_value - } - if = { - limit = { - has_realm_law = nomadic_authority_1 - } - add_gold = miniscule_gold_value - } - domicile = { - change_herd = miniscule_herd_gain - } - #Decrease culture acceptance and opinion wherever you go - reverse_add_opinion = { - opinion = -20 - modifier = raided_me_opinion - target = scope:local_ruler - } - if = { - limit = { - NOT = { - culture = scope:local_ruler.culture - } - OR = { - has_realm_law = nomadic_authority_4 - has_realm_law = nomadic_authority_5 - has_realm_law = nomadic_authority_3 - culture = { - culture_head = root - } - } - } - culture = { - change_cultural_acceptance = { - target = scope:local_ruler.culture - value = miniscule_cultural_acceptance_loss - desc = cultural_acceptance_raiding_migrators - } - } - } - if = { - limit = { - scope:local_ruler = { - is_ai = yes - } - } - location.county = { - change_county_control = miniscule_county_control_loss - } - } - } - } -} - -#It's tough going getting through the local terrain. Your young warriors are frustrated and want to ride ahead to the destination -migration_events.1060 = { - type = character_event - title = migration_events.1060.t - desc = { - first_valid = { - triggered_desc = { - trigger = { - root = { - location_has_harsh_winter_trigger = yes - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - desc = migration_events.1060.desc_winter - } - triggered_desc = { - trigger = { - root.location = { - terrain = desert - } - } - desc = migration_events.1060.desc_desert - } - triggered_desc = { - trigger = { - root.location = { - OR = { - terrain = forest - terrain = taiga - } - } - } - desc = migration_events.1060.desc_forest - } - triggered_desc = { - trigger = { - root.location = { - terrain = wetlands - } - } - desc = migration_events.1060.desc_wetlands - } - desc = migration_events.1060.desc_hilly - } - desc = migration_events.1060.desc - } - theme = migration - override_background = { - reference = wilderness - } - left_portrait = { - character = root - animation = horse_exhausted - camera = camera_event_horse_very_left - } - right_portrait = { - character = scope:warrior - animation = horse_surveying - camera = camera_event_horse_right_facing_left - } - - trigger = { - age >= 10 - is_migrating = yes - has_mpo_dlc_trigger = yes - location = { - OR = { - terrain = desert_mountains - terrain = mountains - terrain = hills - terrain = desert - terrain = forest - terrain = wetlands - terrain = taiga - AND = { - has_province_modifier = winter_harsh_modifier - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - any_courtier = { - is_adult = yes - age < 50 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - ai_energy >= 0 - } - current_travel_plan = { - final_destination_province.county = { - NOT = { - has_county_modifier = mpo_migration_prepared_home_modifier - } - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - add = 1 - location = { - OR = { - terrain = desert_mountains - terrain = mountains - terrain = desert - terrain = wetlands - } - } - } - } - - cooldown = { - years = 5 - } - - immediate = { - location.county = { - save_scope_as = location_county - } - location = { - save_scope_as = root_location - } - location.county.holder = { - save_scope_as = local_ruler - add_character_flag = { - flag = migration_events_1040_giver_flag - years = 1 - } - } - if = { - limit = { - primary_heir = { - is_courtier_of = root - is_adult = yes - age < 50 - basic_is_available_ai = yes - ai_energy >= low_negative_ai_value - } - } - primary_heir = { - save_scope_as = warrior - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - exists = house - } - random_close_family_member = { - limit = { - is_courtier_of = root - is_adult = yes - age < 50 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - ai_energy >= low_negative_ai_value - } - save_scope_as = warrior - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - exists = house - } - random_councillor = { - limit = { - is_courtier_of = root - is_adult = yes - age < 50 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - ai_energy >= 0 - } - save_scope_as = warrior - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - exists = house - } - house = { - random_house_member = { - limit = { - is_knight_of = root - is_courtier_of = root - is_adult = yes - age < 50 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - ai_energy >= 0 - } - save_scope_as = warrior - } - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - } - random_knight = { - limit = { - age < 50 - basic_is_available_ai = yes - ai_energy >= 0 - } - save_scope_as = warrior - } - } - if = { - limit = { - NOT = { - exists = scope:warrior - } - } - random_courtier = { - limit = { - is_adult = yes - age < 50 - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - basic_is_available_ai = yes - ai_energy >= 0 - } - save_scope_as = warrior - } - } - domicile = { - change_herd = miniscule_herd_loss - } - current_travel_plan = { - final_destination_province.county = { - save_scope_as = destination - } - } - } - #Come with me, I'll find us an easier route - option = { - trigger = { - OR = { - has_trait = lifestyle_traveler - has_trait = organizer - has_trait = logistician - AND = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - has_trait = rough_terrain_expert - } - AND = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - has_trait = desert_warrior - } - AND = { - location = { - OR = { - terrain = forest - terrain = taiga - } - } - has_trait = forest_fighter - } - AND = { - location_has_harsh_winter_trigger = yes - has_trait = winter_soldier - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - name = migration_events.1060.a - - duel = { - skills = { martial stewardship } - value = medium_skill_rating - - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - min = -49 - } - modifier = { - add = 30 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - } - modifier = { - add = 30 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 100 - } - } - modifier = { - add = 30 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - } - modifier = { - add = 30 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 100 - } - } - modifier = { - add = 15 - OR = { - has_trait = organizer - has_trait = logistician - AND = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - has_trait = rough_terrain_expert - } - AND = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - has_trait = desert_warrior - } - AND = { - location = { - OR = { - terrain = forest - terrain = taiga - } - } - has_trait = forest_fighter - } - AND = { - location_has_harsh_winter_trigger = yes - has_trait = winter_soldier - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - modifier = { - add = 30 - OR = { - AND = { - has_trait = organizer - has_trait_xp = { - trait = organizer - value >= 50 - } - } - AND = { - has_trait = logistician - has_trait_xp = { - trait = logistician - value >= 50 - } - } - AND = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - AND = { - has_trait = rough_terrain_expert - has_trait_xp = { - trait = rough_terrain_expert - value >= 50 - } - } - } - AND = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - AND = { - has_trait = desert_warrior - has_trait_xp = { - trait = desert_warrior - value >= 50 - } - } - } - AND = { - location = { - OR = { - terrain = forest - terrain = taiga - } - } - AND = { - has_trait = forest_fighter - has_trait_xp = { - trait = forest_fighter - value >= 50 - } - } - } - AND = { - location_has_harsh_winter_trigger = yes - AND = { - has_trait = winter_soldier - has_trait_xp = { - trait = winter_soldier - value >= 50 - } - } - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - modifier = { - add = 30 - OR = { - AND = { - has_trait = organizer - has_trait_xp = { - trait = organizer - value >= 100 - } - } - AND = { - has_trait = logistician - has_trait_xp = { - trait = logistician - value >= 100 - } - } - AND = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - AND = { - has_trait = rough_terrain_expert - has_trait_xp = { - trait = rough_terrain_expert - value >= 100 - } - } - } - AND = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - AND = { - has_trait = desert_warrior - has_trait_xp = { - trait = desert_warrior - value >= 100 - } - } - } - AND = { - location = { - OR = { - terrain = forest - terrain = taiga - } - } - AND = { - has_trait = forest_fighter - has_trait_xp = { - trait = forest_fighter - value >= 100 - } - } - } - AND = { - location_has_harsh_winter_trigger = yes - AND = { - has_trait = winter_soldier - has_trait_xp = { - trait = winter_soldier - value >= 100 - } - } - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - } - desc = mpo_migration_events.1060.a.success - send_interface_toast = { - type = event_toast_effect_good - title = mpo_migration_events.1060.a.success - left_icon = root - - if = { - limit = { - AND = { - location = { - OR = { - terrain = hills - terrain = mountains - terrain = wetlands - } - } - has_trait = rough_terrain_expert - } - } - add_trait_xp = { - trait = rough_terrain_expert - value = 33 - } - } - else_if = { - limit = { - AND = { - location = { - OR = { - terrain = desert - terrain = desert_mountains - } - } - has_trait = desert_warrior - } - } - add_trait_xp = { - trait = desert_warrior - value = 33 - } - } - else_if = { - limit = { - AND = { - location = { - OR = { - terrain = forest - terrain = taiga - } - } - has_trait = forest_fighter - } - } - add_trait_xp = { - trait = forest_fighter - value = 33 - } - } - else_if = { - limit = { - AND = { - location_has_harsh_winter_trigger = yes - has_trait = winter_soldier - OR = { - current_month >= 11 - current_month <= 4 - } - } - } - add_trait_xp = { - trait = winter_soldier - value = 33 - } - } - else_if = { - limit = { - has_trait = organizer - } - add_trait_xp = { - trait = organizer - value = 33 - } - } - else_if = { - limit = { - has_trait = logistician - } - add_trait_xp = { - trait = logistician - value = 33 - } - } - else_if = { - limit = { - has_trait = lifestyle_traveler - } - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 15 - } - } - add_character_modifier = { - modifier = mpo_found_paths_for_herds_modifier - months = 6 - } - reverse_add_opinion = { - modifier = impressed_opinion - target = scope:warrior - opinion = 15 - } - - } - } - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - min = -49 - } - modifier = { - add = 20 - health < fine_health - } - modifier = { - add = 20 - health < poor_health - } - modifier = { - add = 20 - NOR = { - knows_language_of_culture = root.location.county.culture - is_allied_to = root.location.county.holder - has_any_good_relationship_with_character_trigger = { CHARACTER = root.location.county.holder } - is_liege_or_above_of = root.location.county.holder - is_vassal_of = root.location.county.holder - } - } - desc = mpo_migration_events.1060.a.failure - send_interface_toast = { - type = event_toast_effect_bad - title = mpo_migration_events.1060.a.failure - left_icon = root - - add_stress = miniscule_stress_impact_gain - domicile = { - change_herd = minor_herd_loss - } - current_travel_plan = { - delay_travel_plan = { days = 15 } - } - } - } - } - - - stress_impact = { - trusting = minor_stress_impact_gain - content = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - ai_energy = 1 - } - modifier = { - add = 50 - stewardship >= high_skill_rating - } - modifier = { - add = 50 - martial >= high_skill_rating - } - modifier = { - add = 50 - stewardship >= extremely_high_skill_rating - } - modifier = { - add = 50 - martial >= extremely_high_skill_rating - } - modifier = { - add = -50 - stewardship < medium_skill_rating - } - modifier = { - add = -50 - martial < medium_skill_rating - } - modifier = { - add = -50 - stewardship <= low_skill_rating - } - modifier = { - add = -50 - martial <= low_skill_rating - } - modifier = { - add = -50 - health < poor_health - } - modifier = { - add = 50 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = danger - value >= 50 - } - } - modifier = { - add = 50 - has_trait = lifestyle_traveler - has_trait_xp = { - trait = lifestyle_traveler - track = travel - value >= 50 - } - } - modifier = { - factor = 0 - OR = { - has_trait = trusting - has_trait = content - } - } - } - } - #You can ride ahead, but scout out our destination and prepare it well - option = { - name = migration_events.1060.b - - if = { - limit = { - scope:warrior = { - NOT = { is_obedient_to = root } - } - } - scope:warrior = { - add_stress = medium_stress_loss - } - } - else = { - scope:warrior = { - add_opinion = { - modifier = obedience_opinion - target = root - } - } - } - scope:warrior = { - if = { - limit = { - OR = { - has_trait = education_martial_1 - has_trait = education_martial_2 - has_trait = education_martial_3 - has_trait = education_martial_4 - has_trait = education_martial_5 - } - } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - else_if = { - limit = { - OR = { - has_trait = education_stewardship_1 - has_trait = education_stewardship_2 - has_trait = education_stewardship_3 - has_trait = education_stewardship_4 - has_trait = education_stewardship_5 - } - } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - } - else = { - add_prestige = medium_prestige_gain - } - } - scope:destination = { - add_county_modifier = { - modifier = mpo_migration_prepared_home_modifier - years = 5 - } - } - add_character_modifier = { - modifier = mpo_migrating_without_labor_modifier - months = 6 - } - - stress_impact = { - craven = minor_stress_impact_gain - stubborn = minor_stress_impact_gain - impatient = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = stubborn - has_trait = impatient - has_trait = paranoid - } - } - } - } - #You remain with us. There's hard labor to do - option = { - name = migration_events.1060.c - - scope:warrior = { - if = { - limit = { - NOT = { - has_trait = lifestyle_traveler - } - } - add_trait = lifestyle_traveler - } - else = { - add_trait_xp = { - trait = lifestyle_traveler - track = danger - value = 20 - } - } - add_stress = miniscule_stress_gain - } - reverse_add_opinion = { - modifier = refusal_opinion - target = scope:warrior - opinion = -20 - } - - - stress_impact = { - fickle = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - trusting = medium_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_rationality = 1 - } - modifier = { - factor = 0 - OR = { - has_trait = fickle - has_trait = arbitrary - has_trait = trusting - } - } - } - } -} diff --git a/events/dlc/mpo/mpo_migration_travel_events.txt b/events/dlc/mpo/mpo_migration_travel_events.txt index 772a7b823..f44157e2c 100644 --- a/events/dlc/mpo/mpo_migration_travel_events.txt +++ b/events/dlc/mpo/mpo_migration_travel_events.txt @@ -74,7 +74,7 @@ mpo_migration_travel_events.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } @@ -110,7 +110,7 @@ mpo_migration_travel_events.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain } @@ -199,7 +199,7 @@ mpo_migration_travel_events.0010 = { custom_tooltip = no_longer_herd_limit_tt - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss compassionate = minor_stress_impact_loss } @@ -233,7 +233,7 @@ mpo_migration_travel_events.0010 = { custom_tooltip = no_longer_herd_limit_tt - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss compassionate = minor_stress_impact_loss } @@ -278,7 +278,7 @@ mpo_migration_travel_events.0010 = { custom_tooltip = no_longer_herd_limit_tt - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss greedy = minor_stress_impact_loss } @@ -312,7 +312,7 @@ mpo_migration_travel_events.0010 = { opinion = -5 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss diligent = minor_stress_impact_gain } @@ -383,7 +383,7 @@ mpo_migration_travel_events.0020 = { option = { name = mpo_migration_travel_events.0020.a - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -457,7 +457,7 @@ mpo_migration_travel_events.0020 = { type = event_toast_effect_bad left_icon = root right_icon = scope:astrologer - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } } @@ -528,7 +528,7 @@ mpo_migration_travel_events.0030 = { domicile = { change_herd = medium_herd_loss } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain compassionate = minor_stress_impact_gain callous = minor_stress_impact_loss @@ -578,7 +578,7 @@ mpo_migration_travel_events.0030 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } ai_chance = { @@ -778,7 +778,7 @@ mpo_migration_travel_events.0040 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss craven = minor_stress_impact_gain } @@ -802,14 +802,14 @@ mpo_migration_travel_events.0040 = { flavor = mpo_migration_travel_events.0040.b_flavor remove_short_term_gold = minor_gold_value - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss greedy = miniscule_stress_impact_gain } current_travel_plan = { delay_travel_plan = { days = 15 } } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss } @@ -843,7 +843,7 @@ mpo_migration_travel_events.0040 = { current_travel_plan = { delay_travel_plan = { days = 60 } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss } @@ -863,13 +863,15 @@ scripted_trigger is_eligible_courtier_0050 = { is_consort_of = root is_close_family_of = root } + might_cheat_on_every_partner_trigger = yes } scripted_trigger is_eligible_local_0050 = { is_adult = yes is_ai = yes exists = liege - liege ?= { NOT = { this = root } } + liege ?= { this != root } + might_cheat_on_every_partner_trigger = yes } # A courtier falls in love with a local and wants to stay @@ -989,7 +991,7 @@ mpo_migration_travel_events.0050 = { add_courtier = scope:courtier } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss } @@ -1021,7 +1023,7 @@ mpo_migration_travel_events.0050 = { opinion = -20 } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss } @@ -1047,6 +1049,7 @@ mpo_migration_travel_events.0050 = { name = mpo_migration_travel_events.0050.c trigger = { has_trait = lustful + might_cheat_on_every_partner_trigger = yes can_set_relation_lover_trigger = { CHARACTER = scope:courtier } is_similar_age_trigger = { CHARACTER = scope:courtier } } @@ -1069,7 +1072,7 @@ mpo_migration_travel_events.0050 = { scope:courtier = { remove_relation_lover = scope:local } set_relation_lover = scope:courtier } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } } @@ -1117,7 +1120,7 @@ mpo_migration_travel_events.0050 = { IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss sadistic = minor_stress_impact_loss } @@ -1255,7 +1258,7 @@ mpo_migration_travel_events.0060 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain brave = minor_stress_impact_loss } @@ -1306,7 +1309,7 @@ mpo_migration_travel_events.0060 = { 30 = {} } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain callous = minor_stress_impact_loss lazy = minor_stress_impact_loss diff --git a/events/dlc/mpo/mpo_nomad_events_1.txt b/events/dlc/mpo/mpo_nomad_events_1.txt index daf30e275..a851250e6 100644 --- a/events/dlc/mpo/mpo_nomad_events_1.txt +++ b/events/dlc/mpo/mpo_nomad_events_1.txt @@ -309,7 +309,7 @@ mpo_nomad_events.1000 = { custom_tooltip = keep_warrior_head_tt - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain } ai_chance = { @@ -368,7 +368,7 @@ mpo_nomad_events.1000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain sadistic = minor_stress_impact_gain } @@ -400,7 +400,7 @@ mpo_nomad_events.1000 = { #Give artifact to accolade knight scope:head_artifact = { set_owner = { - target = scope:book_recipient + target = scope:beheaded_accolade_knight history = { location = root.capital_province actor = root @@ -417,7 +417,7 @@ mpo_nomad_events.1000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { content = minor_stress_impact_gain forgiving = minor_stress_impact_gain } @@ -458,7 +458,7 @@ mpo_nomad_events.1000 = { add_piety = minor_piety_gain destroy_artifact = scope:head_artifact - stress_impact = { + stress_and_fulfillment_impact = { eccentric = medium_stress_impact_gain vengeful = minor_stress_impact_gain greedy = minor_stress_impact_gain @@ -492,9 +492,9 @@ mpo_nomad_events.1010 = { #Create head artifact if = { limit = { - OR = { - has_character_flag = execution_head_illustrious_flag - has_character_flag = execution_head_famed_flag + has_variable = { + name = execution_head_illustrious_flag + name = execution_head_famed_flag } } mpo_execution_head_artifact_creation_effect = yes @@ -549,7 +549,7 @@ scripted_effect mpo_nomad_events_1011_heir_resents_effect = { # Target House Head TARGET = scope:executioner # Feud Reason - REASON = head_killed + REASON = head_skull_sent # House Member attacker if relevant ATTACKER = scope:executioner # House Member victim if relevant @@ -1456,13 +1456,13 @@ mpo_nomad_events.1011 = { max_military_strength > root.max_military_strength } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain compassionate = medium_stress_impact_gain content = medium_stress_impact_gain } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain compassionate = medium_stress_impact_gain content = miniscule_stress_impact_gain @@ -1733,7 +1733,7 @@ mpo_nomad_events.1012 = { has_trait = devoted } OR = { -# faith.religion = faith:tengri_pagan.religion + faith.religion = faith:tengri_pagan.religion has_trait = nomadic_philosophy government_has_flag = government_is_nomadic } @@ -1800,7 +1800,7 @@ mpo_nomad_events.1012 = { limit = { mpo_nomad_events_1011_heir_unafraid_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss forgiving = minor_stress_impact_loss calm = miniscule_stress_impact_loss @@ -1813,7 +1813,7 @@ mpo_nomad_events.1012 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss forgiving = minor_stress_impact_loss calm = miniscule_stress_impact_loss @@ -1837,7 +1837,7 @@ mpo_nomad_events.1012 = { limit = { mpo_nomad_events_1011_heir_unafraid_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain forgiving = minor_stress_impact_gain compassionate = miniscule_stress_impact_gain @@ -1846,7 +1846,7 @@ mpo_nomad_events.1012 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_gain forgiving = major_stress_impact_gain compassionate = medium_stress_impact_gain @@ -1922,7 +1922,7 @@ mpo_nomad_events.1012 = { limit = { mpo_nomad_events_1011_heir_unafraid_trigger = yes } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = major_stress_impact_gain wrathful = major_stress_impact_gain just = major_stress_impact_gain @@ -1932,7 +1932,7 @@ mpo_nomad_events.1012 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain wrathful = medium_stress_impact_gain just = minor_stress_impact_gain @@ -1981,7 +1981,6 @@ mpo_nomad_events.1013 = { trigger = { has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic is_alive = yes is_ruler = yes NOT = { @@ -2397,7 +2396,7 @@ mpo_nomad_events.1020 = { } root = { any_court_position_holder = { - this ?= scope:potential_defector_spouse + scope:potential_defector_spouse ?= this } } } @@ -2537,7 +2536,7 @@ mpo_nomad_events.1020 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain compassionate = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -2675,6 +2674,7 @@ mpo_nomad_events.1020 = { house = { every_house_member = { limit = { + is_alive = yes # die during processing will keep in list NOT = { this = root } @@ -2688,7 +2688,7 @@ mpo_nomad_events.1020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain generous = major_stress_impact_gain craven = major_stress_impact_gain @@ -2784,12 +2784,12 @@ mpo_nomad_events.1020 = { add = -100 } modifier = { - trait_is_criminal_in_faith_trigger = { FAITH = root.faith TRAIT = trait:kinslayer_3 GENDER_CHARACTER = root } + trait_is_criminal_in_rite_trigger = { RITE = root.rite TRAIT = trait:kinslayer_3 GENDER_CHARACTER = root } add = -25 } modifier = { NOT = { - trait_is_shunned_or_criminal_in_faith_trigger = { FAITH = root.faith TRAIT = trait:kinslayer_3 GENDER_CHARACTER = root } + trait_is_shunned_or_criminal_in_rite_trigger = { RITE = root.rite TRAIT = trait:kinslayer_3 GENDER_CHARACTER = root } } add = 50 } @@ -2891,7 +2891,7 @@ mpo_nomad_events.1020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain ambitious = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -3265,7 +3265,7 @@ mpo_nomad_events.1020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = major_stress_impact_gain arrogant = medium_stress_impact_gain ambitious = medium_stress_impact_gain @@ -3670,7 +3670,7 @@ mpo_nomad_events.1020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } ai_chance = { @@ -3929,7 +3929,7 @@ mpo_nomad_events.1020 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = major_stress_impact_gain generous = major_stress_impact_gain compassionate = medium_stress_impact_gain @@ -4058,7 +4058,7 @@ mpo_nomad_events.1022 = { modifier = mpo_quelled_family_dissent_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain compassionate = minor_stress_impact_gain forgiving = minor_stress_impact_gain @@ -4311,7 +4311,7 @@ mpo_nomad_events.1030 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = { add = miniscule_stress_impact_gain multiply = 0.5 @@ -4387,7 +4387,7 @@ mpo_nomad_events.1030 = { add_trait = strong } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain paranoid = minor_stress_impact_gain } @@ -4463,7 +4463,7 @@ mpo_nomad_events.1030 = { add_trait = lifestyle_hunter } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = miniscule_stress_impact_gain impatient = miniscule_stress_impact_gain } @@ -4539,7 +4539,7 @@ mpo_nomad_events.1030 = { add_trait = lifestyle_traveler } } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = miniscule_stress_impact_gain callous = miniscule_stress_impact_gain } @@ -5065,7 +5065,7 @@ mpo_nomad_events.1050 = { else = { add_piety = minor_piety_loss } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss compassionate = medium_stress_impact_gain generous = medium_stress_impact_gain @@ -5175,7 +5175,7 @@ mpo_nomad_events.1050 = { value = domicile.medium_herd_value } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss arrogant = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -5209,7 +5209,7 @@ mpo_nomad_events.1050 = { domicile = { change_herd = minor_herd_loss } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arbitrary = medium_stress_impact_gain } @@ -5240,7 +5240,7 @@ mpo_nomad_events.1050 = { change_county_fertility = medium_county_fertility_loss } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain generous = medium_stress_impact_gain just = minor_stress_impact_gain @@ -5462,7 +5462,7 @@ mpo_nomad_events.1060 = { domicile = { change_herd = miniscule_herd_loss } - stress_impact = { + stress_and_fulfillment_impact = { greedy = miniscule_stress_impact_loss diligent = minor_stress_impact_loss ambitious = miniscule_stress_impact_loss @@ -5522,7 +5522,7 @@ mpo_nomad_events.1060 = { opinion = -30 } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = miniscule_stress_impact_loss craven = medium_stress_impact_gain calm = minor_stress_impact_gain @@ -5741,7 +5741,7 @@ mpo_nomad_events.1070 = { remove_trait = hashishiyah } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain temperate = minor_stress_impact_loss content = medium_stress_impact_gain @@ -5795,7 +5795,7 @@ mpo_nomad_events.1070 = { } } add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss zealous = minor_stress_impact_loss cynical = medium_stress_impact_gain @@ -5898,7 +5898,7 @@ mpo_nomad_events.1070 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_gain lazy = minor_stress_impact_gain trusting = minor_stress_impact_gain @@ -5948,7 +5948,7 @@ mpo_nomad_events.1070 = { modifier = nomad_alone_in_adversity_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain arrogant = minor_stress_impact_gain paranoid = minor_stress_impact_gain @@ -6164,6 +6164,7 @@ mpo_nomad_events.1080 = { location = root.location culture = scope:neighbor_county.culture faith = scope:neighbor_county.faith + rite = scope:neighbor_county.rite gender_female_chance = root_soldier_female_chance save_scope_as = escaped_warrior } @@ -6171,7 +6172,7 @@ mpo_nomad_events.1080 = { random_list = { 1 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:witch RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = witch } @@ -6180,49 +6181,49 @@ mpo_nomad_events.1080 = { } 1 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:incestuous FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:incestuous RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = incestuous } 1 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:kinslayer_1 FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:kinslayer_1 RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = kinslayer_1 } 1 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:kinslayer_2 FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:kinslayer_2 RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = kinslayer_2 } 1 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:kinslayer_3 FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:kinslayer_3 RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = kinslayer_3 } 3 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:deviant RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = deviant } 3 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:fornicator FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:fornicator RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = fornicator } 3 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:adulterer FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:adulterer RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = adulterer } 3 = { trigger = { - trait_is_criminal_in_faith_trigger = { TRAIT = trait:sodomite FAITH = scope:neighbor_ruler.faith GENDER_CHARACTER = scope:escaped_warrior } + trait_is_criminal_in_rite_trigger = { TRAIT = trait:sodomite RITE = scope:neighbor_ruler.rite GENDER_CHARACTER = scope:escaped_warrior } } add_trait = sodomite } @@ -6332,7 +6333,11 @@ mpo_nomad_events.1080 = { opinion = -20 } } - stress_impact = { + if = { + limit = { scope:escaped_warrior = { has_trait = witch } } + pam_witch_embrace_fulfillment_effect = yes + } + stress_and_fulfillment_impact = { just = major_stress_impact_gain zealous = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -6522,7 +6527,7 @@ mpo_nomad_events.1080 = { increase_wounds_effect = { REASON = fight } } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain humble = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -6608,7 +6613,7 @@ mpo_nomad_events.1080 = { TARGET = scope:escaped_warrior IMPRISONER = scope:neighbor_ruler } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = minor_stress_impact_gain arbitrary = minor_stress_impact_gain } @@ -6777,10 +6782,10 @@ mpo_nomad_events.1091 = { # faith.religion = faith:tengri_pagan.religion } #Can have multiple wives or concubines - faith = { + rite = { OR = { - has_doctrine = doctrine_polygamy - has_doctrine = doctrine_concubines + rite_has_doctrine = doctrine_polygamy + rite_has_doctrine = doctrine_concubines } } is_male = yes @@ -6797,7 +6802,7 @@ mpo_nomad_events.1091 = { } #Can marry the widow NOT = { - relation_with_character_is_incestuous_in_my_faith_trigger = { CHARACTER = scope:widow } + relation_with_character_is_incestuous_in_my_rite_trigger = { CHARACTER = scope:widow } } is_imprisoned = no } @@ -6989,7 +6994,7 @@ mpo_nomad_events.1091 = { years = 10 } custom_tooltip = family_widow_seduce_romance_bonus_tt - stress_impact = { + stress_and_fulfillment_impact = { lustful = miniscule_stress_impact_loss impatient = miniscule_stress_impact_loss chaste = major_stress_impact_gain @@ -7207,7 +7212,7 @@ mpo_nomad_events.1091 = { } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_gain humble = minor_stress_impact_gain } @@ -7341,7 +7346,7 @@ mpo_nomad_events.1091 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_gain fickle = minor_stress_impact_gain } @@ -7447,7 +7452,7 @@ mpo_nomad_events.1091 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain generous = minor_stress_impact_gain just = minor_stress_impact_gain @@ -7876,7 +7881,7 @@ mpo_nomad_events.1100 = { domicile = { change_herd = medium_herd_loss } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -7967,7 +7972,7 @@ mpo_nomad_events.1100 = { change_county_fertility = medium_county_fertility_loss } - stress_impact = { + stress_and_fulfillment_impact = { content = medium_stress_impact_gain calm = minor_stress_impact_gain patient = minor_stress_impact_gain @@ -8148,7 +8153,7 @@ mpo_nomad_events.1100 = { years = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_gain } ai_chance = { @@ -8449,7 +8454,7 @@ mpo_nomad_events.1110 = { custom_tooltip = fishing_counties_gold_scaling } - stress_impact = { + stress_and_fulfillment_impact = { } ai_chance = { base = 300 @@ -8475,7 +8480,7 @@ mpo_nomad_events.1110 = { change_county_fertility = minor_county_fertility_loss } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = miniscule_stress_impact_loss calm = minor_stress_impact_gain humble = minor_stress_impact_gain @@ -8508,7 +8513,7 @@ mpo_nomad_events.1110 = { change_county_fertility = minor_county_fertility_gain } } - stress_impact = { + stress_and_fulfillment_impact = { stubborn = minor_stress_impact_gain arrogant = minor_stress_impact_gain } @@ -8655,7 +8660,7 @@ mpo_nomad_events.1120 = { change_county_fertility = minor_county_fertility_gain } - stress_impact = { + stress_and_fulfillment_impact = { humble = miniscule_stress_impact_gain } ai_chance = { @@ -8780,7 +8785,7 @@ mpo_nomad_events.1120 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain lazy = minor_stress_impact_gain } @@ -8910,7 +8915,7 @@ mpo_nomad_events.1120 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { patient = minor_stress_impact_gain } ai_chance = { @@ -8935,7 +8940,7 @@ mpo_nomad_events.1120 = { domicile = { change_herd = minor_herd_loss } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain wrathful = medium_stress_impact_gain greedy = medium_stress_impact_gain diff --git a/events/dlc/mpo/mpo_nomads_blood_brothers_windy.txt b/events/dlc/mpo/mpo_nomads_blood_brothers_windy.txt deleted file mode 100644 index a22809955..000000000 --- a/events/dlc/mpo/mpo_nomads_blood_brothers_windy.txt +++ /dev/null @@ -1,131 +0,0 @@ -namespace = mpo_bb_events - -############################ -## Nomadic blood brother events -## 0001-0099 -## By Alexander Windahl -############################ - -mpo_bb_events.0001 = { - type = character_event - title = mpo_bb_events.0001.t - desc = mpo_bb_events.0001.desc - theme = nomads - cooldown = { years = 15 } - - left_portrait = { - character = root - animation = stayback - } - - right_portrait = { - character = scope:my_blood_brother - animation = aggressive_unarmed - } - - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - any_ally = { - has_relation_blood_brother = root - is_available_ai_adult = yes - } - } - - immediate = { - random_ally = { - limit = { - has_relation_blood_brother = root - is_available_ai_adult = yes - } - save_scope_as = my_blood_brother - } - } - - option = { - ai_chance = { - base = 100 - } - name = mpo_bb_events.0001.a - - duel = { - skill = prowess - target = scope:my_blood_brother - # You win - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = mpo_bb_events.0001.a.tt_success - send_interface_toast = { - title = mpo_bb_events.0001.a.tt_success - left_icon = scope:my_blood_brother - add_prestige = minor_prestige_gain - reverse_add_opinion = { - target = scope:my_blood_brother - modifier = impressed_opinion - opinion = 30 - } - } - } - # You lose - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = mpo_bb_events.0001.a.tt_failure - send_interface_toast = { - title = mpo_bb_events.0001.a.tt_failure - left_icon = scope:my_blood_brother - add_prestige = miniscule_prestige_loss - reverse_add_opinion = { - target = scope:my_blood_brother - modifier = amused_opinion - opinion = 10 - } - } - } - } - } - - option = { - ai_chance = { - base = 100 - } - name = mpo_bb_events.0001.b - add_dread = minor_dread_loss - - reverse_add_opinion = { - target = scope:my_blood_brother - modifier = softening_disposition_opinion - opinion = 5 - } - } - - option = { - ai_chance = { - base = 100 - } - name = mpo_bb_events.0001.c - add_dread = minor_dread_gain - - - stress_impact = { - callous = miniscule_stress_impact_loss - arbitrary = miniscule_stress_impact_loss - eccentric = miniscule_stress_impact_loss - } - - reverse_add_opinion = { - target = scope:my_blood_brother - modifier = angry_opinion - opinion = -30 - } - } -} diff --git a/events/dlc/mpo/mpo_nomads_flavour_events.txt b/events/dlc/mpo/mpo_nomads_flavour_events.txt index 2ff183bdd..8a12ef9ed 100644 --- a/events/dlc/mpo/mpo_nomads_flavour_events.txt +++ b/events/dlc/mpo/mpo_nomads_flavour_events.txt @@ -338,7 +338,7 @@ nomad_events.0001 = { days = { 25 30 } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss trusting = major_stress_impact_gain gregarious = medium_stress_impact_gain @@ -374,7 +374,7 @@ nomad_events.0001 = { days = { 25 30 } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain trusting = medium_stress_impact_loss } @@ -588,7 +588,7 @@ nomad_events.0002 = { } } set_variable = rehired_achmach_var - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain trusting = medium_stress_impact_loss forgiving = major_stress_impact_loss @@ -624,7 +624,7 @@ nomad_events.0002 = { days = { 25 30 } } } - stress_impact = { + stress_and_fulfillment_impact = { forgiving = medium_stress_impact_gain } ai_chance = { @@ -773,7 +773,7 @@ nomad_events.0003 = { type = extra_success_chance_modifier } } - stress_impact = { + stress_and_fulfillment_impact = { lustful = massive_stress_impact_loss } ai_chance = { @@ -812,7 +812,7 @@ nomad_events.0003 = { days = { 12 20 } } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain } ai_chance = { @@ -840,7 +840,7 @@ nomad_events.0003 = { days = { 12 20 } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_gain } ai_chance = { @@ -968,7 +968,7 @@ nomad_events.0005 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain } @@ -1091,7 +1091,7 @@ nomad_events.0006 = { REASON = rival_tortured_me } } - stress_impact = { + stress_and_fulfillment_impact = { torturer = major_stress_impact_loss compassionate = major_stress_impact_gain } @@ -1118,7 +1118,7 @@ nomad_events.0006 = { } add_learning_lifestyle_xp = minor_lifestyle_xp - stress_impact = { + stress_and_fulfillment_impact = { witch = medium_stress_impact_loss lifestyle_mystic = medium_stress_impact_loss } @@ -1193,7 +1193,7 @@ nomad_events.0006 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss trusting = medium_stress_impact_gain } @@ -1220,7 +1220,7 @@ nomad_events.0006 = { scope:achmach_scope = { set_variable = achmach_murder_help_councillor_var } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss deceitful = medium_stress_impact_loss compassionate = medium_stress_impact_gain @@ -1256,7 +1256,7 @@ nomad_events.0006 = { set_variable = imprisoned_var } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_loss compassionate = medium_stress_impact_gain trusting = medium_stress_impact_gain @@ -1288,7 +1288,7 @@ nomad_events.0006 = { opinion = 25 } } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = medium_stress_impact_gain trusting = medium_stress_impact_loss } @@ -1412,7 +1412,7 @@ nomad_events.0007 = { days = { 2 3 } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss } ai_chance = { @@ -1434,7 +1434,7 @@ nomad_events.0007 = { } add_learning_lifestyle_xp = medium_lifestyle_xp achmach_discover_nature_ritual_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { witch = medium_stress_impact_loss lifestyle_mystic = medium_stress_impact_loss } @@ -1482,7 +1482,7 @@ nomad_events.0007 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { trusting = medium_stress_impact_gain } ai_chance = { @@ -1526,7 +1526,7 @@ nomad_events.0007 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_loss vengeful = medium_stress_impact_loss craven = major_stress_impact_gain @@ -1620,7 +1620,7 @@ nomad_events.0008 = { set_owner = root set_variable = magic_amulet_var } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss cynical = medium_stress_impact_gain } @@ -1654,7 +1654,7 @@ nomad_events.0008 = { } } add_prestige = medium_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss } ai_chance = { @@ -1725,7 +1725,7 @@ nomad_events.0009 = { MURDERER = root REASON = death_murder } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = major_stress_impact_loss sadistic = major_stress_impact_loss compassionate = major_stress_impact_gain @@ -1768,7 +1768,7 @@ nomad_events.0009 = { set_variable = magic_amulet_var } nomad_events_0009_imprison_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss cynical = medium_stress_impact_gain } @@ -1788,7 +1788,7 @@ nomad_events.0009 = { option = { # You'll be prepared now name = nomad_events.0009.c add_character_modifier = mpo_eyes_everywhere_modifier # Permanent - stress_impact = { + stress_and_fulfillment_impact = { paranoid = major_stress_impact_loss } ai_chance = { @@ -1876,6 +1876,7 @@ nomad_events.0010 = { location = root.capital_province gender_female_chance = root_soldier_female_chance faith = root.location.faith + rite = root.location.rite culture = root.location.culture save_scope_as = assassin } @@ -1904,7 +1905,7 @@ nomad_events.0010 = { MURDERER = root REASON = death_murder } - stress_impact = { + stress_and_fulfillment_impact = { torturer = massive_stress_impact_loss wrathful = massive_stress_impact_loss sadistic = major_stress_impact_loss @@ -1982,7 +1983,7 @@ nomad_events.0010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss } ai_chance = { @@ -2025,7 +2026,7 @@ nomad_events.0010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain } ai_chance = { @@ -2081,7 +2082,7 @@ nomad_events.0010 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } ai_chance = { @@ -2208,7 +2209,7 @@ nomad_events.0100 = { value = root.domicile.minor_herd_gain } } - stress_impact = { + stress_and_fulfillment_impact = { craven = major_stress_impact_loss } ai_chance = { @@ -2263,7 +2264,7 @@ nomad_events.0100 = { nomad_events_0100_dislike_effect = { VALUE = -10 } } add_dread = minor_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { gregarious = medium_stress_impact_gain } ai_chance = { @@ -2332,7 +2333,7 @@ nomad_events.0110 = { base = 1 modifier = { add = 3 - situation:the_great_steppe = { + situation:the_great_steppe ?= { OR = { any_situation_sub_region = { sub_region_current_phase = situation_steppe_white_zud_season @@ -2383,7 +2384,7 @@ nomad_events.0110 = { has_trait = craven } scope:newly_created_artifact = { set_owner = root } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_loss brave = major_stress_impact_gain } @@ -2441,7 +2442,7 @@ nomad_events.0110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain } ai_chance = { @@ -2463,7 +2464,7 @@ nomad_events.0110 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { brave = medium_stress_impact_gain } ai_chance = { @@ -2602,7 +2603,7 @@ nomad_events.0120 = { CHARACTER = scope:companion PREGNANCY_CHANCE = pregnancy_chance } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss chaste = major_stress_impact_gain celibate = major_stress_impact_gain @@ -2626,7 +2627,7 @@ nomad_events.0120 = { option = { # Talk to them name = nomad_events.0120.b nomad_events_0120_improve_relationship_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_gain } ai_chance = { @@ -2645,7 +2646,7 @@ nomad_events.0120 = { limit = { var:relationship = flag:spouse } - stress_impact = { + stress_and_fulfillment_impact = { lustful = medium_stress_impact_gain } } @@ -2714,6 +2715,7 @@ nomad_events.0130 = { template = merchant_template gender_female_chance = root_faith_dominant_gender_adjusted_female_chance faith = location.faith + rite = location.rite culture = location.culture save_scope_as = merchant } @@ -2728,7 +2730,7 @@ nomad_events.0130 = { domicile = { change_herd = medium_herd_gain } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -2756,7 +2758,7 @@ nomad_events.0130 = { gold = minor_gold_value } add_courtier = scope:merchant - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain } ai_chance = { @@ -2780,7 +2782,7 @@ nomad_events.0130 = { domicile = { change_herd = medium_herd_gain } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -2879,7 +2881,7 @@ nomad_events.0140 = { location = root.location template = merchant_template gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - faith = faith:aqlani + faith = faith:majlisi_faith culture = culture:bolghar save_scope_as = merchant } @@ -2907,7 +2909,7 @@ nomad_events.0140 = { location = root.location template = merchant_template gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - faith = faith:vajrayana + faith = faith:vajrayana_faith culture = culture:uyghur save_scope_as = merchant } @@ -2921,7 +2923,8 @@ nomad_events.0140 = { location = root.location template = merchant_template gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - faith = faith:maturidi + faith = faith:sunni + rite = rite:hanafi culture = culture:turkish save_scope_as = merchant } @@ -2954,7 +2957,7 @@ nomad_events.0140 = { name = discounted_faith_to_convert_to_var value = scope:target_faith } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -2972,7 +2975,7 @@ nomad_events.0140 = { name = nomad_events.0140.b add_piety = minor_piety_gain add_courtier = scope:merchant - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain } ai_chance = { @@ -2987,7 +2990,7 @@ nomad_events.0140 = { option = { # Tell them to go away name = nomad_events.0140.c add_dread = minor_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -3032,6 +3035,21 @@ nomad_events.0150 = { trigger = { exists = scope:rival } character = scope:rival } + widgets = { + widget = { + gui = "event_window_widget_vfx_background_double_vision_milder" + container = "foreground_shader_vfx_container" + } + widget = { + gui = "event_window_widget_vfx_left_character_double_vision_milder" + container = "foreground_shader_vfx_container" + } + widget = { + gui = "event_window_widget_vfx_right_character_double_vision_milder" + container = "foreground_shader_vfx_container" + } + } + trigger = { has_mpo_dlc_trigger = yes @@ -3097,7 +3115,7 @@ nomad_events.0150 = { scope:rival = { add_prestige = minor_prestige_loss } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss } ai_chance = { # AI should never pick this @@ -3111,7 +3129,7 @@ nomad_events.0150 = { target = scope:companion reason = friend_drank_together } - stress_impact = { + stress_and_fulfillment_impact = { wrathful = medium_stress_impact_gain } ai_chance = { @@ -3126,7 +3144,7 @@ nomad_events.0150 = { option = { # I love drinkiiiiiiiiiiing name = nomad_events.0150.c add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss drunkard = major_stress_impact_loss temperate = major_stress_impact_gain @@ -3148,9 +3166,10 @@ nomad_events.0150 = { scripted_trigger nomad_events_0160_valid_spouse = { is_available_healthy_ai_adult = yes - NOR = { # To avoid narrative dissonance - has_variable = had_nomad_events_1070_var - has_variable = had_nomad_events_0220_var + has_none_of_variables = { + # To avoid narrative dissonance + name = had_nomad_events_1070_var + name = had_nomad_events_0220_var } } @@ -3289,7 +3308,7 @@ nomad_events.0160 = { has_relation_rival = scope:spouse } remove_relation_rival = scope:spouse - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss arrogant = medium_stress_impact_gain } @@ -3321,7 +3340,7 @@ nomad_events.0160 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss arrogant = medium_stress_impact_gain } @@ -3337,7 +3356,7 @@ nomad_events.0160 = { option = { # Thanks, bestie name = nomad_events.0160.c add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = major_stress_impact_loss humble = major_stress_impact_gain shy = major_stress_impact_gain @@ -3370,9 +3389,10 @@ nomad_events.0160 = { scripted_trigger is_valid_nomad_events_0170_spouse = { is_available_healthy_ai_adult = yes - NOR = { # To avoid narrative dissonance - has_variable = had_nomad_events_1060_var - has_variable = had_nomad_events_0220_var + has_none_of_variables = { + # To avoid narrative dissonance + name = had_nomad_events_1060_var + name = had_nomad_events_0220_var } NOR = { has_trait = wrathful @@ -3473,7 +3493,7 @@ nomad_events.0170 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -3517,7 +3537,7 @@ nomad_events.0170 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss calm = medium_stress_impact_loss wrathful = major_stress_impact_gain @@ -3554,7 +3574,7 @@ nomad_events.0170 = { opinion = -25 } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -3683,7 +3703,7 @@ nomad_events.0180 = { TARGET = scope:rival IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { arbitrary = medium_stress_impact_loss callous = major_stress_impact_loss sadistic = major_stress_impact_loss @@ -3719,7 +3739,7 @@ nomad_events.0180 = { add_prowess_skill = 2 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain } ai_chance = { @@ -3746,7 +3766,7 @@ nomad_events.0180 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -3854,7 +3874,7 @@ nomad_events.0190 = { has_trait = gregarious } nomad_events_0190_friendship_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss callous = major_stress_impact_gain } @@ -3881,7 +3901,7 @@ nomad_events.0190 = { has_trait = shy } nomad_events_0190_friendship_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss callous = major_stress_impact_gain } @@ -3908,7 +3928,7 @@ nomad_events.0190 = { modifier = mpo_good_memory_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss arrogant = medium_stress_impact_gain callous = major_stress_impact_gain @@ -3932,7 +3952,7 @@ nomad_events.0190 = { option = { # Everyone should know how cool we are name = nomad_events.0190.d add_prestige = minor_prestige_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_loss ambitious = medium_stress_impact_loss disloyal = medium_stress_impact_loss @@ -4062,7 +4082,7 @@ nomad_events.0200 = { modifier = mpo_no_omens_modifier years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -4093,7 +4113,7 @@ nomad_events.0200 = { var:dream = flag:good } nomad_events_0200_learning_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } ai_chance = { @@ -4115,7 +4135,7 @@ nomad_events.0200 = { var:dream = flag:bad } nomad_events_0200_learning_effect = yes - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } ai_chance = { @@ -4134,7 +4154,7 @@ nomad_events.0200 = { option = { # Let's pray name = nomad_events.0200.d add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss compassionate = major_stress_impact_gain calm = major_stress_impact_gain @@ -4209,7 +4229,7 @@ nomad_events.0210 = { herd <= minor_herd_value } } - situation:the_great_steppe = { + situation:the_great_steppe ?= { NOR = { any_situation_sub_region = { sub_region_current_phase = situation_steppe_abundant_grazing_season @@ -4314,7 +4334,7 @@ nomad_events.0210 = { death = { death_reason = death_mysterious } } change_current_weight = 25 - stress_impact = { + stress_and_fulfillment_impact = { cannibal = massive_stress_impact_loss } ai_chance = { @@ -4332,7 +4352,7 @@ nomad_events.0210 = { has_trait = arrogant } add_dread = medium_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_loss calm = major_stress_impact_gain compassionate = massive_stress_impact_gain @@ -4371,7 +4391,7 @@ nomad_events.0210 = { CHARACTER = scope:family OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss callous = major_stress_impact_gain sadistic = major_stress_impact_gain @@ -4401,7 +4421,7 @@ nomad_events.0210 = { name = nomad_events_0210_herd_var years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } ai_chance = { @@ -4427,9 +4447,9 @@ scripted_trigger nomad_events_0220_valid_spouse = { has_trait = content has_trait = forgiving } - NOR = { - has_variable = had_nomad_events_1060_var - has_variable = had_nomad_events_1070_var + has_none_of_variables = { + name = had_nomad_events_1060_var + name = had_nomad_events_1070_var } } @@ -4519,7 +4539,7 @@ nomad_events.0220 = { opinion = 20 } } - stress_impact = { + stress_and_fulfillment_impact = { base = massive_stress_impact_gain } ai_chance = { @@ -4542,7 +4562,7 @@ nomad_events.0220 = { opinion = 10 } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain arrogant = medium_stress_impact_loss callous = medium_stress_impact_loss @@ -4564,7 +4584,7 @@ nomad_events.0220 = { option = { # This is just who I am name = nomad_events.0220.c bp2_lifestyle_xp_gain_per_type_effect = { VALUE = medium } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss } ai_chance = { @@ -4660,7 +4680,7 @@ nomad_events.0230 = { CHARACTER = scope:spouse PREGNANCY_CHANCE = pregnancy_chance } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_loss callous = major_stress_impact_gain sadistic = major_stress_impact_gain @@ -4688,7 +4708,7 @@ nomad_events.0230 = { CHARACTER = scope:spouse OPINION = 25 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -4716,7 +4736,7 @@ nomad_events.0230 = { modifier = mpo_hardened_modifier # Forever } } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss sadistic = medium_stress_impact_loss compassionate = major_stress_impact_gain @@ -4822,7 +4842,7 @@ nomad_events.0240 = { VICTIM = scope:ruler } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_loss callous = major_stress_impact_gain sadistic = major_stress_impact_gain @@ -4860,7 +4880,7 @@ nomad_events.0240 = { CHARACTER = scope:ruler OPINION = default_friend_opinion } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss callous = medium_stress_impact_gain sadistic = medium_stress_impact_gain @@ -4886,7 +4906,7 @@ nomad_events.0240 = { domicile = { change_herd = medium_herd_gain } - stress_impact = { + stress_and_fulfillment_impact = { callous = medium_stress_impact_loss sadistic = medium_stress_impact_loss compassionate = major_stress_impact_gain @@ -4925,7 +4945,7 @@ scripted_trigger nomad_events_0250_valid_priest = { } trigger_if = { limit = { - faith = { has_doctrine_parameter = clergy_must_be_male } + rite = { rite_has_parameter = clergy_must_be_male } } is_male = yes } @@ -5027,6 +5047,7 @@ nomad_events.0250 = { template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance faith = scope:neighboring_ruler.faith + rite = scope:neighboring_ruler.rite culture = scope:neighboring_ruler.culture save_scope_as = priest } @@ -5038,7 +5059,7 @@ nomad_events.0250 = { random_list = { 10 = { trigger = { - NOT = { faith = faith:aqlani } + NOT = { faith = faith:sunni } NOT = { any_character_situation = { this = situation:game_rule_extra_nomads_sami } } } modifier = { @@ -5049,7 +5070,7 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:aqlani + faith = faith:sunni culture = culture:bolghar save_scope_as = priest } @@ -5092,7 +5113,7 @@ nomad_events.0250 = { } 10 = { trigger = { - NOT = { faith = faith:vajrayana } + NOT = { faith = faith:vajrayana_faith } any_character_situation = { this = situation:the_great_steppe } } modifier = { @@ -5103,25 +5124,25 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:vajrayana + faith = faith:vajrayana_faith culture = culture:uyghur save_scope_as = priest } } 10 = { trigger = { - NOT = { faith = faith:manichean } - any_character_situation = { this = situation:the_great_steppe } - } - modifier = { - location = { geographical_region = world_steppe_east } - add = 25 - } - create_character = { - location = root.location - template = priest_character_template - gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:manichean + NOT = { faith = faith:manichaean_faith } + any_character_situation = { this = situation:the_great_steppe } + } + modifier = { + location = { geographical_region = world_steppe_east } + add = 25 + } + create_character = { + location = root.location + template = priest_character_template + gender_female_chance = root_faith_clergy_gender_female_chance + faith = faith:manichaean_faith culture = culture:uyghur save_scope_as = priest } @@ -5142,7 +5163,7 @@ nomad_events.0250 = { } 10 = { trigger = { - NOT = { faith = faith:maturidi } + NOT = { faith = faith:sunni } NOT = { any_character_situation = { this = situation:game_rule_extra_nomads_sami } } } modifier = { @@ -5153,14 +5174,15 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:maturidi + faith = faith:sunni + rite = rite:hanafi culture = culture:turkish save_scope_as = priest } } 10 = { trigger = { - NOT = { faith = faith:alevi } + NOT = { rite = rite:alevi } any_character_situation = { this = situation:the_great_steppe } } modifier = { @@ -5171,14 +5193,15 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:alevi + faith = faith:shia + rite = rite:alevi culture = culture:turkish save_scope_as = priest } } 10 = { trigger = { - NOT = { faith = faith:ismaili } + NOT = { rite = rite:ismaili } NOT = { any_character_situation = { this = situation:game_rule_extra_nomads_sami } } } modifier = { @@ -5189,7 +5212,8 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:ismaili + faith = faith:shia + rite = rite:ismaili culture = culture:persian save_scope_as = priest } @@ -5206,7 +5230,7 @@ nomad_events.0250 = { location = root.location template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance - faith = faith:roman_catholic + faith = faith:catholic culture = culture:italian save_scope_as = priest } @@ -5234,7 +5258,7 @@ nomad_events.0250 = { set_county_faith = scope:priest.faith } add_piety_level = 1 - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain cynical = minor_stress_impact_loss } @@ -5297,7 +5321,7 @@ nomad_events.0250 = { target = scope:priest } custom_tooltip = obligation_hook_tt - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss gregarious = medium_stress_impact_loss shy = medium_stress_impact_gain @@ -5327,7 +5351,7 @@ nomad_events.0250 = { option = { # Tell them to go away name = nomad_events.0250.c add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain gregarious = medium_stress_impact_gain shy = medium_stress_impact_loss @@ -5499,6 +5523,7 @@ nomad_events.0260 = { template = priest_character_template gender_female_chance = root_faith_clergy_gender_female_chance faith = scope:other_ruler.faith + rite = scope:other_ruler.rite culture = scope:other_ruler.culture save_scope_as = priest } @@ -5521,7 +5546,7 @@ nomad_events.0260 = { TARGET = scope:priest IMPRISONER = root } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = major_stress_impact_loss callous = major_stress_impact_loss torturer = major_stress_impact_loss @@ -5558,7 +5583,7 @@ nomad_events.0260 = { } add_courtier = scope:priest add_piety_level = 1 - stress_impact = { + stress_and_fulfillment_impact = { zealous = massive_stress_impact_gain cynical = minor_stress_impact_loss } @@ -5665,12 +5690,12 @@ nomad_events.0260 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_gain stubborn = medium_stress_impact_loss zealous = major_stress_impact_loss theologian = major_stress_impact_loss - scholar = major_stress_impact_loss + erudite = major_stress_impact_loss } ai_chance = { base = 100 @@ -5683,7 +5708,7 @@ nomad_events.0260 = { has_trait = stubborn has_trait = zealous has_trait = theologian - has_trait = scholar + has_trait = erudite } factor = 2 } @@ -5693,7 +5718,7 @@ nomad_events.0260 = { option = { # Just go away name = nomad_events.0260.d add_dread = minor_dread_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = major_stress_impact_gain gregarious = major_stress_impact_gain shy = medium_stress_impact_loss diff --git a/events/dlc/mpo/mpo_nomads_flavour_events_oltner.txt b/events/dlc/mpo/mpo_nomads_flavour_events_oltner.txt deleted file mode 100644 index d4170ed4e..000000000 --- a/events/dlc/mpo/mpo_nomads_flavour_events_oltner.txt +++ /dev/null @@ -1,1043 +0,0 @@ -namespace = nomad_events_oltner - -# Hunt sighting in your lands -# Bird sighting in your lands -# Dangerous Hunt sighting in your lands -# Zud - Dangerous animals eat your herd -# Good season! Animals aplenty. -# You are offered a skilled Master of the Chase from a tributary -# Given a falcon from a vassal/tributary - -nomad_events_oltner.0001 = { # Hunt sighting in your lands - type = character_event - title = nomad_events_oltner.0001.t - desc = nomad_events_oltner.0001.desc - theme = hunting - left_portrait = { - character = root - animation = horse_archer_idle - camera = camera_event_horse_right - } - cooldown = { years = 3 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - any_sub_realm_county = { - count >= 2 - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - } - - immediate = { - hidden_effect = { - every_sub_realm_county = { - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - add_to_list = sighting_counties - } - random_in_list = { - list = sighting_counties - limit = { hunt_activity_recent_hunt_sighting_trigger = no } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_1 - 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_1 - } - } - random_in_list = { - list = sighting_counties - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - this != scope:sighting_county_1 - } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_2 - 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_2 - } - } - scope:sighting_county_1 = { - hunt_activity_standard_game_effect = { PROVINCE = scope:sighting_province_1 HUNTER = root } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = standard - ANIMAL = var:animal_type - OWNER = root - } - } - scope:sighting_county_2 = { - hunt_activity_dangerous_game_effect = { PROVINCE = scope:sighting_province_2 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = dangerous - ANIMAL = var:animal_type - OWNER = root - } - } - } - } - - option = { # First sighting - name = nomad_events_oltner.0001.a - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_standard_modifier - } - } - hidden_effect = { - scope:sighting_county_2 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 100 - } - } - - option = { # Second sighting - name = nomad_events_oltner.0001.b - scope:sighting_county_2 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_dangerous_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 100 - } - } - - option = { # Ignore - name = nomad_events_oltner.0001.c - add_prestige = minor_prestige_gain - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - scope:sighting_county_2 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0002 = { # Bird sighting in your lands - type = character_event - title = nomad_events_oltner.0002.t - desc = nomad_events_oltner.0002.desc - theme = hunting - left_portrait = { - character = root - animation = horse_archer_aggressive - camera = camera_event_horse_right - } - - cooldown = { years = 3 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - # Falconry DLC feature - has_dlc_feature = tours_and_tournaments - is_available_adult = yes - is_at_war = no - is_landed = yes - any_sub_realm_county = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - } - - immediate = { - hidden_effect = { - random_sub_realm_county = { - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_1 - 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_1 - } - } - scope:sighting_county_1 = { - hunt_activity_falconry_game_effect = { PROVINCE = scope:sighting_province_1 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = falconry - ANIMAL = var:animal_type - OWNER = root - } - } - } - } - - option = { # Birds spotted - name = nomad_events_oltner.0002.a - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_falconry_modifier - } - } - ai_chance = { - base = 100 - } - } - - option = { # Rather hunt land prey - name = nomad_events_oltner.0002.b - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_standard_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - hunt_activity_standard_game_effect = { PROVINCE = scope:sighting_province_1 HUNTER = root } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = standard - ANIMAL = var:animal_type - OWNER = root - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Ignore - name = nomad_events_oltner.0002.c - add_prestige = minor_prestige_gain - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0003 = { # Danger sighting in your lands - type = character_event - title = nomad_events_oltner.0003.t - desc = nomad_events_oltner.0003.desc - theme = hunting - left_portrait = { - character = root - animation = horse_archer_aggressive - camera = camera_event_horse_right - } - - cooldown = { years = 3 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - any_sub_realm_county = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - any_maa_regiment = { - } - } - - immediate = { - hidden_effect = { - random_sub_realm_county = { - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_1 - 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_1 - } - } - scope:sighting_county_1 = { - hunt_activity_dangerous_game_effect = { PROVINCE = scope:sighting_province_1 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = dangerous - ANIMAL = var:animal_type - OWNER = root - } - } - } - domicile = { - change_herd = { - value = -21 - } - } - random_maa_regiment = { - save_scope_as = maa_regiment - } - } - - option = { # Go after them - name = nomad_events_oltner.0003.a - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_dangerous_modifier - } - } - stress_impact = { - brave = minor_stress_impact_loss - craven = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Send troops to kill the wolf pack - name = nomad_events_oltner.0003.b - add_prestige = medium_prestige_gain - scope:maa_regiment = { - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.1 - } - } - } - scope:sighting_county_1 = { - show_as_tooltip = { - remove_county_modifier = hunt_sighting_dangerous_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 100 - } - } - - option = { # Ignore - name = nomad_events_oltner.0003.c - add_piety = minor_piety_gain - scope:sighting_county_1 = { - show_as_tooltip = { - remove_county_modifier = hunt_sighting_dangerous_modifier - } - } - stress_impact = { - brave = medium_stress_impact_gain - craven = minor_stress_impact_loss - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_remove_sighting_effect = yes - remove_variable = recent_sighting - } - } - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0004 = { # Zud - Dangerous animals eat your herd - type = character_event - title = nomad_events_oltner.0004.t - desc = nomad_events_oltner.0004.desc - theme = hunting - left_portrait = { - character = root - animation = horse_exhausted - camera = camera_event_horse_right - } - - widgets = { - widget = { - is_shown = { - any_character_situation = { - OR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.capital_county - } - } - } - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - widget = { - is_shown = { - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.capital_county - } - } - } - gui = "event_window_widget_vfx_snowstorm" - container = "foreground_shader_vfx_container" - } - } - - cooldown = { years = 3 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - any_sub_realm_county = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - any_character_situation = { - OR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_havsarsan_zud_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_white_zud_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_cold_zud_season - situation_sub_region_has_county = root.capital_county - } - } - } - } - - immediate = { - hidden_effect = { - random_sub_realm_county = { - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_1 - 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_1 - } - } - scope:sighting_county_1 = { - hunt_activity_dangerous_game_effect = { PROVINCE = scope:sighting_province_1 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = dangerous - ANIMAL = var:animal_type - OWNER = root - } - } - } - random_character_situation = { - limit = { - any_participant_group = { - participant_group_type = nomad_rulers_capital - participant_group_has_character = root - } - } - random_participant_group = { - limit = { - participant_group_type = nomad_rulers_capital - participant_group_has_character = root - } - participant_group_sub_region = { save_scope_as = my_subregion } - } - } - } - - option = { # Go after them - name = nomad_events_oltner.0004.a - add_prowess_skill = 2 - domicile = { - change_herd = minor_herd_loss - } - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_dangerous_modifier - } - } - ai_chance = { - base = 100 - } - } - - option = { # Go after them - name = nomad_events_oltner.0004.b - add_stewardship_skill = 1 - domicile = { - change_herd = medium_herd_loss - } - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_dangerous_modifier - } - } - ai_chance = { - base = 100 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0005 = { # Good season! Animals aplenty. - type = character_event - title = nomad_events_oltner.0005.t - desc = nomad_events_oltner.0005.desc - theme = hunting - left_portrait = { - character = root - animation = horse_archer_idle - camera = camera_event_horse_right - } - - cooldown = { years = 3 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - any_sub_realm_county = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - any_character_situation = { - OR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_abundant_grazing_season - situation_sub_region_has_county = root.location.county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_warm_nights_season - situation_sub_region_has_county = root.location.county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.location.county - - } - } - } - } - - immediate = { - hidden_effect = { - random_sub_realm_county = { - limit = { - hunt_activity_recent_hunt_sighting_trigger = no - is_landless_type_title = no - } - weight = { - base = 1 - hunt_activity_sighting_county_modifier = yes - } - save_scope_as = sighting_county_1 - 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_1 - } - } - } - random_character_situation = { - limit = { - any_participant_group = { - participant_group_type = nomad_rulers_capital - participant_group_has_character = root - } - } - random_participant_group = { - limit = { - participant_group_type = nomad_rulers_capital - participant_group_has_character = root - } - participant_group_sub_region = { save_scope_as = my_subregion } - } - } - } - - option = { # Dangerous game - name = nomad_events_oltner.0005.a - add_prowess_skill = 1 - - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_dangerous_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_activity_dangerous_game_effect = { PROVINCE = scope:sighting_province_1 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = dangerous - ANIMAL = var:animal_type - OWNER = root - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Regular game - name = nomad_events_oltner.0005.b - add_piety = medium_piety_gain - - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_standard_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_activity_standard_game_effect = { PROVINCE = scope:sighting_province_1 HUNTER = root } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = standard - ANIMAL = var:animal_type - OWNER = root - } - } - } - ai_chance = { - base = 100 - } - } - - option = { # Birb - name = nomad_events_oltner.0005.c - add_prestige = medium_prestige_gain - - scope:sighting_county_1 = { - show_as_tooltip = { - add_county_modifier = hunt_sighting_falconry_modifier - } - } - hidden_effect = { - scope:sighting_county_1 = { - hunt_activity_falconry_game_effect = { PROVINCE = scope:sighting_province_1 } - # Create new sighting - hunt_create_sighting_effect = { - TYPE = falconry - ANIMAL = var:animal_type - OWNER = root - } - } - } - ai_chance = { - base = 100 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0006 = { # You are offered a skilled Master of the Chase from a tributary - type = character_event - title = nomad_events_oltner.0006.t - desc = nomad_events_oltner.0006.desc - theme = nomads - left_portrait = { - character = scope:offered_master_of_the_hunt - animation = hunting_knife_start - } - right_portrait = { - character = scope:generous_tributary - animation = obsequious_bow - } - - cooldown = { years = 5 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - is_valid_to_hire_court_position_type = master_of_hunt_court_position - OR = { - NOT = { employs_court_position = master_of_hunt_court_position } - court_position:master_of_hunt_court_position ?= { - aptitude = { - court_position = master_of_hunt_court_position - value < 4 - } - } - } - any_tributary = { - is_available_ai_adult = yes - is_at_war = no - NOT = { has_relation_rival = root } - any_courtier = { - is_available_healthy_ai_adult = yes - master_of_hunt_validity_trigger = { EMPLOYER = root } - NOR = { - is_close_or_extended_family_of = root - is_close_family_of = prev - has_relation_rival = root - has_court_position = court_astrologer_court_position - } - aptitude = { - court_position = master_of_hunt_court_position - value >= 4 - } - } - } - } - - immediate = { - random_tributary = { - limit = { - is_available_adult = yes - is_at_war = no - NOT = { has_relation_rival = root } - any_courtier = { - is_available_healthy_ai_adult = yes - master_of_hunt_validity_trigger = { EMPLOYER = root } - NOR = { - is_close_or_extended_family_of = root - is_close_family_of = prev - has_relation_rival = root - has_court_position = court_astrologer_court_position - } - aptitude = { - court_position = master_of_hunt_court_position - value >= 4 - } - } - } - save_scope_as = generous_tributary - random_courtier = { - limit = { - is_available_healthy_ai_adult = yes - master_of_hunt_validity_trigger = { EMPLOYER = root } - NOR = { - is_close_or_extended_family_of = root - is_close_family_of = prev - has_relation_rival = root - has_court_position = court_astrologer_court_position - } - aptitude = { - court_position = master_of_hunt_court_position - value >= 4 - } - } - save_scope_as = offered_master_of_the_hunt - hidden_effect = { - assign_random_nickname_effect = yes - } - } - } - } - - option = { # Accept - name = nomad_events_oltner.0006.a - - court_position_grant_effect = { POS = master_of_hunt CANDIDATE = scope:offered_master_of_the_hunt EMPLOYER = root } - - reverse_add_opinion = { - target = scope:offered_master_of_the_hunt - modifier = loyal_servant - } - - stress_impact = { - arrogant = minor_stress_loss - ambitious = minor_stress_loss - paranoid = minor_stress_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # Accept and reward - name = nomad_events_oltner.0006.b - - pay_short_term_gold = { - target = scope:generous_tributary - gold = minor_gold_value - } - - reverse_add_opinion = { - target = scope:generous_tributary - modifier = obedience_opinion - } - - court_position_grant_effect = { POS = master_of_hunt CANDIDATE = scope:offered_master_of_the_hunt EMPLOYER = root } - - reverse_add_opinion = { - target = scope:offered_master_of_the_hunt - modifier = loyal_servant - } - - stress_impact = { - arrogant = minor_stress_loss - ambitious = minor_stress_loss - paranoid = minor_stress_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - gold < major_gold_value - } - } - } - - option = { # Deny - name = nomad_events_oltner.0006.c - - reverse_add_opinion = { - target = scope:generous_tributary - modifier = respect_opinion - opinion = 15 - } - - stress_impact = { - paranoid = minor_stress_loss - } - - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} - -nomad_events_oltner.0007 = { # You are offered a falcon from a tributary - type = character_event - title = nomad_events_oltner.0007.t - desc = nomad_events_oltner.0007.desc - theme = nomads - left_portrait = { - character = root - animation = hunting_knife_start - } - right_portrait = { - character = scope:generous_tributary - animation = hunting_falcon - } - - cooldown = { years = 10 } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available_adult = yes - is_at_war = no - is_landed = yes - NOT = { - has_character_modifier = peregrine_falcon - } - any_tributary = { - is_available_ai_adult = yes - is_at_war = no - NOT = { has_relation_rival = root } - } - } - - immediate = { - random_tributary = { - limit = { - is_available_ai_adult = yes - is_at_war = no - NOT = { has_relation_rival = root } - } - save_scope_as = generous_tributary - capital_county = { save_scope_as = tribute_capital_county } - capital_province = { save_scope_as = tribute_capital } - } - } - - option = { # Accept - name = nomad_events_oltner.0007.a - - add_character_modifier = { - modifier = peregrine_falcon - years = 7 - } - - stress_impact = { - arrogant = minor_stress_loss - ambitious = minor_stress_loss - } - - ai_chance = { - base = 100 - } - } - - option = { # Accept and reward - name = nomad_events_oltner.0007.b - - reverse_add_opinion = { - target = scope:generous_tributary - modifier = respect_opinion - opinion = 15 - } - - ai_chance = { - base = 0 - } - } - - after = { - if = { - limit = { - is_ai = yes - is_at_war = no - } - ai_attempt_to_host_activity = activity_hunt - } - } -} diff --git a/events/dlc/mpo/mpo_nomads_season_events.txt b/events/dlc/mpo/mpo_nomads_season_events.txt deleted file mode 100644 index cc68cd47a..000000000 --- a/events/dlc/mpo/mpo_nomads_season_events.txt +++ /dev/null @@ -1,856 +0,0 @@ -namespace = mpo_nomads_season_events - -mpo_nomads_season_events.0001 = { # Riding the Storm - type = character_event - title = mpo_nomads_season_events.0001.t - desc = mpo_nomads_season_events.0001.desc - - theme = nomads - - override_background = { reference = mpo_steppe_evening } - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = scheme - } - - right_portrait = { - character = scope:storm_chaser - animation = marshal_random_weapon - } - - lower_right_portrait = { - character = scope:raid_target - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - any_character_situation = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_severe_drought_season - situation_sub_region_has_county = root.capital_county - } - } - any_councillor = { - is_kurultai_trigger = yes - is_available = yes - } - any_neighboring_top_liege_realm_owner = { - is_ai = yes - NOR = { - is_at_war_with = root - is_allied_to = root - has_truce = root - has_relation_friend = root - has_relation_best_friend = root - } - } - } - - weight_multiplier = { - base = 1 - modifier = { - factor = -0.5 - is_ai = yes - } - } - - immediate = { - random_councillor = { - limit = { - is_kurultai_trigger = yes - is_available = yes - } - save_scope_as = storm_chaser - } - random_neighboring_top_liege_realm_owner = { - limit = { - is_ai = yes - NOR = { - is_at_war_with = root - is_allied_to = root - has_truce = root - has_relation_friend = root - has_relation_best_friend = root - } - } - save_scope_as = raid_target - } - scope:raid_target = { - capital_county = { - save_scope_as = raid_county - } - } - } - - option = { # Tomorrow, we ride! - name = mpo_nomads_season_events.0001.a - scope:raid_target = { - pay_herd = { - target = root - value = scope:raid_target.domicile.medium_herd_value - } - add_opinion = { - target = root - modifier = stole_my_herd - } - } - add_dread = medium_dread_gain - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:raid_target } - } - progress_towards_rival_effect = { - REASON = stole_my_herd - CHARACTER = scope:raid_target - OPINION = 0 - } - } - stress_impact = { - lazy = minor_stress_impact_gain - content = minor_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = lazy - has_trait = content - has_trait = just - } - add = -50 - } - ai_value_modifier = { - ai_honor = -1 - } - } - } - - option = { # We must see to our own shelter. - name = mpo_nomads_season_events.0001.b - - root.capital_county = { - add_county_modifier = { - modifier = mpo_storm_shelter_modifier - years = 5 - } - } - - stress_impact = { - vengeful = medium_stress_impact_gain - sadistic = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = vengeful - has_trait = sadistic - } - add = -50 - } - ai_value_modifier = { - ai_honor = 1 - } - } - } -} - -mpo_nomads_season_events.0005 = { # Hungry vassal - type = character_event - title = mpo_nomads_season_events.0005.t - desc = mpo_nomads_season_events.0005.desc - - theme = nomads - - override_background = { reference = mpo_tent_interior_mongol } - - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = shame - } - - right_portrait = { - character = scope:hungry_neighbour - animation = obsequious_bow - } - - trigger = { - government_has_flag = government_is_nomadic - has_mpo_dlc_trigger = yes - is_available = yes - any_character_situation = { - NOR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_abundant_grazing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_warm_nights_season - situation_sub_region_has_county = root.capital_county - } - } - } - any_vassal = { - is_available_ai = yes - NOT = { - has_opinion_modifier = { - modifier = obedience_opinion - target = root - } - } - domicile ?= { - herd < minor_herd_value - } - } - } - - immediate = { - random_vassal = { - limit = { - is_available_ai = yes - NOT = { - has_opinion_modifier = { - modifier = obedience_opinion - target = root - } - } - domicile ?= { - herd < minor_herd_value - } - } - save_scope_as = hungry_neighbour - } - } - - option = { # Give herd - name = mpo_nomads_season_events.0005.a - - pay_herd = { - target = scope:hungry_neighbour - value = domicile.minor_herd_value - } - send_interface_toast = { - type = event_toast_effect_good - title = mpo_demand_obedience_interaction_toast - left_icon = scope:hungry_neighbour - scope:hungry_neighbour = { - add_opinion = { - target = root - modifier = obedience_opinion - } - } - } - scope:hungry_neighbour = { - add_character_flag = given_herd - } - - stress_impact = { - compassionate = medium_stress_impact_loss - paranoid = medium_stress_impact_gain - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - domicile ?= { - herd < medium_herd_value - } - has_trait = paranoid - has_trait = greedy - } - } - modifier = { - factor = 20 - has_trait = compassionate - } - ai_value_modifier = { - ai_sociability = 1 - ai_greed = -1 - } - } - } - - option = { # Arrange trade - name = mpo_nomads_season_events.0005.b - trigger = { - scope:hungry_neighbour = { - gold > root.medium_gold_value - } - } - pay_herd = { - target = scope:hungry_neighbour - value = domicile.minor_herd_value - } - scope:hungry_neighbour = { - pay_short_term_gold = { - target = root - gold = root.medium_gold_value - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - modifier = { - factor = 0 - domicile ?= { - herd < medium_herd_value - } - } - } - } - - option = { # I think not! - name = mpo_nomads_season_events.0005.c - reverse_add_opinion = { - target = scope:hungry_neighbour - modifier = insulted_opinion - opinion = -15 - } - ai_chance = { - base = 20 - ai_value_modifier = { - ai_sociability = -1 - ai_greed = -1 - } - } - } -} - -mpo_nomads_season_events.0010 = { # Your vassal offers herd during a season of bounty - type = character_event - title = mpo_nomads_season_events.0010.t - desc = { - desc = mpo_nomads_season_events.0010.desc - first_valid = { - triggered_desc = { - trigger = { - scope:rich_neighbour = { has_character_flag = given_herd } - } - desc = mpo_nomads_season_events.0010.desc_offered_herd - } - desc = mpo_nomads_season_events.0010.desc_fallback - } - } - - theme = nomads - - override_background = { reference = mpo_tent_interior_mongol } - - cooldown = { years = 10 } - - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait = cynical - } - animation = personality_cynical - } - triggered_animation = { - trigger = { - scope:rich_neighbour = { has_character_flag = given_herd } - } - animation = flirtation - } - animation = personality_greedy - } - - right_portrait = { - character = scope:rich_neighbour - triggered_animation = { - trigger = { - scope:rich_neighbour = { has_character_flag = given_herd } - } - animation = obsequious_bow - } - animation = steward - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - any_character_situation = { - OR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_abundant_grazing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_warm_nights_season - situation_sub_region_has_county = root.capital_county - } - } - } - any_vassal = { - is_available_ai = yes - trigger_if = { - limit = { - NOT = { has_character_flag = given_herd } - } - NOR = { - is_councillor_of = root - has_relation_blood_brother = root - has_relation_friend = root - has_relation_best_friend = root - } - } - domicile ?= { - herd > minor_herd_value - } - } - } - - immediate = { - random_vassal = { - limit = { - is_available_ai = yes - trigger_if = { - limit = { - NOT = { has_character_flag = given_herd } - } - NOR = { - is_councillor_of = root - has_relation_blood_brother = root - has_relation_friend = root - has_relation_best_friend = root - } - } - domicile ?= { - herd > minor_herd_value - } - } - save_scope_as = rich_neighbour - } - } - - option = { # Yes, I will buy herd from you. - name = mpo_nomads_season_events.0010.a - trigger = { - NOT = { - scope:rich_neighbour = { - has_character_flag = given_herd - } - } - } - pay_short_term_gold = { - target = scope:rich_neighbour - gold = medium_gold_value - } - scope:rich_neighbour = { - pay_herd = { - target = root - value = scope:rich_neighbour.domicile.minor_herd_value - } - } - - stress_impact = { - greedy = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - modifier = { - factor = 50 - domicile ?= { - herd < minor_herd_value - } - } - modifier = { - gold <= major_gold_value - factor = 0 - } - } - } - - option = { # Forget the herd, I want you as my bro! - name = mpo_nomads_season_events.0010.c - trigger = { - scope:rich_neighbour = { - has_character_flag = given_herd - } - can_set_relation_blood_brother_trigger = { CHARACTER = scope:rich_neighbour } - } - add_internal_flag = special - reason = gave_herd - - set_relation_blood_brother = { - reason = sworn_blood_brother - target = scope:rich_neighbour - } - - stress_impact = { - paranoid = medium_stress_impact_gain - gregarious = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - modifier = { - factor = 0 - has_trait = paranoid - } - modifier = { - add = 50 - has_trait = gregarious - } - } - } - - option = { # Free herd? Yes please! - name = mpo_nomads_season_events.0010.b - trigger = { - scope:rich_neighbour = { - has_character_flag = given_herd - } - } - scope:rich_neighbour = { - pay_herd = { - target = root - value = scope:rich_neighbour.domicile.medium_herd_value - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - - option = { # Give me your herd, or your head! - name = mpo_nomads_season_events.0010.d - trigger = { - NOT = { - scope:rich_neighbour = { - has_character_flag = given_herd - } - } - is_ai = no - } - duel = { - skill = prowess - target = scope:rich_neighbour - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_nomads_season_events.0010.d.tt.success - scope:rich_neighbour = { - pay_herd = { - target = root - value = scope:rich_neighbour.domicile.medium_herd_value - } - increase_wounds_effect = { REASON = fight } - } - send_interface_toast = { - title = mpo_nomads_season_events.0010.d.tt.success - left_icon = root - right_icon = scope:rich_neighbour - scope:rich_neighbour = { - add_opinion = { - target = root - modifier = stole_my_herd - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_nomads_season_events.0010.d.tt.failure - add_prestige = minor_prestige_loss - send_interface_toast = { - title = mpo_nomads_season_events.0010.d.tt.failure - left_icon = scope:rich_neighbour - reverse_add_opinion = { - target = scope:rich_neighbour - modifier = insult_opinion - opinion = -25 - } - } - } - } - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:rich_neighbour } - } - progress_towards_rival_effect = { - REASON = stole_my_herd - CHARACTER = scope:rich_neighbour - OPINION = 0 - } - } - stress_impact = { - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - modifier = { - factor = 0 - has_trait = just - } - modifier = { - factor = 50 - prowess > mediocre_skill_rating - } - } - } - option = { # I have no need to trade. - name = mpo_nomads_season_events.0010.e - trigger = { - NOT = { - scope:rich_neighbour = { - has_character_flag = given_herd - } - } - } - reverse_add_opinion = { - target = scope:rich_neighbour - modifier = insulted_opinion - opinion = -15 - } - ai_chance = { - base = 20 - ai_value_modifier = { - ai_greed = 1 - } - } - } - after = { - scope:rich_neighbour = { - if = { - limit = { - has_character_flag = given_herd - } - remove_character_flag = given_herd - } - } - } -} - -mpo_nomads_season_events.0015 = { # Two Kurultai members fight over food - type = character_event - title = mpo_nomads_season_events.0015.t - desc = mpo_nomads_season_events.0015.desc - - theme = nomads - - override_background = { reference = mpo_campfire_steppe } - - cooldown = { years = 10 } - - left_portrait = { - character = scope:kurultai_1 - animation = war_attacker - } - - right_portrait = { - character = scope:kurultai_2 - animation = aggressive_unarmed - } - - trigger = { - has_mpo_dlc_trigger = yes - government_has_flag = government_is_nomadic - is_available = yes - any_character_situation = { - NOR = { - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_abundant_grazing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_sky_blessing_season - situation_sub_region_has_county = root.capital_county - } - any_situation_sub_region = { - sub_region_current_phase = situation_steppe_warm_nights_season - situation_sub_region_has_county = root.capital_county - } - } - } - OR = { - domicile ?= { - herd <= minor_herd_value - } - } - any_councillor = { - count >= 2 - is_kurultai_trigger = yes - is_available_ai = yes - NOT = { is_spouse_of = root } - } - } - - immediate = { - random_councillor = { - limit = { - is_kurultai_trigger = yes - is_available_ai = yes - NOT = { is_spouse_of = root } - } - save_scope_as = kurultai_1 - } - random_councillor = { - limit = { - is_kurultai_trigger = yes - is_available_ai = yes - NOT = { - this = scope:kurultai_1 - is_spouse_of = root - } - } - save_scope_as = kurultai_2 - } - } - - option = { # Do not cry over spilled kumis. - name = mpo_nomads_season_events.0015.a - reverse_add_opinion = { - target = scope:kurultai_1 - modifier = grateful_opinion - opinion = 30 - } - add_prestige = minor_prestige_loss - stress_impact = { - calm = medium_stress_impact_loss - wrathful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 20 - has_trait = calm - } - modifier = { - factor = 0 - has_trait = wrathful - } - } - } - - option = { # Go on, fight! Entertain the rest of us. - name = mpo_nomads_season_events.0015.b - reverse_add_opinion = { - target = scope:kurultai_2 - modifier = grateful_opinion - opinion = 30 - } - scope:kurultai_2 = { - duel = { - skill = prowess - target = scope:kurultai_1 - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_nomads_season_events.0015.b.tt.success - scope:kurultai_1 = { - add_trait = wounded_1 - } - send_interface_toast = { - title = mpo_nomads_season_events.0015.b.tt.success - left_icon = scope:kurultai_1 - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_nomads_season_events.0015.b.tt.failure - scope:kurultai_2 = { - add_trait = wounded_1 - } - send_interface_toast = { - title = mpo_nomads_season_events.0015.b.tt.failure - left_icon = scope:kurultai_2 - } - } - } - } - - stress_impact = { - wrathful = medium_stress_impact_loss - calm = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 20 - has_trait = wrathful - } - modifier = { - factor = 0 - has_trait = calm - } - } - } - - option = { # Let it go, both of you. - name = mpo_nomads_season_events.0015.c - reverse_add_opinion = { - target = scope:kurultai_1 - modifier = disappointed_opinion - opinion = -15 - } - reverse_add_opinion = { - target = scope:kurultai_2 - modifier = disappointed_opinion - opinion = -15 - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } -} diff --git a/events/dlc/mpo/mpo_story_cycle_temujin_flavor_events.txt b/events/dlc/mpo/mpo_story_cycle_temujin_flavor_events.txt deleted file mode 100644 index eecb3176c..000000000 --- a/events/dlc/mpo/mpo_story_cycle_temujin_flavor_events.txt +++ /dev/null @@ -1,835 +0,0 @@ -namespace = mpo_temujin_flavor - -# mpo_temujin_flavor.0001 - Become Blood Brothers with Jamukha -# mpo_temujin_flavor.0010 - Jamukha stops being your vassal -# mpo_temujin_flavor.0020 - Jamukha becomes your rival -# mpo_temujin_flavor.0030 - Borte announces she's pregnant - -####################### -# Become Blood Brothers with Jamukha -####################### - -mpo_temujin_flavor.0001 = { - type = character_event - title = mpo_temujin_flavor.0001.t - desc = mpo_temujin_flavor.0001.desc - theme = nomads - override_background = { - reference = mpo_campfire_steppe - } - left_portrait = { - character = root - animation = aggressive_dagger - } - right_portrait = { - character = scope:jamukha - animation = celebrate_dagger - } - - trigger = { - NOR = { - has_variable = had_mpo_temujin_flavor_0001 - has_variable = had_mpo_temujin_flavor_0010 - has_variable = had_mpo_temujin_flavor_0020 - } - is_physically_able = yes - character:mpo_mongol_1 = { - is_alive = yes - is_physically_able = yes - NOR = { - has_relation_blood_brother = root - has_relation_rival = root - } - } - } - - immediate = { - play_music_cue = "mx_cue_touching_moment" - set_variable = had_mpo_temujin_flavor_0001 - character:mpo_mongol_1 = { - save_scope_as = jamukha - save_scope_as = blood_bro - } - } - - option = { # Yay - name = mpo_temujin_flavor.0001.a - - if = { - limit = { - NOR = { - has_character_flag = had_warhorse_story - any_owned_story = { - story_type = story_cycle_martial_lifestyle_warhorse - exists = var:story_cycle_horse_name - } - } - scope:jamukha = { - NOR = { - has_character_flag = had_warhorse_story - any_owned_story = { - story_type = story_cycle_martial_lifestyle_warhorse - exists = var:story_cycle_horse_name - } - } - } - } - custom_tooltip = temujin_warhorse_tt - custom_tooltip = jamukha_warhorse_tt - if = { - limit = { - scope:jamukha = { - is_ai = yes - } - } - hidden_effect = { - start_warhorse_story_cycle_effect = yes - } - } - if = { - limit = { - scope:jamukha = { - is_ai = yes - } - } - hidden_effect = { - scope:jamukha = { - start_warhorse_story_cycle_effect = yes - } - } - } - } - if = { - limit = { - scope:jamukha = { - is_ai = yes - } - } - set_relation_blood_brother = { - target = scope:jamukha - reason = blood_brother_temujin_jamukha - } - add_character_modifier = blood_brother_warrior_modifier - scope:jamukha = { - add_character_modifier = blood_brother_warrior_modifier - } - } - else = { - custom_tooltip = jamukha_choose_blood_brother_tt - save_scope_as = temujin - scope:jamukha = { - trigger_event = mpo_jamukha_flavor.0001 - } - show_as_tooltip = { - add_character_modifier = blood_brother_warrior_modifier - scope:jamukha = { - add_character_modifier = blood_brother_warrior_modifier - } - } - } - custom_tooltip = blood_brother_gains_hook_tt - custom_tooltip = blood_brother_gains_hook_other_tt - - stress_impact = { - gregarious = medium_stress_impact_loss - callous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # Not a chance - name = mpo_temujin_flavor.0001.b - add_dread = minor_dread_gain - add_prestige = minor_prestige_gain - set_variable = rejected_jamukha_var - scope:jamukha = { - add_opinion = { - target = root - modifier = insult_opinion - opinion = -25 - } - } - stress_impact = { - base = minor_stress_impact_gain - callous = medium_stress_impact_loss - gregarious = medium_stress_impact_gain - } - - ai_chance = { - base = 0 - } - } - - after = { - hidden_effect = { - scope:jamukha = { - trigger_event = { - days = { 180 360 } - id = mpo_jamukha_flavor.0010 - } - } - - } - } -} - -####################### -# Jamukha stops being your vassal -####################### - -scripted_effect mpo_temujin_flavor_0010_jamukha_leaving_effect = { - if = { - limit = { scope:jamukha = { is_vassal_of = root } } - scope:jamukha = { - create_title_and_vassal_change = { - type = independency - save_scope_as = change - add_claim_on_loss = no - } - becomes_independent = { - change = scope:change - } - resolve_title_and_vassal_change = scope:change - } - } - else = { - scope:jamukha = { end_tributary = yes } - } - add_truce_both_ways = { - character = scope:jamukha - years = 5 - name = temujin_jamukha_truce - } - hidden_effect = { # This will put him closer to Temujin - scope:jamukha = { - if = { - limit = { - current_military_strength < scope:temujin.current_military_strength - } - domicile ?= { - change_herd = { - value = scope:temujin.domicile.herd - multiply = 0.5 - } - } - } - } - } - if = { - limit = { - exists = scope:togrul - } - scope:jamukha = { - custom_tooltip = negotiate_togrul_alliance_effect_tooltip - create_alliance = { - target = scope:togrul - allied_through_owner = scope:jamukha - allied_through_target = scope:togrul - } - hidden_effect = { - scope:togrul = { - add_opinion = { - target = scope:jamukha - modifier = event_negotiated_alliance_opinion - } - } - } - } - } -} - -mpo_temujin_flavor.0010 = { - type = character_event - title = mpo_temujin_flavor.0010.t - desc = { - desc = mpo_temujin_flavor.0010.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_variable = rejected_jamukha_var } - desc = mpo_temujin_flavor.0010.desc.rejected - } - triggered_desc = { - trigger = { has_relation_blood_brother = scope:jamukha } - desc = mpo_temujin_flavor.0010.desc.blood_brothers - } - desc = mpo_temujin_flavor.0010.desc.fallback - } - } - theme = nomads - override_background = { - reference = mpo_campfire_steppe - } - left_portrait = { - character = root - animation = personality_vengeful - } - right_portrait = { - character = scope:jamukha - animation = schadenfreude - } - lower_right_portrait = scope:togrul - - trigger = { - has_variable = had_mpo_temujin_flavor_0001 - NOR = { - has_variable = had_mpo_temujin_flavor_0010 - has_variable = had_mpo_temujin_flavor_0020 - } - is_alive = yes - is_ruler = yes - character:mpo_mongol_1 = { - is_alive = yes - OR = { - is_vassal_of = root - is_tributary_of = root - } - } - } - - immediate = { - set_variable = { - name = had_mpo_temujin_flavor_0010 - value = character:mpo_mongol_1 - } - character:mpo_mongol_1 = { - save_scope_as = jamukha - } - mpo_temujin_flavor_0010_jamukha_leaving_effect = yes - } - - option = { # I will kill you - name = mpo_temujin_flavor.0010.aa - trigger = { dread >= 100 } - if = { - limit = { - has_relation_blood_brother = scope:jamukha - } - custom_tooltip = { - text = mpo_temujin_flavor.0010.aa_remove_blood_brother - remove_relation_blood_brother = scope:jamukha - } - } - scope:jamukha = { - add_dread = major_dread_loss - add_prestige = medium_prestige_loss - } - every_vassal = { - limit = { - has_vassal_stance = belligerent - is_obedient = no - } - custom = every_belligerent_vassal - add_opinion = { - modifier = obedience_opinion - target = root - } - } - every_courtier = { - limit = { - is_obedient = no - NOR = { - has_trait = brave - has_trait = compassionate - } - } - custom = every_non_brave_compassionate_courtier - add_opinion = { - modifier = obedience_opinion - target = root - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - callous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # Look at this clown - name = mpo_temujin_flavor.0010.a - duel = { - skill = diplomacy - target = scope:jamukha - 50 = { # Your people are impressed - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = mpo_temujin_flavor.0010.a.tt.success - send_interface_toast = { - title = mpo_temujin_flavor.0010.a.tt.success - left_icon = root - right_icon = scope:jamukha - add_prestige = medium_prestige_gain - scope:jamukha = { add_prestige = medium_prestige_loss } - } - } - 50 = { # No one is impressed - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = mpo_temujin_flavor.0010.a.tt.failure - send_interface_toast = { - title = mpo_temujin_flavor.0010.a.tt.failure - left_icon = root - add_prestige = minor_prestige_loss - } - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - callous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # Try to force him to stay - name = mpo_temujin_flavor.0010.b - add_dread = minor_dread_gain - scope:jamukha = { - add_opinion = { - target = root - modifier = hurt_opinion - opinion = -30 - } - } - stress_impact = { - callous = medium_stress_impact_loss - gregarious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Let him go - name = mpo_temujin_flavor.0010.c - scope:jamukha = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - stress_impact = { - generous = medium_stress_impact_loss - callous = major_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - trigger_event = { - days = { 360 420 } - id = mpo_temujin_flavor.0020 - } - } - } -} - -####################### -# Jamukha becomes your rival -- now you must kill him -####################### - -mpo_temujin_flavor.0020 = { - type = character_event - title = mpo_temujin_flavor.0020.t - desc = { - desc = mpo_temujin_flavor.0020.desc.intro - first_valid = { - triggered_desc = { - trigger = { has_relation_blood_brother = scope:jamukha } - desc = mpo_temujin_flavor.0020.desc.blood_brothers - } - triggered_desc = { - trigger = { has_relation_friend = scope:jamukha } - desc = mpo_temujin_flavor.0020.desc.friend - } - triggered_desc = { - trigger = { has_relation_rival = scope:jamukha } - desc = mpo_temujin_flavor.0020.desc.rival - } - desc = mpo_temujin_flavor.0020.desc.fallback - } - desc = mpo_temujin_flavor.0020.desc.outro - } - theme = nomads - override_background = { - reference = mpo_campfire_steppe - } - left_portrait = { - character = root - animation = anger - outfit_tags = { nightgown } - camera = camera_event_very_left - } - right_portrait = { - character = scope:jamukha - animation = horse_conversing_left - camera = camera_event_horse_right - } - window = scheme_conclusion_event_no_header - - trigger = { - NOT = { has_variable = had_mpo_temujin_flavor_0020 } - OR = { - has_variable = had_mpo_temujin_flavor_0010 - AND = { - NOT = { has_variable = had_mpo_temujin_flavor_0010 } - character:mpo_mongol_1 = { - NOR = { - is_vassal_of = root - is_tributary = root - } - } - } - } - is_alive = yes - is_ruler = yes - character:mpo_mongol_1 = { - is_alive = yes - in_diplomatic_range = root - is_ruler = yes - } - } - - immediate = { - save_scope_as = temujin - play_music_cue = "mx_cue_murder" - set_variable = { - name = had_mpo_temujin_flavor_0020 - value = character:mpo_mongol_1 - } - character:mpo_mongol_1 = { - save_scope_as = jamukha - } - if = { - limit = { - current_military_strength < scope:jamukha.current_military_strength - } - domicile ?= { - change_herd = { - value = scope:jamukha.domicile.herd - multiply = 1.5 - } - } - add_prestige = major_prestige_gain # For MAA maintenance, mainly - custom_tooltip = temujin_gain_from_defectors_tt - } - if = { - limit = { - has_relation_blood_brother = scope:jamukha - } - scope:jamukha = { - add_character_flag = { - flag = was_temujins_bro - years = 30 - } - } - } - } - - option = { # You who I once called brother - name = mpo_temujin_flavor.0020.a - reason = blood_brother - add_internal_flag = special - trigger = { has_relation_blood_brother = scope:jamukha } - custom_tooltip = { - text = mpo_temujin_flavor.0020.a_war_win - set_variable = temujin_jamukha_war_var - } - add_character_modifier = { - modifier = temujin_jamukha_war_modifier - years = 5 - } - stress_impact = { - base = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Murderrrrrrr - name = mpo_temujin_flavor.0020.b - custom_tooltip = { - text = mpo_temujin_flavor.0020.b_murder - set_variable = { - name = temujin_jamukha_murder_var - value = scope:jamukha - } - } - stress_impact = { - deceitful = massive_stress_impact_loss - sadistic = massive_stress_impact_loss - } - ai_chance = { - base = 0 - } - } - - option = { # I'm going to crush your skull - name = mpo_temujin_flavor.0020.c - trigger = { - NOT = { has_relation_blood_brother = scope:jamukha } - } - add_character_modifier = { - modifier = temujin_jamukha_war_smaller_modifier - years = 5 - } - stress_impact = { - wrathful = massive_stress_impact_loss - vengeful = massive_stress_impact_loss - } - ai_chance = { - base = 100 - } - } - - after = { - if = { # Remove hooks - limit = { - scope:jamukha = { - has_hook = root - } - } - scope:jamukha = { remove_hook = { target = root } } - } - if = { - limit = { - has_hook = scope:jamukha - } - remove_hook = { target = scope:jamukha } - } - if = { # Remove Truce - limit = { - any_truce_target = { this = scope:jamukha } - } - cancel_truce_both_ways = scope:jamukha - } - custom_tooltip = mpo_temujin_flavor.0020.jamukha_gok_requirement - if = { - limit = { has_relation_blood_brother = scope:jamukha } - custom_tooltip = { - text = mpo_temujin_flavor.0010.aa_remove_blood_brother - remove_relation_blood_brother = scope:jamukha - } - } - else_if = { - limit = { has_relation_friend = scope:jamukha } - custom_tooltip = { - text = mpo_temujin_flavor.0020.remove_friend - remove_relation_friend = scope:jamukha - } - } - if = { - limit = { NOT = { has_relation_rival = scope:jamukha } } - set_relation_rival = { - target = scope:jamukha - reason = rival_temujin_jamukha - } - } - else_if = { - limit = { has_relation_rival = scope:jamukha } - set_relation_nemesis = { - target = scope:jamukha - reason = rival_temujin_jamukha - } - } - else = { - add_opinion = { - target = root - modifier = hate_opinion - opinion = -100 - } - } - custom_tooltip = { - text = mpo_temujin_flavor.0020.cb.tt - add_to_variable_list = { - name = retaliation_cb_var_list - target = scope:jamukha - } - scope:jamukha = { - add_to_variable_list = { - name = retaliation_cb_var_list - target = root - } - } - } - scope:jamukha = { - trigger_event = mpo_jamukha_flavor.0020 - } - } -} - -####################### -# Borte announces she's pregnant -####################### -mpo_temujin_flavor.0030 = { - type = character_event - title = mpo_temujin_flavor.0030.t - desc = mpo_temujin_flavor.0030.desc - theme = pregnancy - left_portrait = { - character = root - animation = anger - } - right_portrait = { - character = scope:borte - animation = worry - } - lower_right_portrait = scope:mergid - - trigger = { - NOT = { has_variable = had_mpo_temujin_flavor_0030 } # To make sure it triggers even if you migrate straight away and lose the event time window - character:172004 = { - is_alive = yes - is_spouse_of = root - is_pregnant = no - } - any_neighboring_top_liege_realm_owner = { - NOT = { has_relation_rival = root } - } - } - - immediate = { - play_music_cue = "mx_cue_personal_negative" - set_variable = had_mpo_temujin_flavor_0030 - character:172004 = { - save_scope_as = borte - } - if = { - limit = { - character:303116 = { - is_alive = yes - NOT = { has_relation_rival = root } - } - } - character:303116 = { - save_scope_as = mergid - } - } - else_if = { - limit = { - any_ruler = { - dynasty = dynasty:2001144 - NOT = { has_relation_rival = root } - } - } - random_ruler = { - limit = { - dynasty = dynasty:2001144 - NOT = { has_relation_rival = root } - } - save_scope_as = mergid - } - } - else = { - random_neighboring_top_liege_realm_owner = { - limit = { NOT = { has_relation_rival = root } } - save_scope_as = mergid - } - } - scope:borte = { - custom_tooltip = mpo_temujin_flavor.0030.pregnancy_tt - hidden_effect = { - make_pregnant = { - father = scope:mergid - } - } - set_variable = borte_first_child_var - } - } - - option = { # I hate those guys - name = mpo_temujin_flavor.0030.a - set_relation_rival = { - target = scope:mergid - reason = rival_temujin_mergid - } - custom_tooltip = { - text = mpo_temujin_flavor.0030.a.tt - add_to_variable_list = { - name = retaliation_cb_var_list - target = scope:mergid - } - } - add_dread = medium_dread_gain - stress_impact = { - vengeful = major_stress_impact_loss - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 0 # To prevent AI Temüjin from being murdered immediately - } - } - - option = { # Let's forget about that, you are more important - name = mpo_temujin_flavor.0030.b - if = { - limit = { - NOT = { has_relation_lover = scope:borte } - } - set_relation_lover = { - target = scope:borte - reason = lover_temujin_borte - } - } - else = { - scope:borte = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - } - set_relation_wedding_very_good_fertility = scope:borte - stress_impact = { - compassionate = major_stress_impact_loss - vengeful = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { # I could not care less - name = mpo_temujin_flavor.0030.c - scope:borte = { - add_opinion = { - target = root - modifier = upset_opinion - opinion = -25 - } - } - stress_impact = { - callous = major_stress_impact_loss - compassionate = major_stress_impact_gain - vengeful = major_stress_impact_gain - } - ai_chance = { - base = 0 - } - } -} - diff --git a/events/dlc/tgp/tgp_ceremonial_liege_events.txt b/events/dlc/tgp/tgp_ceremonial_liege_events.txt index e57dbae51..ed55931da 100644 --- a/events/dlc/tgp/tgp_ceremonial_liege_events.txt +++ b/events/dlc/tgp/tgp_ceremonial_liege_events.txt @@ -141,7 +141,7 @@ tgp_ceremonial_liege_events.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain arrogant = minor_stress_impact_gain just = minor_stress_impact_loss @@ -223,7 +223,7 @@ tgp_ceremonial_liege_events.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss diligent = minor_stress_impact_gain honest = minor_stress_impact_gain @@ -322,7 +322,7 @@ tgp_ceremonial_liege_events.0010 = { REASON = friend_took_lessons_to_heart } - stress_impact = { + stress_and_fulfillment_impact = { humble = minor_stress_impact_loss temperate = minor_stress_impact_loss lazy = minor_stress_impact_loss @@ -389,7 +389,7 @@ tgp_ceremonial_liege_events.0010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { shy = minor_stress_impact_loss gregarious = minor_stress_impact_gain } @@ -421,7 +421,7 @@ tgp_ceremonial_liege_events.0010 = { if = { limit = { - government_has_flag = government_is_administrative + government_has_flag = government_has_influence } change_influence = medium_influence_gain } @@ -429,7 +429,7 @@ tgp_ceremonial_liege_events.0010 = { add_prestige = medium_prestige_gain } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain arrogant = minor_stress_impact_loss humble = minor_stress_impact_gain @@ -482,7 +482,7 @@ tgp_ceremonial_liege_events.0010 = { title = tgp_ceremonial_liege_events.0010.tt.success left_icon = root right_icon = scope:spouse - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss paranoid = minor_stress_impact_loss } @@ -516,7 +516,7 @@ tgp_ceremonial_liege_events.0010 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain } } @@ -663,7 +663,7 @@ tgp_ceremonial_liege_events.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain ambitious = minor_stress_impact_loss arrogant = minor_stress_impact_loss @@ -721,7 +721,7 @@ tgp_ceremonial_liege_events.0020 = { } if = { limit = { - government_has_flag = government_is_administrative + government_has_flag = government_has_influence } change_influence = minor_influence_gain } @@ -757,7 +757,7 @@ tgp_ceremonial_liege_events.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = minor_stress_impact_loss deceitful = minor_stress_impact_loss honest = minor_stress_impact_gain @@ -800,7 +800,7 @@ tgp_ceremonial_liege_events.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss lazy = minor_stress_impact_loss loyal = minor_stress_impact_loss @@ -960,7 +960,7 @@ tgp_ceremonial_liege_events.0030 = { } } add_learning_lifestyle_xp = minor_lifestyle_xp - stress_impact = { + stress_and_fulfillment_impact = { patient = minor_stress_impact_loss forgiving = minor_stress_impact_loss calm = minor_stress_impact_loss @@ -978,7 +978,7 @@ tgp_ceremonial_liege_events.0030 = { title = tgp_ceremonial_liege_events.0030.tt.failure left_icon = root right_icon = scope:scholar - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain wrathful = minor_stress_impact_gain vengeful = minor_stress_impact_gain @@ -1072,7 +1072,7 @@ tgp_ceremonial_liege_events.0030 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss paranoid = minor_stress_impact_loss wrathful = minor_stress_impact_loss @@ -1214,18 +1214,18 @@ tgp_ceremonial_liege_events.0040 = { } if = { limit = { - faith = { trait_is_virtue = honest } + rite = { trait_is_virtue_rite = honest } } add_piety = minor_piety_loss } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_gain honest = minor_stress_impact_gain deceitful = minor_stress_impact_loss @@ -1266,12 +1266,12 @@ tgp_ceremonial_liege_events.0040 = { add_prestige = minor_prestige_gain if = { limit = { - faith = { trait_is_virtue = honest } + rite = { trait_is_virtue_rite = honest } } add_piety = minor_piety_gain } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss humble = minor_stress_impact_loss honest = minor_stress_impact_loss @@ -1302,4 +1302,4 @@ tgp_ceremonial_liege_events.0040 = { } } } -} \ No newline at end of file +} diff --git a/events/dlc/tgp/tgp_child_personality_events.txt b/events/dlc/tgp/tgp_child_personality_events.txt index d41717f7a..93996b8dd 100644 --- a/events/dlc/tgp/tgp_child_personality_events.txt +++ b/events/dlc/tgp/tgp_child_personality_events.txt @@ -49,29 +49,11 @@ tgp_child_personality.0002 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = arrogant - has_trait = compassionate - has_trait = callous - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = arrogant - has_trait = compassionate - has_trait = callous - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + } } modifier = { add = 5 @@ -100,11 +82,19 @@ tgp_child_personality.0002 = { save_scope_as = guardian } } - else = { + else_if = { + limit = { + exists = court_owner.court_position:court_tutor_court_position + } court_owner.court_position:court_tutor_court_position ?= { save_scope_as = guardian } } + else = { + court_owner.court_position:court_guru_court_position ?= { + save_scope_as = guardian + } + } create_character = { template = generic_peasant_character gender_female_chance = 0 @@ -125,11 +115,11 @@ tgp_child_personality.0002 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = arrogant } + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = humble } + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } } } add_trait = arrogant @@ -137,7 +127,7 @@ tgp_child_personality.0002 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1021 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1021 } } } @@ -154,13 +144,13 @@ tgp_child_personality.0002 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = compassionate } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } modifier = { add = -0.5 - guardian_or_court_tutor_2_trait = { - TRAIT = callous - TRAIT_2 = sadistic + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } } modifier = { @@ -175,7 +165,7 @@ tgp_child_personality.0002 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1022 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1022 } } } @@ -192,14 +182,14 @@ tgp_child_personality.0002 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_2_trait = { - TRAIT = callous - TRAIT_2 = sadistic + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = compassionate } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } } add_trait = callous @@ -207,7 +197,7 @@ tgp_child_personality.0002 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1023 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1023 } } } after = { @@ -272,29 +262,11 @@ tgp_child_personality.0003 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = deceitful - has_trait = honest - has_trait = humble - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = deceitful - has_trait = honest - has_trait = humble - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } + } } modifier = { add = 5 @@ -335,11 +307,11 @@ tgp_child_personality.0003 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = deceitful } + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = honest } + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } } } add_trait = deceitful @@ -347,7 +319,7 @@ tgp_child_personality.0003 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1031 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1031 } } } @@ -363,11 +335,11 @@ tgp_child_personality.0003 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = honest } + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = deceitful } + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } } modifier = { add = 100 @@ -381,7 +353,7 @@ tgp_child_personality.0003 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1032 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1032 } } } @@ -397,11 +369,11 @@ tgp_child_personality.0003 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = humble } + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = arrogant } + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } } modifier = { add = 100 @@ -415,7 +387,7 @@ tgp_child_personality.0003 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1033 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1033 } } } } @@ -475,29 +447,11 @@ tgp_child_personality.0004 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = generous - has_trait = diligent - has_trait = patient - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = generous - has_trait = diligent - has_trait = patient - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = generous } + guardian_or_court_tutor_trait_trigger = { TRAIT = diligent } + guardian_or_court_tutor_trait_trigger = { TRAIT = patient } + } } modifier = { add = 5 @@ -548,11 +502,11 @@ tgp_child_personality.0004 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = generous } + guardian_or_court_tutor_trait_trigger = { TRAIT = generous } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = greedy } + guardian_or_court_tutor_trait_trigger = { TRAIT = greedy } } modifier = { add = 100 @@ -566,7 +520,7 @@ tgp_child_personality.0004 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1041 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1041 } } } @@ -582,11 +536,11 @@ tgp_child_personality.0004 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = diligent } + guardian_or_court_tutor_trait_trigger = { TRAIT = diligent } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = lazy } + guardian_or_court_tutor_trait_trigger = { TRAIT = lazy } } modifier = { add = 100 @@ -600,7 +554,7 @@ tgp_child_personality.0004 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1042 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1042 } } } @@ -616,11 +570,11 @@ tgp_child_personality.0004 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = patient } + guardian_or_court_tutor_trait_trigger = { TRAIT = patient } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = impatient } + guardian_or_court_tutor_trait_trigger = { TRAIT = impatient } } modifier = { add = 100 @@ -634,7 +588,7 @@ tgp_child_personality.0004 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1043 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1043 } } } } @@ -681,29 +635,11 @@ tgp_child_personality.0007 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = just - has_trait = cynical - has_trait = temperate - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = just - has_trait = cynical - has_trait = temperate - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = just } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } + guardian_or_court_tutor_trait_trigger = { TRAIT = temperate } + } } modifier = { add = 5 @@ -754,11 +690,11 @@ tgp_child_personality.0007 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = just } + guardian_or_court_tutor_trait_trigger = { TRAIT = just } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = arbitrary } + guardian_or_court_tutor_trait_trigger = { TRAIT = arbitrary } } modifier = { add = 100 @@ -772,7 +708,7 @@ tgp_child_personality.0007 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1071 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1071 } } } @@ -788,11 +724,11 @@ tgp_child_personality.0007 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = cynical } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = trusting } + guardian_or_court_tutor_trait_trigger = { TRAIT = trusting } } } add_trait = cynical @@ -800,7 +736,7 @@ tgp_child_personality.0007 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1072 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1072 } } } @@ -816,11 +752,11 @@ tgp_child_personality.0007 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = temperate } + guardian_or_court_tutor_trait_trigger = { TRAIT = temperate } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = gluttonous } + guardian_or_court_tutor_trait_trigger = { TRAIT = gluttonous } } modifier = { add = 100 @@ -834,7 +770,7 @@ tgp_child_personality.0007 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1073 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1073 } } } after = { @@ -879,29 +815,11 @@ tgp_child_personality.0009 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = brave - has_trait = calm - has_trait = zealous - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = brave - has_trait = calm - has_trait = zealous - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = brave } + guardian_or_court_tutor_trait_trigger = { TRAIT = calm } + guardian_or_court_tutor_trait_trigger = { TRAIT = zealous } + } } modifier = { add = 5 @@ -941,11 +859,11 @@ tgp_child_personality.0009 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = brave } + guardian_or_court_tutor_trait_trigger = { TRAIT = brave } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = craven } + guardian_or_court_tutor_trait_trigger = { TRAIT = craven } } } add_trait = brave @@ -954,7 +872,7 @@ tgp_child_personality.0009 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1091 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1091 } } } @@ -970,11 +888,11 @@ tgp_child_personality.0009 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = calm } + guardian_or_court_tutor_trait_trigger = { TRAIT = calm } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = wrathful } + guardian_or_court_tutor_trait_trigger = { TRAIT = wrathful } } modifier = { add = 100 @@ -988,7 +906,7 @@ tgp_child_personality.0009 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1092 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1092 } } } @@ -1004,11 +922,11 @@ tgp_child_personality.0009 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = zealous } + guardian_or_court_tutor_trait_trigger = { TRAIT = zealous } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = cynical } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } } modifier = { add = 100 @@ -1022,7 +940,7 @@ tgp_child_personality.0009 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1093 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1093 } } } } @@ -1089,29 +1007,11 @@ tgp_child_personality.0010 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = ambitious - has_trait = sadistic - has_trait = paranoid - } - } - } - modifier = { - add = 2 - NOT = { - any_relation = { - type = guardian - } - } - court_owner.court_position:court_tutor_court_position ?= { - OR = { - has_trait = ambitious - has_trait = sadistic - has_trait = paranoid - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = ambitious } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } + guardian_or_court_tutor_trait_trigger = { TRAIT = paranoid } + } } modifier = { add = 5 @@ -1142,11 +1042,11 @@ tgp_child_personality.0010 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = ambitious } + guardian_or_court_tutor_trait_trigger = { TRAIT = ambitious } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = content } + guardian_or_court_tutor_trait_trigger = { TRAIT = content } } modifier = { add = 100 @@ -1160,7 +1060,7 @@ tgp_child_personality.0010 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1101 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1101 } } } @@ -1177,7 +1077,7 @@ tgp_child_personality.0010 = { base = 0.25 modifier = { add = 2 - guardian_or_court_tutor_trait = { TRAIT = sadistic } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } modifier = { add = 500 #To be sure this happens if they're marked for it @@ -1189,7 +1089,7 @@ tgp_child_personality.0010 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1102 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1102 } } } @@ -1205,11 +1105,11 @@ tgp_child_personality.0010 = { base = 1 modifier = { add = 4 - guardian_or_court_tutor_trait = { TRAIT = paranoid } + guardian_or_court_tutor_trait_trigger = { TRAIT = paranoid } } modifier = { add = -0.5 - guardian_or_court_tutor_trait = { TRAIT = trusting } + guardian_or_court_tutor_trait_trigger = { TRAIT = trusting } } } add_trait = paranoid @@ -1217,7 +1117,7 @@ tgp_child_personality.0010 = { limit = { is_ai = yes } - guardian_or_court_tutor_trigger_event = { EVENT = tgp_child_personality.1103 } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.1103 } } } } @@ -1281,14 +1181,11 @@ tgp_child_personality.7000 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = diligent - has_trait = gregarious - has_trait = temperate - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = diligent } + guardian_or_court_tutor_trait_trigger = { TRAIT = gregarious } + guardian_or_court_tutor_trait_trigger = { TRAIT = temperate } + } } modifier = { add = 5 @@ -1331,19 +1228,13 @@ tgp_child_personality.7000 = { is_ai = yes } add_character_flag = diligent - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7001 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7001 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = diligent - } + guardian_or_court_tutor_trait_trigger = { TRAIT = diligent } } modifier = { add = 100 @@ -1353,10 +1244,7 @@ tgp_child_personality.7000 = { } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = lazy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = lazy } } } } @@ -1375,26 +1263,17 @@ tgp_child_personality.7000 = { is_ai = yes } add_character_flag = gregarious - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7001 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7001 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = gregarious - } + guardian_or_court_tutor_trait_trigger = { TRAIT = gregarious } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = shy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = shy } } } } @@ -1413,26 +1292,17 @@ tgp_child_personality.7000 = { is_ai = yes } add_character_flag = temperate - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7001 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7001 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = temperate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = temperate } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = gluttonous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = gluttonous } } modifier = { add = 100 @@ -1477,13 +1347,21 @@ tgp_child_personality.7300 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = eccentric - has_trait = gregarious - has_trait = compassionate - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = eccentric } + guardian_or_court_tutor_trait_trigger = { TRAIT = gregarious } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } + } + } + modifier = { + add = 5 + culture = { + has_cultural_parameter = compassionate_trait_more_common + } + NOR = { + has_trait = compassionate + has_trait = callous + has_trait = sadistic } } } @@ -1508,28 +1386,19 @@ tgp_child_personality.7300 = { is_ai = yes } add_character_flag = eccentric - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7301 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7301 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = eccentric - } + guardian_or_court_tutor_trait_trigger = { TRAIT = eccentric } } modifier = { add = -0.5 - any_relation = { - type = guardian - OR = { - has_trait = fickle - has_trait = stubborn - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = fickle } + guardian_or_court_tutor_trait_trigger = { TRAIT = stubborn } } } } @@ -1551,28 +1420,25 @@ tgp_child_personality.7300 = { is_ai = yes } add_character_flag = compassionate - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7301 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7301 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = compassionate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } modifier = { add = -0.5 - any_relation = { - type = guardian - OR = { - has_trait = sadistic - has_trait = callous - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + } + } + modifier = { + add = 100 + culture = { + has_cultural_parameter = compassionate_trait_more_common } } } @@ -1594,26 +1460,17 @@ tgp_child_personality.7300 = { is_ai = yes } add_character_flag = callous - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7301 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7301 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = callous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = compassionate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } } } @@ -1655,14 +1512,11 @@ tgp_child_personality.7010 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = zealous - has_trait = ambitious - has_trait = sadistic - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = zealous } + guardian_or_court_tutor_trait_trigger = { TRAIT = ambitious } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } + } } modifier = { add = 5 @@ -1704,26 +1558,17 @@ tgp_child_personality.7010 = { is_ai = yes } add_character_flag = zealous - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7011 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7011 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = zealous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = zealous } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = cynical - } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } } modifier = { add = 100 @@ -1748,26 +1593,17 @@ tgp_child_personality.7010 = { is_ai = yes } add_character_flag = ambitious - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7011 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7011 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = ambitious - } + guardian_or_court_tutor_trait_trigger = { TRAIT = ambitious } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = content - } + guardian_or_court_tutor_trait_trigger = { TRAIT = content } } modifier = { add = 100 @@ -1793,26 +1629,17 @@ tgp_child_personality.7010 = { is_ai = yes } add_character_flag = sadistic - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7011 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7011 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = sadistic - } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = compassionate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } } } @@ -1855,14 +1682,11 @@ tgp_child_personality.7020 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = shy - has_trait = paranoid - has_trait = craven - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = shy } + guardian_or_court_tutor_trait_trigger = { TRAIT = paranoid } + guardian_or_court_tutor_trait_trigger = { TRAIT = craven } + } } } @@ -1890,26 +1714,17 @@ tgp_child_personality.7020 = { is_ai = yes } add_character_flag = shy - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7021 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7021 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = shy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = shy } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = gregarious - } + guardian_or_court_tutor_trait_trigger = { TRAIT = gregarious } } } } @@ -1928,26 +1743,17 @@ tgp_child_personality.7020 = { is_ai = yes } add_character_flag = paranoid - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7021 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7021 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = paranoid - } + guardian_or_court_tutor_trait_trigger = { TRAIT = paranoid } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = trusting - } + guardian_or_court_tutor_trait_trigger = { TRAIT = trusting } } } } @@ -1966,26 +1772,17 @@ tgp_child_personality.7020 = { is_ai = yes } add_character_flag = craven - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7021 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7021 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = craven - } + guardian_or_court_tutor_trait_trigger = { TRAIT = craven } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = brave - } + guardian_or_court_tutor_trait_trigger = { TRAIT = brave } } } } @@ -2032,14 +1829,11 @@ tgp_child_personality.7050 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = just - has_trait = greedy - has_trait = callous - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = just } + guardian_or_court_tutor_trait_trigger = { TRAIT = greedy } + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + } } modifier = { add = 5 @@ -2072,26 +1866,17 @@ tgp_child_personality.7050 = { is_ai = yes } add_character_flag = just - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7051 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7051 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = just - } + guardian_or_court_tutor_trait_trigger = { TRAIT = just } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = arbitrary - } + guardian_or_court_tutor_trait_trigger = { TRAIT = arbitrary } } modifier = { add = 100 @@ -2117,26 +1902,17 @@ tgp_child_personality.7050 = { is_ai = yes } add_character_flag = greedy - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7051 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7051 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = greedy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = greedy } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = generous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = generous } } } } @@ -2157,28 +1933,19 @@ tgp_child_personality.7050 = { is_ai = yes } add_character_flag = callous - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7051 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7051 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = callous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } } modifier = { add = -0.5 - any_relation = { - type = guardian - OR = { - has_trait = callous - has_trait = sadistic - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } } } @@ -2213,6 +1980,7 @@ tgp_child_personality.7200 = { OR = { has_trait = stubborn has_trait = fickle + has_trait = eccentric } OR = { has_trait = wrathful @@ -2226,14 +1994,11 @@ tgp_child_personality.7200 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = brave - has_trait = stubborn - has_trait = wrathful - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = brave } + guardian_or_court_tutor_trait_trigger = { TRAIT = stubborn } + guardian_or_court_tutor_trait_trigger = { TRAIT = wrathful } + } } modifier = { add = 5 @@ -2243,6 +2008,7 @@ tgp_child_personality.7200 = { NOR = { has_trait = stubborn has_trait = fickle + has_trait = eccentric } } } @@ -2272,26 +2038,17 @@ tgp_child_personality.7200 = { is_ai = yes } add_character_flag = brave - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7201 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7201 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = brave - } + guardian_or_court_tutor_trait_trigger = { TRAIT = brave } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = craven - } + guardian_or_court_tutor_trait_trigger = { TRAIT = craven } } } } @@ -2302,6 +2059,7 @@ tgp_child_personality.7200 = { NOR = { has_trait = fickle has_trait = stubborn + has_trait = eccentric } } add_trait = stubborn @@ -2311,25 +2069,19 @@ tgp_child_personality.7200 = { is_ai = yes } add_character_flag = stubborn - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7201 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7201 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = stubborn - } + guardian_or_court_tutor_trait_trigger = { TRAIT = stubborn } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = fickle + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = fickle } + guardian_or_court_tutor_trait_trigger = { TRAIT = eccentric } } } modifier = { @@ -2356,26 +2108,17 @@ tgp_child_personality.7200 = { is_ai = yes } add_character_flag = wrathful - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7201 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7201 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = wrathful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = wrathful } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = calm - } + guardian_or_court_tutor_trait_trigger = { TRAIT = calm } } } } @@ -2446,14 +2189,11 @@ tgp_child_personality.7070 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = vengeful - has_trait = deceitful - has_trait = calm - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = vengeful } + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } + guardian_or_court_tutor_trait_trigger = { TRAIT = calm } + } } modifier = { add = 5 @@ -2503,26 +2243,17 @@ tgp_child_personality.7070 = { is_ai = yes } add_character_flag = vengeful - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7071 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7071 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = vengeful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = vengeful } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = forgiving - } + guardian_or_court_tutor_trait_trigger = { TRAIT = forgiving } } modifier = { add = 100 @@ -2548,26 +2279,17 @@ tgp_child_personality.7070 = { is_ai = yes } add_character_flag = deceitful - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7071 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7071 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = deceitful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = honest - } + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } } } } @@ -2587,26 +2309,17 @@ tgp_child_personality.7070 = { is_ai = yes } add_character_flag = calm - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7071 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7071 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = calm - } + guardian_or_court_tutor_trait_trigger = { TRAIT = calm } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = wrathful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = wrathful } } modifier = { add = 100 @@ -2649,12 +2362,9 @@ tgp_child_personality.7040 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = lustful - has_trait = chaste - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = lustful } + guardian_or_court_tutor_trait_trigger = { TRAIT = chaste } } } modifier = { @@ -2683,26 +2393,17 @@ tgp_child_personality.7040 = { is_ai = yes } add_character_flag = lustful - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7041 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7041 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = lustful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = lustful } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = chaste - } + guardian_or_court_tutor_trait_trigger = { TRAIT = chaste } } } } @@ -2715,26 +2416,17 @@ tgp_child_personality.7040 = { is_ai = yes } add_character_flag = chaste - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7041 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7041 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = chaste - } + guardian_or_court_tutor_trait_trigger = { TRAIT = chaste } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = lustful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = lustful } } } } @@ -2783,14 +2475,11 @@ tgp_child_personality.7080 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = generous - has_trait = fickle - has_trait = arrogant - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = generous } + guardian_or_court_tutor_trait_trigger = { TRAIT = fickle } + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } + } } modifier = { add = 5 @@ -2829,26 +2518,17 @@ tgp_child_personality.7080 = { is_ai = yes } add_character_flag = generous - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7081 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7081 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = generous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = generous } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = greedy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = greedy } } modifier = { add = 100 @@ -2865,6 +2545,7 @@ tgp_child_personality.7080 = { NOR = { has_trait = stubborn has_trait = fickle + has_trait = eccentric } } add_trait = fickle @@ -2874,25 +2555,19 @@ tgp_child_personality.7080 = { is_ai = yes } add_character_flag = fickle - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7081 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7081 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = fickle - } + guardian_or_court_tutor_trait_trigger = { TRAIT = fickle } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = stubborn + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = eccentric } + guardian_or_court_tutor_trait_trigger = { TRAIT = stubborn } } } } @@ -2913,26 +2588,17 @@ tgp_child_personality.7080 = { is_ai = yes } add_character_flag = arrogant - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7081 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7081 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = arrogant - } + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = humble - } + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } } } } @@ -2985,14 +2651,11 @@ tgp_child_personality.7030 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = lazy - has_trait = gluttonous - has_trait = compassionate - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = lazy } + guardian_or_court_tutor_trait_trigger = { TRAIT = gluttonous } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } + } } modifier = { add = 5 @@ -3045,26 +2708,17 @@ tgp_child_personality.7030 = { is_ai = yes } add_character_flag = lazy - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7031 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7031 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = lazy - } + guardian_or_court_tutor_trait_trigger = { TRAIT = lazy } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = diligent - } + guardian_or_court_tutor_trait_trigger = { TRAIT = diligent } } } } @@ -3085,26 +2739,17 @@ tgp_child_personality.7030 = { is_ai = yes } add_character_flag = gluttonous - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7031 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7031 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = gluttonous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = gluttonous } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = temperate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = temperate } } } } @@ -3125,28 +2770,19 @@ tgp_child_personality.7030 = { is_ai = yes } add_character_flag = compassionate - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7031 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7031 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = compassionate - } + guardian_or_court_tutor_trait_trigger = { TRAIT = compassionate } } modifier = { add = -0.5 - any_relation = { - type = guardian - OR = { - has_trait = callous - has_trait = sadistic - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = callous } + guardian_or_court_tutor_trait_trigger = { TRAIT = sadistic } } } modifier = { @@ -3202,14 +2838,11 @@ tgp_child_personality.7090 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = forgiving - has_trait = trusting - has_trait = patient - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = forgiving } + guardian_or_court_tutor_trait_trigger = { TRAIT = trusting } + guardian_or_court_tutor_trait_trigger = { TRAIT = patient } + } } modifier = { add = 5 @@ -3261,26 +2894,17 @@ tgp_child_personality.7090 = { is_ai = yes } add_character_flag = forgiving - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7091 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7091 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = forgiving - } + guardian_or_court_tutor_trait_trigger = { TRAIT = forgiving } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = vengeful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = vengeful } } } } @@ -3300,26 +2924,17 @@ tgp_child_personality.7090 = { is_ai = yes } add_character_flag = trusting - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7091 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7091 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = trusting - } + guardian_or_court_tutor_trait_trigger = { TRAIT = trusting } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = paranoid - } + guardian_or_court_tutor_trait_trigger = { TRAIT = paranoid } } } } @@ -3339,26 +2954,17 @@ tgp_child_personality.7090 = { is_ai = yes } add_character_flag = patient - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7091 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7091 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = patient - } + guardian_or_court_tutor_trait_trigger = { TRAIT = patient } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = impatient - } + guardian_or_court_tutor_trait_trigger = { TRAIT = impatient } } modifier = { add = 100 @@ -3414,14 +3020,11 @@ tgp_child_personality.7060 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = humble - has_trait = cynical - has_trait = content - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } + guardian_or_court_tutor_trait_trigger = { TRAIT = content } + } } modifier = { add = 5 @@ -3470,26 +3073,17 @@ tgp_child_personality.7060 = { is_ai = yes } add_character_flag = humble - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7061 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7061 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = humble - } + guardian_or_court_tutor_trait_trigger = { TRAIT = humble } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = arrogant - } + guardian_or_court_tutor_trait_trigger = { TRAIT = arrogant } } modifier = { add = 100 @@ -3515,26 +3109,17 @@ tgp_child_personality.7060 = { is_ai = yes } add_character_flag = cynical - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7061 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7061 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = cynical - } + guardian_or_court_tutor_trait_trigger = { TRAIT = cynical } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = zealous - } + guardian_or_court_tutor_trait_trigger = { TRAIT = zealous } } } } @@ -3554,26 +3139,17 @@ tgp_child_personality.7060 = { is_ai = yes } add_character_flag = content - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7061 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7061 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = content - } + guardian_or_court_tutor_trait_trigger = { TRAIT = content } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = ambitious - } + guardian_or_court_tutor_trait_trigger = { TRAIT = ambitious } } modifier = { add = 100 @@ -3648,14 +3224,11 @@ tgp_child_personality.7100 = { base = 1 modifier = { add = 2 - any_relation = { - type = guardian - OR = { - has_trait = honest - has_trait = arbitrary - has_trait = impatient - } - } + OR = { + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } + guardian_or_court_tutor_trait_trigger = { TRAIT = arbitrary } + guardian_or_court_tutor_trait_trigger = { TRAIT = impatient } + } } modifier = { add = 5 @@ -3689,26 +3262,17 @@ tgp_child_personality.7100 = { is_ai = yes } add_character_flag = honest - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7101 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7101 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = honest - } + guardian_or_court_tutor_trait_trigger = { TRAIT = honest } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = deceitful - } + guardian_or_court_tutor_trait_trigger = { TRAIT = deceitful } } modifier = { add = 100 @@ -3734,26 +3298,17 @@ tgp_child_personality.7100 = { is_ai = yes } add_character_flag = arbitrary - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7101 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7101 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = arbitrary - } + guardian_or_court_tutor_trait_trigger = { TRAIT = arbitrary } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = just - } + guardian_or_court_tutor_trait_trigger = { TRAIT = just } } } } @@ -3773,26 +3328,17 @@ tgp_child_personality.7100 = { is_ai = yes } add_character_flag = impatient - random_relation = { - type = guardian - trigger_event = tgp_child_personality.7101 - } + guardian_or_court_tutor_trigger_event_effect = { EVENT = tgp_child_personality.7101 } } ai_chance = { base = 1 modifier = { add = 4 - any_relation = { - type = guardian - has_trait = impatient - } + guardian_or_court_tutor_trait_trigger = { TRAIT = impatient } } modifier = { add = -0.5 - any_relation = { - type = guardian - has_trait = patient - } + guardian_or_court_tutor_trait_trigger = { TRAIT = patient } } } } @@ -3870,7 +3416,7 @@ tgp_child_personality.1021 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -3892,7 +3438,7 @@ tgp_child_personality.1021 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -3953,7 +3499,7 @@ tgp_child_personality.1022 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -3975,7 +3521,7 @@ tgp_child_personality.1022 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4046,7 +3592,7 @@ tgp_child_personality.1023 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4074,7 +3620,7 @@ tgp_child_personality.1023 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4129,7 +3675,7 @@ tgp_child_personality.1031 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4151,7 +3697,7 @@ tgp_child_personality.1031 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4206,7 +3752,7 @@ tgp_child_personality.1032 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4228,7 +3774,7 @@ tgp_child_personality.1032 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4283,7 +3829,7 @@ tgp_child_personality.1033 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4305,7 +3851,7 @@ tgp_child_personality.1033 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4378,7 +3924,7 @@ tgp_child_personality.1041 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4400,7 +3946,7 @@ tgp_child_personality.1041 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4471,7 +4017,7 @@ tgp_child_personality.1042 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4493,7 +4039,7 @@ tgp_child_personality.1042 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4554,7 +4100,7 @@ tgp_child_personality.1043 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4576,7 +4122,7 @@ tgp_child_personality.1043 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4638,7 +4184,7 @@ tgp_child_personality.1071 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4660,7 +4206,7 @@ tgp_child_personality.1071 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4721,7 +4267,7 @@ tgp_child_personality.1072 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4743,7 +4289,7 @@ tgp_child_personality.1072 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4805,7 +4351,7 @@ tgp_child_personality.1073 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4827,7 +4373,7 @@ tgp_child_personality.1073 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4889,7 +4435,7 @@ tgp_child_personality.1091 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4911,7 +4457,7 @@ tgp_child_personality.1091 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4972,7 +4518,7 @@ tgp_child_personality.1092 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -4994,7 +4540,7 @@ tgp_child_personality.1092 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5055,7 +4601,7 @@ tgp_child_personality.1093 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5077,7 +4623,7 @@ tgp_child_personality.1093 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5144,7 +4690,7 @@ tgp_child_personality.1101 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5166,7 +4712,7 @@ tgp_child_personality.1101 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5231,7 +4777,7 @@ tgp_child_personality.1102 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5253,7 +4799,7 @@ tgp_child_personality.1102 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5316,7 +4862,7 @@ tgp_child_personality.1103 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5339,7 +4885,7 @@ tgp_child_personality.1103 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5464,7 +5010,7 @@ tgp_child_personality.7001 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5497,7 +5043,7 @@ tgp_child_personality.7001 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5530,7 +5076,7 @@ tgp_child_personality.7001 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5674,7 +5220,7 @@ tgp_child_personality.7011 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5707,7 +5253,7 @@ tgp_child_personality.7011 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5741,7 +5287,7 @@ tgp_child_personality.7011 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5885,7 +5431,7 @@ tgp_child_personality.7021 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5918,7 +5464,7 @@ tgp_child_personality.7021 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -5951,7 +5497,7 @@ tgp_child_personality.7021 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6095,7 +5641,7 @@ tgp_child_personality.7031 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6128,7 +5674,7 @@ tgp_child_personality.7031 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6162,7 +5708,7 @@ tgp_child_personality.7031 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6277,7 +5823,7 @@ tgp_child_personality.7041 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6303,7 +5849,7 @@ tgp_child_personality.7041 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6440,7 +5986,7 @@ tgp_child_personality.7051 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6473,7 +6019,7 @@ tgp_child_personality.7051 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6507,7 +6053,7 @@ tgp_child_personality.7051 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6652,7 +6198,7 @@ tgp_child_personality.7061 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6685,7 +6231,7 @@ tgp_child_personality.7061 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6718,7 +6264,7 @@ tgp_child_personality.7061 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6862,7 +6408,7 @@ tgp_child_personality.7071 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6895,7 +6441,7 @@ tgp_child_personality.7071 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -6928,7 +6474,7 @@ tgp_child_personality.7071 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7072,7 +6618,7 @@ tgp_child_personality.7081 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7099,13 +6645,14 @@ tgp_child_personality.7081 = { NOR = { has_trait = fickle has_trait = stubborn + has_trait = eccentric } } } ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7138,7 +6685,7 @@ tgp_child_personality.7081 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7282,7 +6829,7 @@ tgp_child_personality.7091 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7315,7 +6862,7 @@ tgp_child_personality.7091 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7348,7 +6895,7 @@ tgp_child_personality.7091 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7492,7 +7039,7 @@ tgp_child_personality.7101 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7525,7 +7072,7 @@ tgp_child_personality.7101 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7558,7 +7105,7 @@ tgp_child_personality.7101 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7702,7 +7249,7 @@ tgp_child_personality.7201 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7729,13 +7276,14 @@ tgp_child_personality.7201 = { NOR = { has_trait = stubborn has_trait = fickle + has_trait = eccentric } } } ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7768,7 +7316,7 @@ tgp_child_personality.7201 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7907,7 +7455,7 @@ tgp_child_personality.7301 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7939,7 +7487,7 @@ tgp_child_personality.7301 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { @@ -7971,7 +7519,7 @@ tgp_child_personality.7301 = { ai_chance = { base = 0 } - stress_impact = { + stress_and_fulfillment_impact = { base = child_trait_change_stress_penalty } scope:child = { diff --git a/events/dlc/tgp/tgp_china_career_events.txt b/events/dlc/tgp/tgp_china_career_events.txt index bd501d59c..841152dff 100644 --- a/events/dlc/tgp/tgp_china_career_events.txt +++ b/events/dlc/tgp/tgp_china_career_events.txt @@ -52,7 +52,7 @@ tgp_china_career.0001 = { animation = reading } - cooldown = { days = 1 } + cooldown = { weeks = 1 } trigger = { exists = top_liege diff --git a/events/dlc/tgp/tgp_china_decision_events.txt b/events/dlc/tgp/tgp_china_decision_events.txt index 6a07ba0c7..508914fa9 100644 --- a/events/dlc/tgp/tgp_china_decision_events.txt +++ b/events/dlc/tgp/tgp_china_decision_events.txt @@ -28,14 +28,15 @@ scripted_effect set_up_local_examiner_effect = { age = { 33 79 } location = root.location faith = scope:hegemon.faith + rite = scope:hegemon.rite culture = scope:hegemon.culture gender_female_chance = { if = { - limit = { scope:hegemon.faith = { has_doctrine = doctrine_gender_male_dominated } } + limit = { scope:hegemon.rite = { rite_has_doctrine = doctrine_gender_male_dominated } } add = 0 } else_if = { - limit = { scope:hegemon.faith = { has_doctrine = doctrine_gender_female_dominated } } + limit = { scope:hegemon.rite = { rite_has_doctrine = doctrine_gender_female_dominated } } add = 100 } else = { @@ -114,7 +115,7 @@ tgp_china_decision.1000 = { value = scope:duel_value multiplier = -3 } - stress_impact = { base = medium_stress_impact_gain } + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } } ai_chance = { @@ -266,7 +267,7 @@ tgp_china_decision.1001 = { value = scope:duel_value multiplier = -3 } - stress_impact = { base = medium_stress_impact_gain } + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } } ai_chance = { @@ -419,7 +420,7 @@ tgp_china_decision.1002 = { value = scope:duel_value multiplier = -3 } - stress_impact = { base = medium_stress_impact_gain } + stress_and_fulfillment_impact = { base = medium_stress_impact_gain } } } ai_chance = { diff --git a/events/dlc/tgp/tgp_china_ministry_events.txt b/events/dlc/tgp/tgp_china_ministry_events.txt index 9ce3529a5..f63ddbf88 100644 --- a/events/dlc/tgp/tgp_china_ministry_events.txt +++ b/events/dlc/tgp/tgp_china_ministry_events.txt @@ -192,7 +192,7 @@ tgp_china_ministry.0004 = { limit = { scope:contributor = { NOT = { - any_character_war = { this = prev } + any_character_war = { this = scope:grand_campaign_war } } } } @@ -296,7 +296,10 @@ tgp_china_ministry.0005 = { trigger = { list_size:titles_won >= list_size:titles_lost } text = tgp_china_ministry.0005.a_win } - name = tgp_china_ministry.0005.a_lost + name = { + trigger = { list_size:titles_won < list_size:titles_lost } + text = tgp_china_ministry.0005.a_lost + } if = { limit = { list_size:titles_won >= list_size:titles_lost @@ -472,7 +475,10 @@ tgp_china_ministry.0008 = { trigger = { list_size:titles_won >= list_size:titles_lost } text = tgp_china_ministry.0005.a_win } - name = tgp_china_ministry.0005.a_lost + name = { + trigger = { list_size:titles_won < list_size:titles_lost } + text = tgp_china_ministry.0005.a_lost + } show_as_tooltip = { scope:owner = { if = { @@ -506,6 +512,7 @@ tgp_china_ministry.0008 = { } # Minister of Revenue - Budget events # Top liege is enforced to enact a new budget +# NOTE: Also used for other Treasury budget using governments - Administrative & Meritocratic (not Ecclesiastical) tgp_china_ministry.0100 = { type = character_event title = tgp_china_ministry.0100.t @@ -583,6 +590,10 @@ tgp_china_ministry.0100 = { is_ai = yes is_travelling = no } + # Exclude Church Treasury (it is simpler and gets auto-enacted yearly) + NOT = { + government_has_mechanic = theocracy + } # You should enact a new budget if you fulfill ANY of these reasons OR = { # The AI hasn't set a new budget recently @@ -1269,78 +1280,78 @@ tgp_china_ministry.1000 = { opinion = 50 } add_character_modifier = tgp_personal_honors_modifier -# if = { -# limit = { -# has_title = title:e_minister_chancellor -# } -# house = { -# add_house_modifier = tgp_e_minister_chancellor_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_censor -# } -# house = { -# add_house_modifier = tgp_e_minister_censor_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_grand_marshal -# } -# house = { -# add_house_modifier = tgp_e_minister_grand_marshal_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_personnel -# } -# house = { -# add_house_modifier = tgp_e_minister_of_personnel_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_revenue -# } -# house = { -# add_house_modifier = tgp_e_minister_of_revenue_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_rites -# } -# house = { -# add_house_modifier = tgp_e_minister_of_rites_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_war -# } -# house = { -# add_house_modifier = tgp_e_minister_of_war_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_justice -# } -# house = { -# add_house_modifier = tgp_e_minister_of_justice_modifier -# } -# } -# else_if = { -# limit = { -# has_title = title:e_minister_of_works -# } -# house = { -# add_house_modifier = tgp_e_minister_of_works_modifier -# } -# } + if = { + limit = { + has_title = title:e_minister_chancellor + } + house = { + add_house_modifier = tgp_e_minister_chancellor_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_censor + } + house = { + add_house_modifier = tgp_e_minister_censor_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_grand_marshal + } + house = { + add_house_modifier = tgp_e_minister_grand_marshal_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_personnel + } + house = { + add_house_modifier = tgp_e_minister_of_personnel_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_revenue + } + house = { + add_house_modifier = tgp_e_minister_of_revenue_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_rites + } + house = { + add_house_modifier = tgp_e_minister_of_rites_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_war + } + house = { + add_house_modifier = tgp_e_minister_of_war_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_justice + } + house = { + add_house_modifier = tgp_e_minister_of_justice_modifier + } + } + else_if = { + limit = { + has_title = title:e_minister_of_works + } + house = { + add_house_modifier = tgp_e_minister_of_works_modifier + } + } dynasty = { add_dynasty_prestige = 2000 } } } diff --git a/events/dlc/tgp/tgp_china_yearly_events.txt b/events/dlc/tgp/tgp_china_yearly_events.txt index 12cf1e999..9572cb1c4 100644 --- a/events/dlc/tgp/tgp_china_yearly_events.txt +++ b/events/dlc/tgp/tgp_china_yearly_events.txt @@ -72,7 +72,7 @@ tgp_china_yearly.0001 = { } change_merit = minor_merit_gain - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain generous = medium_stress_impact_loss compassionate = medium_stress_impact_loss @@ -128,7 +128,7 @@ tgp_china_yearly.0001 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_loss generous = medium_stress_impact_gain compassionate = medium_stress_impact_gain @@ -175,7 +175,7 @@ tgp_china_yearly.0001 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -333,7 +333,7 @@ tgp_china_yearly.0005 = { #Is mentioned parent woman or man? if = { limit = { - faith = { has_doctrine = doctrine_gender_equal } + rite = { rite_has_doctrine = doctrine_gender_equal } } random_list = { 50 = { @@ -346,13 +346,13 @@ tgp_china_yearly.0005 = { } else_if = { limit = { - faith = { has_doctrine = doctrine_gender_female_dominated } + rite = { rite_has_doctrine = doctrine_gender_female_dominated } } scope:orphan_mother ?= { save_scope_as = parent } } else_if = { limit = { - faith = { has_doctrine = doctrine_gender_male_dominated } + rite = { rite_has_doctrine = doctrine_gender_male_dominated } } scope:orphan_father ?= { save_scope_as = parent } } @@ -414,7 +414,7 @@ tgp_china_yearly.0005 = { change_influence = major_influence_loss add_courtier = scope:grieving_child - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_loss callous = medium_stress_impact_gain } @@ -436,7 +436,7 @@ tgp_china_yearly.0005 = { change_merit = minor_merit_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_impact_gain callous = medium_stress_impact_loss } @@ -483,7 +483,7 @@ tgp_china_yearly.0005 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -611,7 +611,7 @@ tgp_china_yearly.0010 = { silent_disappearance_effect = yes } - stress_impact = { + stress_and_fulfillment_impact = { zealous = medium_stress_impact_loss callous = minor_stress_impact_loss } @@ -625,7 +625,7 @@ tgp_china_yearly.0010 = { years = 5 } - stress_impact = { ambitious = medium_stress_impact_loss } + stress_and_fulfillment_impact = { ambitious = medium_stress_impact_loss } } option = { #I wonder what the books say about this. @@ -652,7 +652,7 @@ tgp_china_yearly.0010 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -720,6 +720,7 @@ tgp_china_yearly.0015 = { location = root.location culture = root.culture faith = root.faith + rite = root.rite trait = honest trait = diligent trait = honest @@ -730,6 +731,7 @@ tgp_china_yearly.0015 = { location = root.location culture = root.culture faith = root.faith + rite = root.rite trait = gluttonous trait = greedy trait = gregarious @@ -756,7 +758,7 @@ tgp_china_yearly.0015 = { name = tgp_china_yearly.0015.b add_treasury_or_gold = medium_treasury_or_gold_value change_merit = minor_merit_loss - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_loss diligent = medium_stress_gain } @@ -805,7 +807,7 @@ tgp_china_yearly.0015 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain lazy = medium_stress_impact_loss diligent = medium_stress_impact_gain @@ -926,7 +928,7 @@ tgp_china_yearly.0020 = { } } - stress_impact = { + stress_and_fulfillment_impact = { ambitious = medium_stress_loss } @@ -949,7 +951,7 @@ tgp_china_yearly.0020 = { } } change_merit = minor_merit_gain - stress_impact = { + stress_and_fulfillment_impact = { compassionate = medium_stress_loss } ai_chance = { @@ -1044,7 +1046,7 @@ tgp_china_yearly.0020 = { # any_councillor = { # is_available_ai_adult = yes # NOT = { -# any_learning_councillor = { exists = this } +# any_learning_councillor = {} # } # } # } @@ -1052,7 +1054,7 @@ tgp_china_yearly.0020 = { # limit = { # is_available_ai_adult = yes # NOT = { -# any_learning_councillor = { exists = this } +# any_learning_councillor = {} # } # } # weight = { diff --git a/events/dlc/tgp/tgp_commission_book.txt b/events/dlc/tgp/tgp_commission_book.txt index aa558b418..278f5ea9d 100644 --- a/events/dlc/tgp/tgp_commission_book.txt +++ b/events/dlc/tgp/tgp_commission_book.txt @@ -101,6 +101,8 @@ author_book.0001 = { } option = { name = author_book.0001.b #I will let my elder/spouse/other select one + # The name and tooltip both name the influencer, so hide the option when nobody was found + trigger = { exists = scope:trusted_influencer } custom_tooltip = author_book.0001.b.tt scope:trusted_influencer = { add_opinion = { @@ -119,7 +121,7 @@ author_book.0001 = { id = author_book.1000 days = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain lazy = minor_stress_impact_gain lifestyle_poet = minor_stress_impact_loss #offsets penalty a bit @@ -248,7 +250,7 @@ author_book.0004 = { id = author_book.1000 months = 6 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lazy = minor_stress_impact_gain journaller = minor_stress_impact_loss #offsets penalty a bit @@ -376,7 +378,7 @@ author_book.0005 = { id = author_book.1000 years = 1 } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain lazy = minor_stress_impact_gain journaller = minor_stress_impact_loss #offsets penalty a bit @@ -576,7 +578,7 @@ author_book.1000 = { generate_ci_poem_title_effect = yes #We need a title } create_artifact = { - name = ci_poem_name + name = TODO #This is replaced below type = miscellaneous creator = root description = TODO #This is replaced below @@ -766,6 +768,7 @@ author_book.1000 = { } #Now we set the description: scope:newly_created_artifact = { + set_artifact_name = ci_poem_name set_artifact_description = ci_poem_description_full #And now we give modifiers: switch = { diff --git a/events/dlc/tgp/tgp_dynastic_cycle_events.txt b/events/dlc/tgp/tgp_dynastic_cycle_events.txt index 560f3cc17..be361ffd5 100644 --- a/events/dlc/tgp/tgp_dynastic_cycle_events.txt +++ b/events/dlc/tgp/tgp_dynastic_cycle_events.txt @@ -44,6 +44,7 @@ tgp_dynastic_cycle.0001 = { tgp_dynastic_cycle.0051 = { # BOOKMARK EVENT type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0051.t desc = { first_valid = { @@ -218,6 +219,7 @@ tgp_dynastic_cycle.0051 = { # BOOKMARK EVENT tgp_dynastic_cycle.0052 = { # JOINED MOVEMENT - Unaligned type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0052.t desc = { desc = tgp_dynastic_cycle.0052.desc.intro @@ -307,6 +309,7 @@ tgp_dynastic_cycle.0052 = { # JOINED MOVEMENT - Unaligned tgp_dynastic_cycle.0053 = { # JOINED MOVEMENT - Expansion type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0053.t desc = { desc = tgp_dynastic_cycle.0053.desc.intro @@ -396,6 +399,7 @@ tgp_dynastic_cycle.0053 = { # JOINED MOVEMENT - Expansion tgp_dynastic_cycle.0054 = { # JOINED MOVEMENT - Advancement type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0054.t desc = { desc = tgp_dynastic_cycle.0054.desc.intro @@ -485,6 +489,7 @@ tgp_dynastic_cycle.0054 = { # JOINED MOVEMENT - Advancement tgp_dynastic_cycle.0055 = { # JOINED MOVEMENT - Pro-Hegemon type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0055.t desc = { desc = tgp_dynastic_cycle.0055.desc.intro @@ -575,6 +580,7 @@ tgp_dynastic_cycle.0055 = { # JOINED MOVEMENT - Pro-Hegemon tgp_dynastic_cycle.0056 = { # JOINED MOVEMENT - Conservative type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0056.t desc = { desc = tgp_dynastic_cycle.0056.desc.intro @@ -666,6 +672,7 @@ tgp_dynastic_cycle.0056 = { # JOINED MOVEMENT - Conservative tgp_dynastic_cycle.0061 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0061.t desc = tgp_dynastic_cycle.0061.desc theme = dynastic_cycle @@ -725,6 +732,7 @@ tgp_dynastic_cycle.0061 = { tgp_dynastic_cycle.0062 = { # Notification for relevant people type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0061.t desc = { first_valid = { @@ -802,6 +810,7 @@ tgp_dynastic_cycle.0062 = { # Notification for relevant people name = tgp_dynastic_cycle.0062.b clicksound = "event:/DLC/EP4/MX/CueTracks/mx_mtgp_dynastic_cycle_end" save_scope_as = actor + save_scope_as = puppet_or_actor title:h_china.holder = { save_scope_as = recipient } @@ -818,6 +827,7 @@ tgp_dynastic_cycle.0062 = { # Notification for relevant people tgp_dynastic_cycle.0071 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0071.t desc = tgp_dynastic_cycle.0071.desc theme = dynastic_cycle @@ -1041,6 +1051,7 @@ tgp_dynastic_cycle.0071 = { tgp_dynastic_cycle.0072 = { # Notification for relevant people type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0071.t desc = { triggered_desc = { @@ -1143,6 +1154,7 @@ tgp_dynastic_cycle.0072 = { # Notification for relevant people name = tgp_dynastic_cycle.0072.b clicksound = "event:/DLC/EP4/MX/CueTracks/mx_mtgp_dynastic_cycle_start" save_scope_as = actor + save_scope_as = puppet_or_actor title:h_china.holder = { save_scope_as = recipient } @@ -1159,6 +1171,7 @@ tgp_dynastic_cycle.0072 = { # Notification for relevant people tgp_dynastic_cycle.0081 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0081.t desc = tgp_dynastic_cycle.0081.desc theme = dynastic_cycle @@ -1229,6 +1242,7 @@ tgp_dynastic_cycle.0081 = { tgp_dynastic_cycle.0082 = { # Notification for relevant people type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0081.t desc = { first_valid = { @@ -1394,6 +1408,7 @@ tgp_dynastic_cycle.0082 = { # Notification for relevant people tgp_dynastic_cycle.0091 = { type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0091.t desc = tgp_dynastic_cycle.0091.desc theme = dynastic_cycle @@ -1436,6 +1451,7 @@ tgp_dynastic_cycle.0091 = { tgp_dynastic_cycle.0092 = { # Notification for relevant people type = character_event window = fullscreen_event + queue_icon = "gfx/interface/icons/situation_types/dynastic_cycle.dds" title = tgp_dynastic_cycle.0091.t desc = { first_valid = { @@ -1699,8 +1715,8 @@ tgp_dynastic_cycle.9000 = { current_date >= 960.1.1 } set_global_variable = { - name = chinese_fashion_change - value = 1 + name = chinese_fashion + value = flag:song } } remove_character_flag = received_chinese_hegemonic_ascension_event @@ -2280,8 +2296,8 @@ tgp_dynastic_cycle.9001 = { current_date >= 960.1.1 } set_global_variable = { - name = chinese_fashion_change - value = 1 + name = chinese_fashion + value = flag:song } } remove_character_flag = received_chinese_hegemonic_ascension_event diff --git a/events/dlc/tgp/tgp_dynastic_cycle_flavor_events.txt b/events/dlc/tgp/tgp_dynastic_cycle_flavor_events.txt index 06ee1720e..8e67378ba 100644 --- a/events/dlc/tgp/tgp_dynastic_cycle_flavor_events.txt +++ b/events/dlc/tgp/tgp_dynastic_cycle_flavor_events.txt @@ -1,954 +1,956 @@ -#namespace = tgp_dynastic_cycle_events -# -#################################################################################### -### By Veronica Pazos -### tgp_dynastic_cycle_events.0001 - Tilt the scales towards Advancement -### tgp_dynastic_cycle_events.0010 - Disciple has a mental breakdown in Instability -### tgp_dynastic_cycle_events.0020 - Rowdy peasants steal food during Instability -### tgp_dynastic_cycle_events.0030 - In this time of Expansion you should become a Military Governor -### tgp_dynastic_cycle_events.0040 - Steward is interested in the Silk Road -### tgp_dynastic_cycle_events.0050 - Debate the Favoured Movement and get ahead of them -#################################################################################### -# -## Tilt the scales towards Advancement -#scripted_trigger tgp_dynastic_cycle_events_0001_valid_servant = { -# is_available_ai_adult = yes -# is_lowborn = yes -# has_any_court_position = no -# is_councillor = no -#} -# -#tgp_dynastic_cycle_events.0001 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0001.t -# desc = tgp_dynastic_cycle_events.0001.desc -# left_portrait = { -# character = root -# animation = thinking -# camera = camera_event_right_fully_away -# } -# right_portrait = { -# character = scope:servant -# animation = serving_tray -# camera = camera_event_right_to_the_right -# } -# theme = dynastic_cycle -# override_background = { reference = garden } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# NOT = { -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_stability_advancement -# } -# } -# } -# -# immediate = { -# situation:dynastic_cycle = { save_scope_as = my_situation } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# random_courtier = { -# limit = { tgp_dynastic_cycle_events_0001_valid_servant = yes } -# save_scope_as = servant -# } -# if = { -# limit = { NOT = { exists = scope:servant } } -# hidden_effect_new_object = { -# create_character = { -# template = servant_character -# dynasty = none -# location = root.location -# culture = root.location.culture -# faith = root.location.faith -# gender_female_chance = 50 -# save_scope_as = servant -# } -# add_courtier = scope:servant -# scope:servant = { assign_quirk_effect = yes } -# } -# } -# if = { -# limit = { -# any_relation = { -# type = potential_friend -# is_available_ai_adult = yes -# count >= 1 -# } -# } -# random_relation = { -# type = potential_friend -# limit = { is_available_ai_adult = yes } -# save_scope_as = potential_friend -# } -# } -# else_if = { -# limit = { -# any_relation = { -# type = friend -# is_available_ai_adult = yes -# count >= 1 -# } -# } -# random_relation = { -# type = friend -# limit = { is_available_ai_adult = yes } -# save_scope_as = friend -# } -# } -# } -# -# option = { # -# name = tgp_dynastic_cycle_events.0001.aa -# trigger = { -# top_participant_group:dynastic_cycle ?= { -# participant_group_type = advancement_movement -# } -# } -# add_internal_flag = special -# reason = movement -# custom_tooltip = event_increase_movement_power_minor_effect_tooltip -# scope:my_movement = { -# event_change_movement_power_effect = { -# VALUE = event_increase_movement_power_minor_value -# } -# } -# situation:dynastic_cycle ?= { -# if = { -# limit = { -# situation_top_has_catalyst = catalyst_event_advancement_medium_progress -# } -# trigger_situation_catalyst = { -# catalyst = catalyst_event_advancement_medium_progress -# character = root -# } -# } -# } -# stress_impact = { -# ambitious = medium_stress_impact_loss -# content = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = ambitious -# factor = 2 -# } -# modifier = { -# has_trait = content -# factor = 0 -# } -# } -# } -# -# option = { # Focus on friendos -# name = tgp_dynastic_cycle_events.0001.a -# if = { -# limit = { -# exists = scope:potential_friend -# } -# custom_tooltip = tgp_dynastic_cycle_events.0001.a.potential_friend -# set_relation_friend = { -# target = scope:potential_friend -# reason = friend_together_in_preparation -# } -# } -# else_if = { -# limit = { -# exists = scope:friend -# } -# custom_tooltip = tgp_dynastic_cycle_events.0001.a.potential_friend -# change_influence = major_influence_gain -# scope:friend = { change_influence = major_influence_gain } -# } -# else = { change_influence = medium_influence_gain } -# stress_impact = { -# gregarious = medium_stress_impact_loss -# callous = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = gregarious -# factor = 2 -# } -# modifier = { -# has_trait = callous -# factor = 0 -# } -# } -# } -# -# option = { # Why wait? -# name = tgp_dynastic_cycle_events.0001.b -# add_character_modifier = { -# modifier = tgp_advancement_focus_modifier -# years = 20 -# } -# stress_impact = { -# impatient = medium_stress_impact_loss -# patient = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = deceitful -# factor = 2 -# } -# modifier = { -# has_trait = honest -# factor = 0 -# } -# } -# } -# -# option = { # We must focus on NOW -# name = tgp_dynastic_cycle_events.0001.c -# stress_impact = { -# base = medium_stress_impact_loss -# } -# ai_chance = { -# base = 100 -# } -# } -#} -# -## Disciple has a mental breakdown in Instability -#scripted_trigger tgp_dynastic_cycle_events_0010_valid_disciple = { -# is_available_ai_adult = yes -# has_personality_dominant_trigger = no -# has_a_stress_coping_trait_trigger = no -#} -# -#tgp_dynastic_cycle_events.0010 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0010.t -# desc = tgp_dynastic_cycle_events.0010.desc -# left_portrait = { -# character = root -# triggered_animation = { -# trigger = { -# has_personality_malicious_trigger = yes -# } -# animation = dismissal -# } -# animation = worry -# } -# right_portrait = { -# character = scope:disciple -# animation = stress -# } -# theme = dynastic_cycle -# override_background = { reference = relaxing_room } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_instability -# } -# any_relation = { -# type = disciple -# tgp_dynastic_cycle_events_0010_valid_disciple = yes -# } -# } -# -# immediate = { -# situation:dynastic_cycle = { save_scope_as = my_situation } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# random_relation = { -# type = disciple -# limit = { tgp_dynastic_cycle_events_0010_valid_disciple = yes } -# weight = { -# base = 1 -# modifier = { -# has_personality_emotional_trigger = yes -# add = 10 -# } -# modifier = { -# age <= 35 -# add = 5 -# } -# } -# save_scope_as = disciple -# } -# random_list = { -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:drunkard -# } -# } -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:flagellant -# } -# } -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:contrite -# } -# } -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:irritable -# } -# } -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:rakish -# } -# } -# 1 = { -# set_variable = { -# name = stress_trait -# value = flag:hashishiyah -# } -# } -# } -# } -# -# option = { # You gotta straighten up -# name = tgp_dynastic_cycle_events.0010.a -# switch = { -# trigger = var:stress_trait -# flag:drunkard = { -# scope:disciple = { add_trait = drunkard } -# } -# flag:flagellant = { -# scope:disciple = { add_trait = flagellant } -# } -# flag:contrite = { -# scope:disciple = { add_trait = contrite } -# } -# flag:rakish = { -# scope:disciple = { add_trait = rakish } -# } -# flag:hashishiyah = { -# scope:disciple = { add_trait = hashishiyah } -# } -# } -# scope:disciple = { add_stress = major_stress_impact_gain } -# change_influence = medium_influence_gain -# stress_impact = { -# callous = medium_stress_impact_loss -# compassionate = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = callous -# factor = 2 -# } -# modifier = { -# has_trait = compassionate -# factor = 0 -# } -# } -# } -# -# option = { # Comfort them -# name = tgp_dynastic_cycle_events.0010.b -# if = { -# limit = { -# can_add_hook = { -# type = favor_hook -# target = scope:disciple -# } -# } -# add_hook = { -# type = favor_hook -# target = scope:disciple -# } -# } -# scope:disciple = { add_stress = medium_stress_impact_loss } -# stress_impact = { -# compassionate = major_stress_impact_loss -# callous = major_stress_impact_gain -# sadistic = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# OR = { -# has_trait = callous -# has_trait = sadistic -# } -# factor = 0 -# } -# modifier = { -# has_trait = compassionate -# factor = 2 -# } -# } -# } -# -# option = { # Instability is actually good -# name = tgp_dynastic_cycle_events.0010.c -# gain_appropriate_lifestyle_medium_xp_effect = yes -# scope:disciple = { -# gain_appropriate_lifestyle_medium_xp_effect = yes -# add_stress = medium_stress_impact_gain -# } -# stress_impact = { -# content = medium_stress_impact_loss -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = content -# factor = 2 -# } -# } -# } -#} -# -## Rowdy peasants steal food during instability -#tgp_dynastic_cycle_events.0020 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0020.t -# desc = tgp_dynastic_cycle_events.0020.desc -# left_portrait = { -# character = root -# animation = japanese_war_fan -# camera = camera_event_very_left -# } -# right_portrait = { -# character = scope:marshal -# animation = relaxed_spear -# } -# theme = dynastic_cycle -# override_background = { reference = throne_room } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_instability -# } -# any_held_county = { -# county_control >= low_county_control -# } -# } -# -# immediate = { -# situation:dynastic_cycle = { save_scope_as = my_situation } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# if = { -# limit = { -# exists = cp:councillor_marshal -# cp:councillor_marshal = { is_available_healthy_ai_adult = yes } -# } -# cp:councillor_marshal = { save_scope_as = marshal } -# } -# else_if = { -# limit = { -# any_knight = { is_available_healthy_ai_adult = yes } -# } -# ordered_knight = { -# limit = { is_available_healthy_ai_adult = yes } -# order_by = martial -# save_scope_as = marshal -# } -# } -# else = { -# hidden_effect_new_object = { -# create_character = { -# template = knight -# dynasty = none -# location = root.location -# culture = root.location.culture -# faith = root.location.faith -# gender_female_chance = root_soldier_female_chance -# save_scope_as = marshal -# } -# } -# } -# scope:marshal = { -# assign_quirk_effect = yes -# add_character_flag = need_military_outfit -# hidden_effect = { -# if = { -# limit = { -# NOR = { -# is_courtier_of = root -# is_vassal_of = root -# } -# -# } -# root = { add_courtier = prev } -# } -# } -# } -# random_held_county = { -# limit = { county_control >= low_county_control } -# change_county_control = major_county_control_loss -# save_scope_as = peasant_county -# } -# } -# -# option = { # Execute them -# name = tgp_dynastic_cycle_events.0020.a -# trigger = { -# has_focus = intrigue_intimidation_focus -# } -# reason = lifestyle_focus -# add_internal_flag = special -# add_dread = major_dread_gain -# scope:peasant_county = { -# add_county_modifier = { -# modifier = tgp_executed_peasants_county_modifier -# years = 10 -# } -# change_county_control = medium_county_control_gain -# } -# stress_impact = { -# callous = medium_stress_impact_loss -# compassionate = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = callous -# factor = 2 -# } -# modifier = { -# has_trait = compassionate -# factor = 0 -# } -# } -# } -# -# option = { # Pay money to make Increase County Control better -# name = tgp_dynastic_cycle_events.0020.b -# pay_treasury_or_gold = { -# target = scope:marshal -# value = major_treasury_or_gold_value -# } -# scope:peasant_county = { change_county_control = medium_county_control_gain } -# stress_impact = { -# greedy = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# OR = { -# has_trait = greedy -# treasury_or_gold <= massive_treasury_or_gold_value -# } -# factor = 0 -# } -# } -# } -# -# option = { # What can you do -# name = tgp_dynastic_cycle_events.0020.c -# stress_impact = { -# lazy = medium_stress_impact_loss -# diligent = medium_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = lazy -# factor = 2 -# } -# modifier = { -# has_trait = diligent -# factor = 0 -# } -# } -# } -#} -# -## In this time of Expansion you should become a Military Governor -#tgp_dynastic_cycle_events.0030 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0030.t -# desc = tgp_dynastic_cycle_events.0030.desc -# left_portrait = { -# character = root -# animation = frontend_center_idle -# camera = camera_event_very_left -# } -# right_portrait = { -# character = scope:marshal -# animation = celebrate_spear -# } -# theme = dynastic_cycle -# override_background = { reference = courtyard } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_stability_expansion -# } -# NOT = { has_trait_with_flag = military_province } # You are not a Military Governor -# } -# -# immediate = { -# situation:dynastic_cycle = { save_scope_as = my_situation } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# assign_quirk_effect = yes -# if = { -# limit = { -# exists = cp:councillor_marshal -# cp:councillor_marshal = { is_available_healthy_ai_adult = yes } -# } -# cp:councillor_marshal = { save_scope_as = marshal } -# } -# else_if = { -# limit = { -# any_knight = { is_available_healthy_ai_adult = yes } -# } -# ordered_knight = { -# limit = { is_available_healthy_ai_adult = yes } -# order_by = martial -# save_scope_as = marshal -# } -# } -# else = { -# hidden_effect_new_object = { -# create_character = { -# template = knight -# dynasty = none -# location = root.location -# culture = root.location.culture -# faith = root.location.faith -# gender_female_chance = root_soldier_female_chance -# save_scope_as = marshal -# } -# } -# } -# scope:marshal = { -# assign_quirk_effect = yes -# add_character_flag = need_military_outfit -# hidden_effect = { -# if = { -# limit = { NOT = { is_courtier_of = root } } -# root = { add_courtier = prev } -# } -# } -# } -# } -# -# option = { # Let's do it!!! -# name = tgp_dynastic_cycle_events.0030.a -# custom_tooltip = { -# text = change_to_military_career_desc -# set_variable = { -# name = appointment_trait_override -# value = trait:education_martial_1 -# } -# } -# add_martial_lifestyle_perk_points = 1 -# add_martial_lifestyle_xp = massive_lifestyle_xp -# stress_impact = { -# base = major_stress_impact_gain -# fickle = major_stress_impact_loss -# arbitrary = major_stress_impact_loss -# } -# ai_chance = { -# base = 100 -# modifier = { -# OR = { -# has_trait = fickle -# has_trait = arbitrary -# } -# factor = 2 -# } -# } -# } -# -# option = { # Thank you but no -# name = tgp_dynastic_cycle_events.0030.b -# custom_tooltip = { -# text = tgp_movement_events.0001.c.tt -# give_random_commander_trait_effect = yes -# } -# stress_impact = { -# diligent = major_stress_impact_loss -# lazy = major_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = lazy -# factor = 0 -# } -# modifier = { -# has_trait = diligent -# factor = 0 -# } -# } -# } -# -# option = { # I am good thanks -# name = tgp_dynastic_cycle_events.0030.c -# change_merit = medium_merit_gain -# stress_impact = { -# content = medium_stress_impact_loss -# lazy = medium_stress_impact_loss -# fickle = medium_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# OR = { -# has_trait = content -# has_trait = lazy -# } -# factor = 2 -# } -# modifier = { -# has_trait = fickle -# factor = 0 -# } -# } -# } -#} -# -## Steward is interested in the Silk Road -#tgp_dynastic_cycle_events.0040 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0040.t -# desc = tgp_dynastic_cycle_events.0040.desc -# left_portrait = { -# character = root -# animation = interested -# } -# right_portrait = { -# character = scope:steward -# animation = steward -# } -# theme = dynastic_cycle -# override_background = { reference = study } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# exists = cp:councillor_steward -# exists = situation:dynastic_cycle -# exists = situation:silk_road_situation -# culture = { culture_has_any_fascination = yes } -# } -# -# weight_multiplier = { -# base = 0.5 -# modifier = { -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_stability_advancement -# } -# add = 1.5 -# } -# modifier = { -# is_ai = yes -# factor = 0.2 -# } -# } -# -# immediate = { -# situation:dynastic_cycle = { save_scope_as = my_situation } -# situation:silk_road_situation = { save_scope_as = silk_road_situation } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# assign_quirk_effect = yes -# cp:councillor_steward = { -# assign_quirk_effect = yes -# save_scope_as = steward -# } -# } -# -# option = { # Special option if it's Advancement phase -# name = tgp_dynastic_cycle_events.0040.a -# trigger = { -# situation:dynastic_cycle ?= { -# situation_current_phase = situation_dynastic_cycle_phase_stability_advancement -# } -# } -# add_internal_flag = special -# reason = advancement_phase -# pay_treasury_or_gold = { -# target = scope:steward -# value = medium_treasury_or_gold_value -# } -# add_stewardship_lifestyle_xp = minor_lifestyle_xp -# add_character_modifier = { -# modifier = tgp_silk_road_advancement_modifier -# years = 15 -# } -# stress_impact = { -# greedy = medium_stress_impact_loss -# } -# ai_chance = { -# base = 50 -# modifier = { -# OR = { -# has_trait = greedy -# has_lifestyle = stewardship_lifestyle -# } -# factor = 2 -# } -# } -# } -# -# option = { # Invest! -# name = tgp_dynastic_cycle_events.0040.b -# pay_treasury_or_gold = { -# target = scope:steward -# value = medium_treasury_or_gold_value -# } -# culture = { add_fascination_progress = 2.5 } -# stress_impact = { -# avaricious = medium_stress_impact_loss -# } -# ai_chance = { -# base = 50 -# modifier = { -# has_trait = greedy -# treasury_or_gold <= major_treasury_or_gold_value -# factor = 0 -# } -# } -# } -# -# option = { # I am good thanks -# name = tgp_dynastic_cycle_events.0040.c -# -# stress_impact = { -# avaricious = medium_stress_impact_gain -# } -# ai_chance = { -# base = 200 -# modifier = { -# has_trait = greedy -# factor = 2 -# } -# modifier = { -# has_trait = avaricious -# factor = 0.5 -# } -# } -# } -#} -# -## Debate the Favoured Movement and get ahead of them -#tgp_dynastic_cycle_events.0050 = { -# type = character_event -# title = tgp_dynastic_cycle_events.0050.t -# desc = tgp_dynastic_cycle_events.0050.desc -# left_portrait = { -# character = root -# animation = disapproval -# } -# theme = dynastic_cycle -# override_background = { reference = study } -# cooldown = { years = 10 } -# -# trigger = { -# is_available_adult = yes -# has_tgp_dlc_trigger = yes -# government_has_flag = government_is_celestial -# is_any_movement_member_not_undecided = yes # You are part of a Movement -# situation:dynastic_cycle ?= { # You are not the Favoured Movement -# any_participant_group = { -# exists = var:movement_favored -# NOT = { participant_group_has_character = root } -# } -# } -# NOT = { has_variable = tgp_debate_discount_var } -# } -# -# weight_multiplier = { -# base = 1 -# modifier = { -# is_any_movement_leader = yes -# add = 1 -# } -# } -# -# immediate = { -# situation:dynastic_cycle = { -# save_scope_as = my_situation -# random_participant_group = { -# limit = { -# has_variable = movement_favored -# } -# save_scope_as = favored_movement -# } -# } -# top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } -# top_liege = { save_scope_as = top_liege } -# } -# -# option = { # Get discount to Debate -# name = tgp_dynastic_cycle_events.0050.a -# custom_tooltip = { -# text = tgp_debate_discount_var_tt -# set_variable = { -# name = tgp_debate_discount_var -# years = 5 -# } -# } -# stress_impact = { -# greedy = medium_stress_impact_loss -# } -# ai_chance = { -# base = 50 -# modifier = { -# is_any_movement_leader = yes -# add = 50 -# } -# } -# } -# -# option = { # Just get some Movement Power -# name = tgp_dynastic_cycle_events.0050.b -# custom_tooltip = event_increase_movement_power_medium_effect_tooltip -# scope:my_movement = { -# event_change_movement_power_effect = { -# VALUE = event_increase_movement_power_medium_value -# } -# } -# stress_impact = { -# arrogant = medium_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = arrogant -# factor = 0 -# } -# } -# } -# -# option = { # Focus on yourself -# name = tgp_dynastic_cycle_events.0050.c -# change_influence = medium_influence_gain -# stress_impact = { -# humble = medium_stress_impact_gain -# } -# ai_chance = { -# base = 100 -# modifier = { -# has_trait = humble -# factor = 0 -# } -# } -# } -#} -# \ No newline at end of file +namespace = tgp_dynastic_cycle_events + +################################################################################### +## By Veronica Pazos +## tgp_dynastic_cycle_events.0001 - Tilt the scales towards Advancement +## tgp_dynastic_cycle_events.0010 - Disciple has a mental breakdown in Instability +## tgp_dynastic_cycle_events.0020 - Rowdy peasants steal food during Instability +## tgp_dynastic_cycle_events.0030 - In this time of Expansion you should become a Military Governor +## tgp_dynastic_cycle_events.0040 - Steward is interested in the Silk Road +## tgp_dynastic_cycle_events.0050 - Debate the Favoured Movement and get ahead of them +################################################################################### + +# Tilt the scales towards Advancement +scripted_trigger tgp_dynastic_cycle_events_0001_valid_servant = { + is_available_ai_adult = yes + is_lowborn = yes + has_any_court_position = no + is_councillor = no +} + +tgp_dynastic_cycle_events.0001 = { + type = character_event + title = tgp_dynastic_cycle_events.0001.t + desc = tgp_dynastic_cycle_events.0001.desc + left_portrait = { + character = root + animation = thinking + camera = camera_event_right_fully_away + } + right_portrait = { + character = scope:servant + animation = serving_tray + camera = camera_event_right_to_the_right + } + theme = dynastic_cycle + override_background = { reference = garden } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + NOT = { + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_stability_advancement + } + } + } + + immediate = { + situation:dynastic_cycle = { save_scope_as = my_situation } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + random_courtier = { + limit = { tgp_dynastic_cycle_events_0001_valid_servant = yes } + save_scope_as = servant + } + if = { + limit = { NOT = { exists = scope:servant } } + hidden_effect_new_object = { + create_character = { + template = servant_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 = servant + } + add_courtier = scope:servant + scope:servant = { assign_quirk_effect = yes } + } + } + if = { + limit = { + any_relation = { + type = potential_friend + is_available_ai_adult = yes + count >= 1 + } + } + random_relation = { + type = potential_friend + limit = { is_available_ai_adult = yes } + save_scope_as = potential_friend + } + } + else_if = { + limit = { + any_relation = { + type = friend + is_available_ai_adult = yes + count >= 1 + } + } + random_relation = { + type = friend + limit = { is_available_ai_adult = yes } + save_scope_as = friend + } + } + } + + option = { # + name = tgp_dynastic_cycle_events.0001.aa + trigger = { + top_participant_group:dynastic_cycle ?= { + participant_group_type = advancement_movement + } + } + add_internal_flag = special + reason = movement + custom_tooltip = event_increase_movement_power_minor_effect_tooltip + scope:my_movement = { + event_change_movement_power_effect = { + VALUE = event_increase_movement_power_minor_value + } + } + situation:dynastic_cycle ?= { + if = { + limit = { + situation_top_has_catalyst = catalyst_event_advancement_medium_progress + } + trigger_situation_catalyst = { + catalyst = catalyst_event_advancement_medium_progress + character = root + } + } + } + stress_and_fulfillment_impact = { + ambitious = medium_stress_impact_loss + content = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = ambitious + factor = 2 + } + modifier = { + has_trait = content + factor = 0 + } + } + } + + option = { # Focus on friendos + name = tgp_dynastic_cycle_events.0001.a + if = { + limit = { + exists = scope:potential_friend + } + custom_tooltip = tgp_dynastic_cycle_events.0001.a.potential_friend + set_relation_friend = { + target = scope:potential_friend + reason = friend_together_in_preparation + } + } + else_if = { + limit = { + exists = scope:friend + } + custom_tooltip = tgp_dynastic_cycle_events.0001.a.potential_friend + change_influence = major_influence_gain + scope:friend = { change_influence = major_influence_gain } + } + else = { change_influence = medium_influence_gain } + stress_and_fulfillment_impact = { + gregarious = medium_stress_impact_loss + callous = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = gregarious + factor = 2 + } + modifier = { + has_trait = callous + factor = 0 + } + } + } + + option = { # Why wait? + name = tgp_dynastic_cycle_events.0001.b + add_character_modifier = { + modifier = tgp_advancement_focus_modifier + years = 20 + } + stress_and_fulfillment_impact = { + impatient = medium_stress_impact_loss + patient = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = deceitful + factor = 2 + } + modifier = { + has_trait = honest + factor = 0 + } + } + } + + option = { # We must focus on NOW + name = tgp_dynastic_cycle_events.0001.c + stress_and_fulfillment_impact = { + base = medium_stress_impact_loss + } + ai_chance = { + base = 100 + } + } +} + +# Disciple has a mental breakdown in Instability +scripted_trigger tgp_dynastic_cycle_events_0010_valid_disciple = { + is_available_ai_adult = yes + has_personality_dominant_trigger = no + has_a_stress_coping_trait_trigger = no +} + +tgp_dynastic_cycle_events.0010 = { + type = character_event + title = tgp_dynastic_cycle_events.0010.t + desc = tgp_dynastic_cycle_events.0010.desc + left_portrait = { + character = root + triggered_animation = { + trigger = { + has_personality_malicious_trigger = yes + } + animation = dismissal + } + animation = worry + } + right_portrait = { + character = scope:disciple + animation = stress + } + theme = dynastic_cycle + override_background = { reference = relaxing_room } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_instability + } + any_relation = { + type = disciple + tgp_dynastic_cycle_events_0010_valid_disciple = yes + } + } + + immediate = { + situation:dynastic_cycle = { save_scope_as = my_situation } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + random_relation = { + type = disciple + limit = { tgp_dynastic_cycle_events_0010_valid_disciple = yes } + weight = { + base = 1 + modifier = { + has_personality_emotional_trigger = yes + add = 10 + } + modifier = { + age <= 35 + add = 5 + } + } + save_scope_as = disciple + } + random_list = { + 1 = { + set_variable = { + name = stress_trait + value = flag:drunkard + } + } + 1 = { + set_variable = { + name = stress_trait + value = flag:flagellant + } + } + 1 = { + set_variable = { + name = stress_trait + value = flag:contrite + } + } + 1 = { + set_variable = { + name = stress_trait + value = flag:irritable + } + } + 1 = { + set_variable = { + name = stress_trait + value = flag:rakish + } + } + 1 = { + set_variable = { + name = stress_trait + value = flag:hashishiyah + } + } + } + } + + option = { # You gotta straighten up + name = tgp_dynastic_cycle_events.0010.a + switch = { + trigger = var:stress_trait + flag:drunkard = { + scope:disciple = { add_trait = drunkard } + } + flag:flagellant = { + scope:disciple = { add_trait = flagellant } + } + flag:contrite = { + scope:disciple = { add_trait = contrite } + } + flag:rakish = { + scope:disciple = { add_trait = rakish } + } + flag:hashishiyah = { + scope:disciple = { add_trait = hashishiyah } + } + } + scope:disciple = { add_stress = major_stress_impact_gain } + change_influence = medium_influence_gain + stress_and_fulfillment_impact = { + callous = medium_stress_impact_loss + compassionate = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = callous + factor = 2 + } + modifier = { + has_trait = compassionate + factor = 0 + } + } + } + + option = { # Comfort them + name = tgp_dynastic_cycle_events.0010.b + if = { + limit = { + can_add_hook = { + type = favor_hook + target = scope:disciple + } + } + add_hook = { + type = favor_hook + target = scope:disciple + } + } + scope:disciple = { add_stress = medium_stress_impact_loss } + stress_and_fulfillment_impact = { + compassionate = major_stress_impact_loss + callous = major_stress_impact_gain + sadistic = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + OR = { + has_trait = callous + has_trait = sadistic + } + factor = 0 + } + modifier = { + has_trait = compassionate + factor = 2 + } + } + } + + option = { # Instability is actually good + name = tgp_dynastic_cycle_events.0010.c + gain_appropriate_lifestyle_medium_xp_effect = yes + scope:disciple = { + gain_appropriate_lifestyle_medium_xp_effect = yes + add_stress = medium_stress_impact_gain + } + stress_and_fulfillment_impact = { + content = medium_stress_impact_loss + } + ai_chance = { + base = 100 + modifier = { + has_trait = content + factor = 2 + } + } + } +} + +# Rowdy peasants steal food during instability +tgp_dynastic_cycle_events.0020 = { + type = character_event + title = tgp_dynastic_cycle_events.0020.t + desc = tgp_dynastic_cycle_events.0020.desc + left_portrait = { + character = root + animation = japanese_war_fan + camera = camera_event_very_left + } + right_portrait = { + character = scope:marshal + animation = relaxed_spear + } + theme = dynastic_cycle + override_background = { reference = throne_room } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_instability + } + any_held_county = { + county_control >= low_county_control + } + } + + immediate = { + situation:dynastic_cycle = { save_scope_as = my_situation } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + if = { + limit = { + exists = cp:councillor_marshal + cp:councillor_marshal = { is_available_healthy_ai_adult = yes } + } + cp:councillor_marshal = { save_scope_as = marshal } + } + else_if = { + limit = { + any_knight = { is_available_healthy_ai_adult = yes } + } + ordered_knight = { + limit = { is_available_healthy_ai_adult = yes } + order_by = martial + save_scope_as = marshal + } + } + else = { + hidden_effect_new_object = { + create_character = { + template = knight + dynasty = none + location = root.location + culture = root.location.culture + faith = root.location.faith + rite = root.location.rite + gender_female_chance = root_soldier_female_chance + save_scope_as = marshal + } + } + } + scope:marshal = { + assign_quirk_effect = yes + add_character_flag = need_military_outfit + hidden_effect = { + if = { + limit = { + NOR = { + is_courtier_of = root + is_vassal_of = root + } + + } + root = { add_courtier = prev } + } + } + } + random_held_county = { + limit = { county_control >= low_county_control } + change_county_control = major_county_control_loss + save_scope_as = peasant_county + } + } + + option = { # Execute them + name = tgp_dynastic_cycle_events.0020.a + trigger = { + has_focus = intrigue_intimidation_focus + } + reason = lifestyle_focus + add_internal_flag = special + add_dread = major_dread_gain + scope:peasant_county = { + add_county_modifier = { + modifier = tgp_executed_peasants_county_modifier + years = 10 + } + change_county_control = medium_county_control_gain + } + stress_and_fulfillment_impact = { + callous = medium_stress_impact_loss + compassionate = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = callous + factor = 2 + } + modifier = { + has_trait = compassionate + factor = 0 + } + } + } + + option = { # Pay money to make Increase County Control better + name = tgp_dynastic_cycle_events.0020.b + pay_treasury_or_gold = { + target = scope:marshal + value = major_treasury_or_gold_value + } + scope:peasant_county = { change_county_control = medium_county_control_gain } + stress_and_fulfillment_impact = { + greedy = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + OR = { + has_trait = greedy + treasury_or_gold <= massive_treasury_or_gold_value + } + factor = 0 + } + } + } + + option = { # What can you do + name = tgp_dynastic_cycle_events.0020.c + stress_and_fulfillment_impact = { + lazy = medium_stress_impact_loss + diligent = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = lazy + factor = 2 + } + modifier = { + has_trait = diligent + factor = 0 + } + } + } +} + +# In this time of Expansion you should become a Military Governor +tgp_dynastic_cycle_events.0030 = { + type = character_event + title = tgp_dynastic_cycle_events.0030.t + desc = tgp_dynastic_cycle_events.0030.desc + left_portrait = { + character = root + animation = frontend_center_idle + camera = camera_event_very_left + } + right_portrait = { + character = scope:marshal + animation = celebrate_spear + } + theme = dynastic_cycle + override_background = { reference = courtyard } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_stability_expansion + } + NOT = { has_trait_with_flag = military_province } # You are not a Military Governor + } + + immediate = { + situation:dynastic_cycle = { save_scope_as = my_situation } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + assign_quirk_effect = yes + if = { + limit = { + exists = cp:councillor_marshal + cp:councillor_marshal = { is_available_healthy_ai_adult = yes } + } + cp:councillor_marshal = { save_scope_as = marshal } + } + else_if = { + limit = { + any_knight = { is_available_healthy_ai_adult = yes } + } + ordered_knight = { + limit = { is_available_healthy_ai_adult = yes } + order_by = martial + save_scope_as = marshal + } + } + else = { + hidden_effect_new_object = { + create_character = { + template = knight + dynasty = none + location = root.location + culture = root.location.culture + faith = root.location.faith + rite = root.location.rite + gender_female_chance = root_soldier_female_chance + save_scope_as = marshal + } + } + } + scope:marshal = { + assign_quirk_effect = yes + add_character_flag = need_military_outfit + hidden_effect = { + if = { + limit = { NOT = { is_courtier_of = root } } + root = { add_courtier = prev } + } + } + } + } + + option = { # Let's do it!!! + name = tgp_dynastic_cycle_events.0030.a + custom_tooltip = { + text = change_to_military_career_desc + set_variable = { + name = appointment_trait_override + value = trait:education_martial_1 + } + } + add_martial_lifestyle_perk_points = 1 + add_martial_lifestyle_xp = massive_lifestyle_xp + stress_and_fulfillment_impact = { + base = major_stress_impact_gain + fickle = major_stress_impact_loss + arbitrary = major_stress_impact_loss + } + ai_chance = { + base = 100 + modifier = { + OR = { + has_trait = fickle + has_trait = arbitrary + } + factor = 2 + } + } + } + + option = { # Thank you but no + name = tgp_dynastic_cycle_events.0030.b + custom_tooltip = { + text = tgp_movement_events.0001.c.tt + give_random_commander_trait_effect = yes + } + stress_and_fulfillment_impact = { + diligent = major_stress_impact_loss + lazy = major_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = lazy + factor = 0 + } + modifier = { + has_trait = diligent + factor = 0 + } + } + } + + option = { # I am good thanks + name = tgp_dynastic_cycle_events.0030.c + change_merit = medium_merit_gain + stress_and_fulfillment_impact = { + content = medium_stress_impact_loss + lazy = medium_stress_impact_loss + fickle = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + OR = { + has_trait = content + has_trait = lazy + } + factor = 2 + } + modifier = { + has_trait = fickle + factor = 0 + } + } + } +} + +# Steward is interested in the Silk Road +tgp_dynastic_cycle_events.0040 = { + type = character_event + title = tgp_dynastic_cycle_events.0040.t + desc = tgp_dynastic_cycle_events.0040.desc + left_portrait = { + character = root + animation = interested + } + right_portrait = { + character = scope:steward + animation = steward + } + theme = dynastic_cycle + override_background = { reference = study } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + exists = cp:councillor_steward + exists = situation:dynastic_cycle + exists = situation:silk_road_situation + culture = { culture_has_any_fascination = yes } + } + + weight_multiplier = { + base = 0.5 + modifier = { + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_stability_advancement + } + add = 1.5 + } + modifier = { + is_ai = yes + factor = 0.2 + } + } + + immediate = { + situation:dynastic_cycle = { save_scope_as = my_situation } + situation:silk_road_situation = { save_scope_as = silk_road_situation } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + assign_quirk_effect = yes + cp:councillor_steward = { + assign_quirk_effect = yes + save_scope_as = steward + } + } + + option = { # Special option if it's Advancement phase + name = tgp_dynastic_cycle_events.0040.a + trigger = { + situation:dynastic_cycle ?= { + situation_current_phase = situation_dynastic_cycle_phase_stability_advancement + } + } + add_internal_flag = special + reason = advancement_phase + pay_treasury_or_gold = { + target = scope:steward + value = medium_treasury_or_gold_value + } + add_stewardship_lifestyle_xp = minor_lifestyle_xp + add_character_modifier = { + modifier = tgp_silk_road_advancement_modifier + years = 15 + } + stress_and_fulfillment_impact = { + greedy = medium_stress_impact_loss + } + ai_chance = { + base = 50 + modifier = { + OR = { + has_trait = greedy + has_lifestyle = stewardship_lifestyle + } + factor = 2 + } + } + } + + option = { # Invest! + name = tgp_dynastic_cycle_events.0040.b + pay_treasury_or_gold = { + target = scope:steward + value = medium_treasury_or_gold_value + } + culture = { add_fascination_progress = 2.5 } + stress_and_fulfillment_impact = { + avaricious = medium_stress_impact_loss + } + ai_chance = { + base = 50 + modifier = { + has_trait = greedy + treasury_or_gold <= major_treasury_or_gold_value + factor = 0 + } + } + } + + option = { # I am good thanks + name = tgp_dynastic_cycle_events.0040.c + + stress_and_fulfillment_impact = { + avaricious = medium_stress_impact_gain + } + ai_chance = { + base = 200 + modifier = { + has_trait = greedy + factor = 2 + } + modifier = { + has_trait = avaricious + factor = 0.5 + } + } + } +} + +# Debate the Favoured Movement and get ahead of them +tgp_dynastic_cycle_events.0050 = { + type = character_event + title = tgp_dynastic_cycle_events.0050.t + desc = tgp_dynastic_cycle_events.0050.desc + left_portrait = { + character = root + animation = disapproval + } + theme = dynastic_cycle + override_background = { reference = study } + cooldown = { years = 10 } + + trigger = { + is_available_adult = yes + has_tgp_dlc_trigger = yes + government_has_flag = government_is_celestial + is_any_movement_member_not_undecided = yes # You are part of a Movement + situation:dynastic_cycle ?= { # You are not the Favoured Movement + any_participant_group = { + exists = var:movement_favored + NOT = { participant_group_has_character = root } + } + } + NOT = { has_variable = tgp_debate_discount_var } + } + + weight_multiplier = { + base = 1 + modifier = { + is_any_movement_leader = yes + add = 1 + } + } + + immediate = { + situation:dynastic_cycle = { + save_scope_as = my_situation + random_participant_group = { + limit = { + has_variable = movement_favored + } + save_scope_as = favored_movement + } + } + top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } + top_liege = { save_scope_as = top_liege } + } + + option = { # Get discount to Debate + name = tgp_dynastic_cycle_events.0050.a + custom_tooltip = { + text = tgp_debate_discount_var_tt + set_variable = { + name = tgp_debate_discount_var + years = 5 + } + } + stress_and_fulfillment_impact = { + greedy = medium_stress_impact_loss + } + ai_chance = { + base = 50 + modifier = { + is_any_movement_leader = yes + add = 50 + } + } + } + + option = { # Just get some Movement Power + name = tgp_dynastic_cycle_events.0050.b + custom_tooltip = event_increase_movement_power_medium_effect_tooltip + scope:my_movement = { + event_change_movement_power_effect = { + VALUE = event_increase_movement_power_medium_value + } + } + stress_and_fulfillment_impact = { + arrogant = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = arrogant + factor = 0 + } + } + } + + option = { # Focus on yourself + name = tgp_dynastic_cycle_events.0050.c + change_influence = medium_influence_gain + stress_and_fulfillment_impact = { + humble = medium_stress_impact_gain + } + ai_chance = { + base = 100 + modifier = { + has_trait = humble + factor = 0 + } + } + } +} diff --git a/events/dlc/tgp/tgp_east_asia_decision_events.txt b/events/dlc/tgp/tgp_east_asia_decision_events.txt index a34cf72c1..10e1090ce 100644 --- a/events/dlc/tgp/tgp_east_asia_decision_events.txt +++ b/events/dlc/tgp/tgp_east_asia_decision_events.txt @@ -330,17 +330,7 @@ tgp_east_asia_decision_events.0030 = { show_as_tooltip = { change_government = clan_government } } show_as_tooltip = { - if = { - limit = { - capital_province = { - NOR = { - has_holding_type = temple_citadel_holding - has_holding_type = castle_holding - } - } - } - capital_province = { set_holding_type = castle_holding } - } + clan_convert_capital_effect = yes change_government = clan_government #Start off crown authorities if = { diff --git a/events/dlc/tgp/tgp_east_asia_interaction_events.txt b/events/dlc/tgp/tgp_east_asia_interaction_events.txt index 1caf78869..466c94f06 100644 --- a/events/dlc/tgp/tgp_east_asia_interaction_events.txt +++ b/events/dlc/tgp/tgp_east_asia_interaction_events.txt @@ -283,7 +283,7 @@ tgp_east_asia_interaction_events.1000 = { change_to_mandala_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_gain } ai_chance = { @@ -374,7 +374,7 @@ tgp_east_asia_interaction_events.1001 = { change_to_mandala_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -476,7 +476,7 @@ tgp_east_asia_interaction_events.1002 = { change_to_mandala_interaction_effect = yes } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = medium_stress_impact_gain } ai_chance = { @@ -649,19 +649,19 @@ scripted_trigger is_root_faith_dominant_gender = { OR = { AND = { is_male = yes - root.faith = { + root.rite = { OR = { - has_doctrine_parameter = male_dominated_law - has_doctrine_parameter = gender_equal_law + rite_has_parameter = male_dominated_law + rite_has_parameter = gender_equal_law } } } AND = { is_female = yes - root.faith = { + root.rite = { OR = { - has_doctrine_parameter = female_dominated_law - has_doctrine_parameter = gender_equal_law + rite_has_parameter = female_dominated_law + rite_has_parameter = gender_equal_law } } } @@ -1085,7 +1085,7 @@ tgp_east_asia_interaction_events.2000 = { limit = { has_execute_reason = scope:recipient } - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_loss compassionate = minor_stress_impact_gain forgiving = medium_stress_impact_gain @@ -1093,7 +1093,7 @@ tgp_east_asia_interaction_events.2000 = { } } else = { - stress_impact = { + stress_and_fulfillment_impact = { sadistic = medium_stress_impact_loss compassionate = major_stress_impact_gain forgiving = medium_stress_impact_gain @@ -1102,5 +1102,12 @@ tgp_east_asia_interaction_events.2000 = { content = minor_stress_impact_gain } } + # Benevolent Governance personal tenet: counted once for the purge, not once per body + if = { + limit = { + has_personal_tenet_flag = tenet_benevolent_governance_clemency_fulfillment + } + change_spiritual_fulfillment = massive_spiritual_fulfillment_loss + } } } diff --git a/events/dlc/tgp/tgp_faction_events.txt b/events/dlc/tgp/tgp_faction_events.txt deleted file mode 100644 index 69c80c0f1..000000000 --- a/events/dlc/tgp/tgp_faction_events.txt +++ /dev/null @@ -1,528 +0,0 @@ -namespace = tgp_faction_events - -scripted_effect faction_demand_japanese_regent_rejected_effect = { - # This effect should always be placed here, _before_ all the other effects in the block. - trigger_event = { on_action = on_faction_demand_rejected } - show_as_tooltip = { - scope:faction = { - faction_start_war = {} - } - } -} - -# Ceremonial Regent Faction Demand -tgp_faction_events.0101 = { - type = letter_event - sender = scope:faction_leader - opening = "FACTION_JAPANESE_REPLACE_REGENT" - desc = { - first_valid = { - triggered_desc = { - trigger = { tgp_has_ceremonial_liege_title_trigger = yes } - desc = "FACTION_JAPANESE_REPLACE_RULER_DESC" - } - desc = "FACTION_JAPANESE_REPLACE_REGENT_DESC" - } - } - - trigger = { - # May have ceased to exist by the time this triggers - exists = scope:faction - } - - immediate = { - # Grab our scope for loc. - save_scope_as = faction_target - } - - option = { - name = "FACTION_DEMAND_ACCEPT" - add_dread = medium_dread_loss - # LEGITIMACY LOSS FOR ACCEPTING FACTION DEMANDS - faction_accept_demand_legitimacy_effect = yes - add_prestige = -500 - faction_demand_regent_transfer_effect = { - NEW_REGENT = scope:faction_leader - REASON = faction_demand - } - add_character_flag = { - flag = recent_replace_regent_faction_war - years = 10 - } - scope:faction_leader = { - trigger_event = { id = tgp_faction_events.0102 } - } - # This effect should always be placed here, _after_ everything except the ai_chance. - trigger_event = { on_action = on_faction_demand_accepted } - ai_chance = { - base = 10 - modifier = { - add = 90 - scope:faction = { faction_power >= 100 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 125 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 150 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 200 } - } - modifier = { - add = 50 - any_character_war = { - is_war_leader = root - is_defender = root - } - } - modifier = { - factor = 0.1 - any_ally = { - NOR = { - target_is_liege_or_above = root - target_is_vassal_or_below = root - } - max_military_strength > root.max_military_strength - } - } - modifier = { - add = 10000 - scope:faction_leader = { is_yes_men_enabled = yes } - } - modifier = { # The Kampaku always fights - factor = 0 - has_title = title:e_japan - government_has_flag = government_is_japan_administrative - } - } - } - - option = { - name = "FACTION_DEMAND_REFUSE" - faction_demand_japanese_regent_rejected_effect = yes - scope:faction_leader = { - trigger_event = { - id = tgp_faction_events.0103 - days = 1 - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 4.0 - } - modifier = { - add = 50 - scope:faction = { faction_power < 80 } - } - modifier = { - add = 100 - scope:faction = { faction_power < 60 } - } - modifier = { - add = 1000 - scope:faction = { faction_power < 40 } - } - modifier = { - add = 10000 - scope:faction_leader = { is_no_men_enabled = yes } - } - } - } -} - -# Japanese Regent Faction Demand Accepted -tgp_faction_events.0102 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_REPLACE_REGENT_ACCEPTED" - desc = "FACTION_JAPANESE_REPLACE_REGENT_ACCEPTED_DESC" - - immediate = { - show_as_tooltip = { - get_title = primary_title - if = { - limit = { - government_has_flag = government_is_japan_administrative - tgp_has_ceremonial_liege_title_trigger = no - NOT = { - has_realm_law = japanese_regency_succession_law - } - } - add_realm_law_skip_effects = japanese_regency_succession_law - } - else = { - add_realm_law_skip_effects = single_heir_succession_law - } - } - } - - option = { - name = "FACTION_DEMAND_ACCEPTED_OPT" - } -} - -# Japanese Regent Faction Demand Refused -tgp_faction_events.0103 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_REPLACE_REGENT_REFUSED" - desc = "FACTION_JAPANESE_REPLACE_REGENT_REFUSED_DESC" - - option = { - name = "FACTION_DEMAND_REFUSED_OPT" - scope:faction = { - faction_start_war = {} - every_faction_member = { - limit = { - NOT = { this = scope:faction.faction_leader } - } - trigger_event = tgp_faction_events.0104 - } - } - } -} - -# Japanese Regent Faction Demand Refused Member Notice -tgp_faction_events.0104 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_REPLACE_REGENT_REFUSED" - desc = "FACTION_JAPANESE_REPLACE_REGENT_REFUSED_DESC" - - option = { name = "FACTION_DEMAND_REFUSED_OPT" } -} - -# Japanese Regent Faction Demand Send Notice -tgp_faction_events.0105 = { - type = letter_event - sender = scope:faction_leader - opening = "FACTION_JAPANESE_REPLACE_REGENT_SEND_DEMAND_NOTIFICATION" - desc = "FACTION_JAPANESE_REPLACE_REGENT_SEND_DEMAND_NOTIFICATION_DESC" - - option = { name = "FACTION_DEMAND_SEND_DEMAND_NOTIFICATION_OPT" } -} - -scripted_effect faction_demand_restore_emperor_rejected_effect = { - # This effect should always be placed here, _before_ all the other effects in the block. - trigger_event = { on_action = on_faction_demand_rejected } - show_as_tooltip = { - scope:faction = { - faction_start_war = {} - } - } -} - -# Restore Emperor Faction Demand -tgp_faction_events.0201 = { - type = letter_event - sender = scope:faction_leader - opening = "FACTION_JAPANESE_RESTORE_EMPEROR" - desc = "FACTION_JAPANESE_RESTORE_EMPEROR_DESC" - - trigger = { - # May have ceased to exist by the time this triggers - exists = scope:faction - } - - immediate = { - # Grab our scope for loc. - save_scope_as = faction_target - } - - option = { - name = "FACTION_DEMAND_ACCEPT" - add_dread = medium_dread_loss - # LEGITIMACY LOSS FOR ACCEPTING FACTION DEMANDS - faction_accept_demand_legitimacy_effect = yes - add_prestige = -500 - scope:faction = { - special_character = { save_scope_as = ceremonial_liege } - faction_leader = { - trigger_event = { id = tgp_faction_events.0202 } - } - if = { - limit = { exists = this } - destroy_faction = yes - } - } - show_as_tooltip = { - restore_ceremonial_liege_faction_combined_effect = yes - } - # This effect should always be placed here, _after_ everything except the ai_chance. - trigger_event = { on_action = on_faction_demand_accepted } - ai_chance = { - base = 10 - modifier = { - add = 90 - scope:faction = { faction_power >= 100 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 125 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 150 } - } - modifier = { - add = 50 - scope:faction = { faction_power >= 200 } - } - modifier = { - add = 50 - any_character_war = { - is_war_leader = root - is_defender = root - } - } - modifier = { - factor = 0.1 - any_ally = { - NOR = { - target_is_liege_or_above = root - target_is_vassal_or_below = root - } - max_military_strength > root.max_military_strength - } - } - modifier = { - add = 10000 - scope:faction_leader = { is_yes_men_enabled = yes } - } - } - } - - option = { - name = { - trigger = { - scope:faction_leader = { tgp_has_ceremonial_liege_title_trigger = no } - } - text = tgp_faction_events.0201.b - } - name = { - trigger = { - scope:faction_leader = { tgp_has_ceremonial_liege_title_trigger = yes } - } - text = tgp_faction_events.0201.b.cm - } - faction_demand_restore_emperor_rejected_effect = yes - scope:faction_leader = { - trigger_event = { - id = tgp_faction_events.0203 - days = 1 - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 4.0 - } - modifier = { - add = 50 - scope:faction = { faction_power < 80 } - } - modifier = { - add = 100 - scope:faction = { faction_power < 60 } - } - modifier = { - add = 1000 - scope:faction = { faction_power < 40 } - } - } - } -} - -# Restore Emperor Faction Demand Accepted -tgp_faction_events.0202 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_RESTORE_EMPEROR_ACCEPTED" - desc = "FACTION_JAPANESE_RESTORE_EMPEROR_ACCEPTED_DESC" - - immediate = { - save_scope_as = faction_restoration - scope:faction.special_character = { save_scope_as = ceremonial_monarch } - if = { - limit = { this = scope:ceremonial_monarch } - restore_ceremonial_liege_faction_combined_effect = yes - } - else = { - scope:faction_target = { save_scope_as = defender } - trigger_event = tgp_faction_events.0206 - } - } - - option = { - name = "FACTION_DEMAND_ACCEPTED_OPT" - } -} - -# Restore Emperor Faction Demand Refused -tgp_faction_events.0203 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_RESTORE_EMPEROR_REFUSED" - desc = "FACTION_JAPANESE_RESTORE_EMPEROR_REFUSED_DESC" - - option = { - name = "FACTION_DEMAND_REFUSED_OPT" - scope:faction = { - faction_start_war = {} - every_faction_member = { - limit = { - NOT = { this = scope:faction.faction_leader } - } - trigger_event = tgp_faction_events.0204 - } - } - } -} - -# Restore Emperor Faction Demand Refused Member Notice -tgp_faction_events.0204 = { - type = letter_event - sender = scope:faction_target - opening = "FACTION_JAPANESE_RESTORE_EMPEROR_REFUSED" - desc = "FACTION_JAPANESE_RESTORE_EMPEROR_REFUSED_DESC" - - option = { name = "FACTION_DEMAND_REFUSED_OPT" } -} - -# Restore Emperor Faction Demand Send Notice -tgp_faction_events.0205 = { - type = letter_event - sender = scope:faction_leader - opening = "FACTION_JAPANESE_RESTORE_EMPEROR_SEND_DEMAND_NOTIFICATION" - desc = "FACTION_JAPANESE_RESTORE_EMPEROR_SEND_DEMAND_NOTIFICATION_DESC" - - option = { name = "FACTION_DEMAND_SEND_DEMAND_NOTIFICATION_OPT" } -} - -# Restore Emperor Faction Aftermath -tgp_faction_events.0206 = { - type = character_event - title = tgp_faction_events.0206.t - desc = tgp_faction_events.0206.desc - override_background = { reference = throne_room_scope } - theme = war - left_portrait = { - character = root - animation = war_over_win - } - right_portrait = { - character = scope:ceremonial_liege - animation = war_over_tie - } - lower_center_portrait = scope:defender - - trigger = { - tgp_realm_has_ceremonial_liege_trigger = yes - tgp_has_ceremonial_liege_title_trigger = no - } - - on_trigger_fail = { - if = { - limit = { tgp_realm_has_ceremonial_liege_trigger = yes } - restore_ceremonial_liege_faction_combined_effect = yes - } - } - - immediate = { - if = { - limit = { NOT = { exists = scope:attacker } } - save_scope_as = attacker - } - tgp_save_realm_ceremonial_liege_effect = yes - scope:ceremonial_liege = { save_scope_as = background_throne_room_scope } - } - - option = { - name = tgp_faction_events.0206.a - restore_ceremonial_liege_faction_combined_effect = yes - add_hook = { - target = scope:ceremonial_liege - type = favor_hook - } - scope:ceremonial_liege = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 50 - } - } - every_in_list = { - list = attackers - limit = { - NOT = { this = root } - } - custom = faction_member_custom - add_opinion = { - target = root - modifier = respect_opinion - opinion = 25 - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - arbitrary = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -0.5 - ai_boldness = -0.5 - ai_honor = 0.5 - } - } - } - - option = { - name = tgp_faction_events.0206.b - faction_demand_regent_transfer_effect = { - NEW_REGENT = scope:attacker - REASON = faction_demand - } - add_tyranny = major_tyranny_gain - reverse_add_opinion = { - target = scope:ceremonial_liege - modifier = angry_opinion - opinion = -50 - } - every_in_list = { - list = attackers - limit = { - NOR = { - this = root - house ?= root.house - } - } - custom = faction_member_custom - add_opinion = { - target = root - modifier = angry_opinion - opinion = -25 - } - } - stress_impact = { - honest = minor_stress_impact_gain - just = minor_stress_impact_gain - content = minor_stress_impact_gain - humble = minor_stress_impact_gain - } - ai_chance = { - base = -50 - ai_value_modifier = { - ai_greed = 0.5 - ai_boldness = 0.5 - ai_honor = -0.5 - } - } - } -} diff --git a/events/dlc/tgp/tgp_genpei_character_events.txt b/events/dlc/tgp/tgp_genpei_character_events.txt deleted file mode 100644 index 1b8fa7d54..000000000 --- a/events/dlc/tgp/tgp_genpei_character_events.txt +++ /dev/null @@ -1,1408 +0,0 @@ -#namespace = tgp_genpei_character -# -#scripted_effect save_genpei_scopes_effect = { -# # Fujiwara -# character:japanese_fujiwara_460 ?= { save_scope_as = tadamichi_fujiwara } # Father of Motofusa -# character:japanese_fujiwara_461 ?= { save_scope_as = motozane_fujiwara } # Brother of Motofusa, last true Kampaku -# character:japanese_fujiwara_497 ?= { save_scope_as = hidehira_fujiwara } # Oshu Fujiwara leader -# character:japanese_fujiwara_511 ?= { save_scope_as = motofusa_fujiwara } # Fujiwara leader -# # Minamoto -# character:japanese_minamoto_seiwa_9 ?= { save_scope_as = yoshitomo_minamoto } # Father of Yoritomo, killed in Heiji rebellion -# character:japanese_minamoto_seiwa_10 ?= { save_scope_as = yoritomo_minamoto } # Kawachi Minamoto leader, first Shogun -# character:japanese_minamoto_seiwa_139 ?= { save_scope_as = yoshitsune_minamoto } # Brother of Yoritomo, famous general -# character:japanese_minamoto_seiwa_207 ?= { save_scope_as = yoshinaka_minamoto } # Yoshinaka, cousin of Yoritomo, and rival -# character:japanese_minamoto_seiwa_205 ?= { save_scope_as = yoshikata_minamoto } # Father of Yoshinaka -# character:japanese_minamoto_seiwa_59 ?= { save_scope_as = yorimasa_minamoto } # Settsu Minamoto leader, first seppuku-er -# # Taira -# character:japanese_taira_kanmu_34 ?= { save_scope_as = kiyomori_taira } # Ise Taira leader -# character:japanese_taira_kanmu_68 ?= { save_scope_as = noriko_taira } # daughter of Kiyomori, wife of Norihito -# # Yamato -# character:japanese_yamato_54 ?= { save_scope_as = norihito_tenno } # Emperor Takakura -# character:japanese_yamato_51 ?= { save_scope_as = go_shirakawa } # Father of Takakura -# title:k_chrysanthemum_throne.holder ?= { save_scope_as = current_emperor } -# #Get old emperor -# scope:new_emperor.primary_title.previous_holder ?= { -# save_scope_as = old_emperor -# } -#} -# -###################################### -## Minamoto Events -###################################### -# -## (Kawachi) Minamoto Yoritomo -# -##Initial Event, explaining the situation -#tgp_genpei_character.1000 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.1000.t -# desc = tgp_genpei_character.1000.desc -# window = big_event_window -# theme = war -# left_portrait = { -# character = root -# animation = anger -# } -# center_portrait = { -# character = scope:yorimasa_minamoto -# animation = war_over_win -# } -# right_portrait = { -# character = scope:yoshinaka_minamoto -# animation = disapproval -# } -# lower_center_portrait = scope:kiyomori_taira -# lower_left_portrait = scope:norihito_tenno -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_scope_as = ruler -# save_genpei_scopes_effect = yes -# } -# #Option A) #Choose to go your own way -# option = { -# name = tgp_genpei_character.1000.a -# custom_tooltip = tgp_genpei_character.1000.a.flavor -# add_martial_lifestyle_xp = medium_lifestyle_xp -# ai_chance = { -# base = 0 -# } -# } -# #Option B) #Try to reconcile with your dynasty, to create a united front -# option = { -# name = tgp_genpei_character.1000.b -# flavor = tgp_genpei_character.1000.b.flavor -# reverse_add_opinion = { -# target = scope:yorimasa_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# reverse_add_opinion = { -# target = scope:yoshinaka_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# house = { -# change_house_relation_effect = { -# HOUSE = scope:yoshinaka_minamoto.house -# VALUE = house_relation_improve_minor_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:yoshinaka_minamoto -# TITLE = scope:dummy_gender -# } -# } -# #Kiyomori players will want to fight Yoritomo, so we need ai to choose this -# ai_chance = { -# base = 100 -# } -# } -#} -# -##After Kiyomori puts his grandson on the throne, a chance to get block leadership -#tgp_genpei_character.1010 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.1010.t -# desc = { -# desc = tgp_genpei_character.1010.desc.intro -# first_valid = { -# #You are bloc leader -# triggered_desc = { -# trigger = { -# house.house_confederation.leading_house.house_head ?= this -# } -# desc = tgp_genpei_character.1010.desc.blocboss -# } -# #You are not bloc leader -# desc = tgp_genpei_character.1010.desc.notblocboss -# } -# } -# window = big_event_window -# theme = war -# left_portrait = { -# character = scope:ruler -# animation = anger -# camera = camera_body -# } -# center_portrait = { -# character = scope:minamoto_ruler -# animation = disapproval -# } -# right_portrait = { -# character = scope:kiyomori_taira -# animation = war_over_win -# } -# lower_center_portrait = scope:yoshinaka_minamoto -# lower_left_portrait = scope:new_emperor -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_scope_as = ruler -# save_genpei_scopes_effect = yes -# -# #find Minamoto -# top_liege ?= { -# random_noble_family = { -# limit = { -# holder = { -# this != root -# dynasty ?= dynasty:japanese_minamoto_seiwa -# house ?= { -# exists = house_confederation -# confederation.leading_house ?= house -# NOT = { house_confederation = root.top_liege.house.house_confederation } -# } -# } -# } -# alternative_limit = { -# holder = { -# this != root -# dynasty ?= dynasty:japanese_minamoto_seiwa -# house ?= { -# exists = house_confederation -# NOT = { house_confederation = root.top_liege.house.house_confederation } -# } -# } -# } -# holder = { -# save_scope_as = minamoto_ruler -# house = { save_scope_as = minamoto_house } -# } -# } -# } -# } -# #Option A) #Rally the bloc, so you can become bloc leader -# option = { -# name = tgp_genpei_character.1010.a -# flavor = tgp_genpei_character.1010.a.flavor -# custom_tooltip = tgp_genpei_character.1010.a.tt -# #Boost relations with other houses in bloc so you can take leadership -# hidden_effect = { -# house.house_confederation = { -# every_confederation_member_house = { -# # Exclude self and leader -# limit = { -# NOR = { -# this = root.house -# this = root.house.house_confederation.leading_house -# } -# } -# #Boost relations with other houses in bloc -# change_house_relation_effect = { -# HOUSE = root.house -# VALUE = house_relation_improve_major_value -# REASON = historical -# CHAR = root -# TARGET_CHAR = house_head -# TITLE = scope:dummy_gender -# } -# } -# } -# } -# #Make things bad with your bloc head since you're going to steal his bloc -# house = { -# change_house_relation_effect = { -# HOUSE = house_confederation.leading_house -# VALUE = house_relation_damage_minor_value -# REASON = conflict -# CHAR = root -# TARGET_CHAR = house_confederation.leading_house.house_head -# TITLE = scope:dummy_gender -# } -# } -# add_martial_lifestyle_xp = medium_lifestyle_xp -# ai_chance = { -# base = 75 -# } -# } -# #Option B) #Try to make nice with Kiyomori -# option = { -# name = tgp_genpei_character.1010.b -# flavor = tgp_genpei_character.1010.b.flavor -# add_character_modifier = { -# modifier = confident_strategist -# years = 5 -# } -# reverse_add_opinion = { -# target = scope:kiyomori_taira -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# house = { -# change_house_relation_effect = { -# HOUSE = scope:kiyomori_taira.house -# VALUE = house_relation_improve_minor_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:kiyomori_taira -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 25 -# } -# } -#} -# -## (Kiso) Minamoto Yoshinaka -# -##Starting event for Yoshinaka that sets the given circumstances/objectives/obstacles/stakes -#tgp_genpei_character.1090 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.1090.t -# desc = tgp_genpei_character.1090.desc -# window = big_event_window -# theme = war -# override_background = bp3_hills_winter -# left_portrait = { -# character = root -# animation = throne_room_one_handed_passive_1 -# camera = camera_body -# } -# right_portrait = { -# character = scope:yoritomo_minamoto -# animation = disapproval -# camera = camera_event_right_pointing_left -# } -# lower_center_portrait = scope:kiyomori_taira -# lower_left_portrait = scope:yoshikata_minamoto -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_scope_as = ruler -# save_genpei_scopes_effect = yes -# } -# #Option A) #Choose to go your own way -# option = { -# name = tgp_genpei_character.1090.a -# flavor = tgp_genpei_character.1090.a.flavor -# add_martial_lifestyle_xp = medium_lifestyle_xp -# ai_chance = { -# base = 75 -# } -# } -# #Option B) #Try to reconcile with your dynasty, to create a united front -# option = { -# name = tgp_genpei_character.1090.b -# reverse_add_opinion = { -# target = scope:yorimasa_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# reverse_add_opinion = { -# target = scope:yoritomo_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# house = { -# change_house_relation_effect = { -# HOUSE = scope:yoritomo_minamoto.house -# VALUE = house_relation_improve_minor_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:yoritomo_minamoto -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 25 -# } -# } -#} -# -##After Kiyomori puts his grandson on the throne, a chance to align with Yoritomo or break up block leadership. -#scripted_effect tgp_yoshinaka_new_house_bloc_effect = { -##Create new bloc and steal members of Yoritomo's bloc -# if = { # LEAVE OLD BLOC IF NECESSARY -# limit = { is_confederation_member = yes } -# house = { -# set_variable = { -# name = bloc_leaving_reason -# value = flag:reason_events -# days = 4 -# } -# tgp_leave_house_bloc_effect = { -# OPINION = flag:yes -# TRUCE = flag:no -# } -# } -# } -# # CREATE NEW BLOC -# house = { -# if = { -# limit = { -# NOT = { exists = house_confederation } -# } -# tgp_create_house_bloc_effect = { TYPE = none } -# } -# } -# #Then steal members from the Yoritomo's bloc (only if they like him, and order by opinion) -# scope:yoritomo_minamoto.house.house_confederation = { -# save_scope_value_as = { -# name = half_of_bloc -# value = { -# value = member_count -# multiply = 0.5 -# } -# } -# -# ordered_confederation_member_house = { -# limit = { -# #exclude self -# NOR = { -# this = root.house -# this = house_confederation.leading_house -# } -# } -# order_by = "house_head.opinion(root)" -# max = scope:half_of_bloc -# #always put this when there is a max or it will be unhappy who knows why -# check_range_bounds = no -# hidden_effect = { -# set_variable = { -# name = bloc_leaving_reason -# value = flag:reason_events -# days = 4 -# } -# # LEAVE OLD BLOC -# tgp_leave_house_bloc_effect = { -# OPINION = flag:no -# TRUCE = flag:yes -# } -# } -# tgp_join_house_bloc_effect = { -# INVITER = root.house -# OPINION = flag:yes -# } -# custom_tooltip = { -# text = join_house_bloc_yoshinaka_tt -# } -# } -# } -#} -#tgp_genpei_character.1095 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.1095.t -# desc = tgp_genpei_character.1095.desc -# window = big_event_window -# theme = war -# override_background = bp3_hills_winter -# left_portrait = { -# character = root -# animation = throne_room_one_handed_passive_1 -# camera = camera_body -# } -# right_portrait = { -# character = scope:yoritomo_minamoto -# animation = disapproval -# camera = camera_event_right_pointing_left -# } -# lower_right_portrait = scope:current_emperor -# lower_center_portrait = scope:kiyomori_taira -# lower_left_portrait = scope:yoshikata_minamoto -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_scope_as = ruler -# save_genpei_scopes_effect = yes -# } -# #Option A) #Go your own way -# option = { -# name = tgp_genpei_character.1095.a -# flavor = tgp_genpei_character.1095.a.flavor -# add_martial_lifestyle_xp = medium_lifestyle_xp -# -# #If you're not the bloc leader, create new bloc and steal members of Yoritomo's bloc -# if = { -# limit = { -# house.house_confederation.leading_house.house_head != root -# } -# #effect to create new bloc and steal members of Yoritomo's bloc -# tgp_yoshinaka_new_house_bloc_effect = yes -# } -# custom_tooltip = tgp_genpei_character.1010.a.tt -# #Boost relations with other houses in bloc so they are happy to roll with your decisions -# hidden_effect = { -# house.house_confederation = { -# every_confederation_member_house = { -# # Exclude self and leader -# limit = { -# NOR = { -# this = root.house -# this = root.house.house_confederation.leading_house -# } -# } -# #Boost relations with other houses in bloc -# change_house_relation_effect = { -# HOUSE = root.house -# VALUE = house_relation_improve_minor_value -# REASON = historical -# CHAR = root -# TARGET_CHAR = house_head -# TITLE = scope:dummy_gender -# } -# } -# } -# } -# -# ai_chance = { -# base = 0 -# } -# } -# #Option B) #Try to reconcile with your dynasty, to create a united front -# option = { -# name = tgp_genpei_character.1095.b -# flavor = tgp_genpei_character.1095.b.flavor -# if = { -# limit = { -# has_relation_rival = scope:yoritomo_minamoto -# } -# remove_relation_rival = scope:yoritomo_minamoto -# } -# reverse_add_opinion = { -# target = scope:yorimasa_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# reverse_add_opinion = { -# target = scope:yoritomo_minamoto -# modifier = attempts_of_a_united_minamoto_clan -# opinion = 50 -# } -# house = { -# change_house_relation_effect = { -# HOUSE = scope:yoritomo_minamoto.house -# VALUE = house_relation_improve_minor_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:yoritomo_minamoto -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 100 -# } -# } -#} -# -## (Kawachi) Minamoto Yoshitsune -# -##Initial Event, explaining the situation -#tgp_genpei_character.1100 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.1100.t -# desc = tgp_genpei_character.1100.desc -# window = big_event_window -# theme = battle -# override_background = { reference = army_camp } -# left_portrait = { -# character = root -# animation = chudan_no_kamae -# } -# center_portrait = { -# character = scope:hidehira_fujiwara -# animation = war_over_tie -# } -# -# lower_left_portrait = scope:yoritomo_minamoto -# lower_center_portrait = scope:yorimasa_minamoto -# lower_right_portrait = scope:kiyomori_taira -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# show_as_tooltip = { #There for context -# set_relation_friend = { reason = friend_generic_history target = scope:hidehira_fujiwara } -# } -# } -# -# option = { #Remain loyal to the Fujiwara Court -# name = tgp_genpei_character.1100.a -# add_trait = loyal -# add_piety = minor_piety_value -# house = { -# change_house_relation_effect = { -# HOUSE = scope:hidehira_fujiwara.house -# VALUE = house_relation_improve_medium_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:hidehira_fujiwara -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 50 -# } -# } -# -# option = { #Be more Minamoto Alligned -# name = tgp_genpei_character.1100.b -# dynasty = { -# add_dynasty_prestige = medium_dynasty_prestige_gain -# dynast = { -# if = { -# limit = { -# is_ai = no -# } -# reverse_add_opinion = { -# target = root -# modifier = stood_with_minamoto_clan -# opinion = 50 -# } -# } -# add_opinion = { -# target = root -# modifier = stood_with_minamoto_clan -# opinion = 50 -# } -# } -# } -# house = { -# change_house_relation_effect = { -# HOUSE = root.dynasty.dynast.house -# VALUE = house_relation_improve_medium_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = root.dynasty.dynast -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 25 -# } -# } -# -# option = { #Go full adventurer; winning duels makes you stronger -# name = tgp_genpei_character.1100.c -# set_variable = { -# name = ushiwakamaru_duels_won -# value = 0 -# } -# add_character_modifier = { -# modifier = tgp_japan_ushiwakamaru -# years = -1 -# } -# give_nickname = nick_ushiwakamaru -# custom_tooltip = stay_duelist_adventurer -# ai_chance = { -# base = 25 -# } -# } -#} -# -################################# -## Taira Clan Events -################################# -# -## Kiyomori Taira -# -##Initial Event, setup up ambitions to put grandson on throne -#tgp_genpei_character.2000 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.2000.t -# desc = tgp_genpei_character.2000.desc -# theme = crown -# override_background = { reference = tgp_asia_throne_room } -# left_portrait = { -# character = root -# animation = personality_bold -# camera = camera_body_right -# } -# center_portrait = { -# character = scope:noriko_taira -# animation = flirtation -# } -# right_portrait = { -# character = scope:norihito_tenno -# animation = holding_hu -# } -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# -# title:k_chrysanthemum_throne.holder ?= { -# save_scope_as = current_emperor -# } -# -# random_courtier = { -# limit = { -# wet_nurse_validity_trigger = { EMPLOYER = scope:current_emperor } -# } -# save_scope_as = wet_nurse -# } -# if = { -# limit = { -# NOT = { -# exists = scope:wet_nurse -# } -# } -# create_character = { -# template = bp2_wet_nurse_template -# location = root.location -# save_scope_as = wet_nurse -# } -# } -# } -# #Option A) Maintain the Status Quo, not upsetting any clans -# option = { -# name = tgp_genpei_character.2000.a -# every_vassal = { -# custom = every_non_taira_vassal -# limit = { -# dynasty != root.dynasty -# } -# add_opinion = { -# target = root -# modifier = respected_status_quo -# opinion = 15 -# } -# } -# stress_impact = { -# ambitious = minor_stress_impact_gain -# brave = minor_stress_impact_gain -# arrogant = minor_stress_impact_gain -# patient = medium_stress_impact_loss -# craven = minor_stress_impact_loss -# } -# ai_chance = { -# base = 25 -# } -# } -# -# #Option B) Slander him -# option = { -# name = tgp_genpei_character.2000.b -# flavor = tgp_genpei_character.2000.b.flavor -# add_intrigue_lifestyle_xp = medium_lifestyle_experience -# add_prestige = minor_prestige_loss -# if = { -# limit = { -# NOT = { -# any_scheme = { -# scheme_type = slander -# scheme_target_character = scope:norihito_tenno -# } -# } -# } -# #If we don't have a scheme, let's scheme with a boost -# start_scheme = { -# type = slander -# target_character = scope:norihito_tenno -# } -# } -# custom_tooltip = { -# text = tgp_japan_yearly_events.1200.b.tt -# random_scheme = { -# limit = { -# scheme_type = slander -# scheme_target_character = scope:norihito_tenno -# } -# add_scheme_modifier = { type = bided_my_time } -# } -# } -# stress_impact = { -# arrogant = minor_stress_impact_gain -# brave = minor_stress_impact_gain -# patient = minor_stress_impact_loss -# vengeful = medium_stress_impact_loss -# ambitious = minor_stress_impact_loss -# } -# ai_chance = { -# base = 75 -# } -# } -# -# #Option B) Get wet nurse for family -# option = { -# name = tgp_genpei_character.2000.c -# flavor = tgp_genpei_character.2000.c.flavor -# trigger = { -# scope:wet_nurse = { -# would_be_valid_for_court_position = { -# employer = scope:norihito_tenno -# court_position = court_physician_court_position -# } -# } -# } -# remove_short_term_gold = minor_gold_value -# #give wetnurse -# court_position_grant_effect = { -# POS = wet_nurse -# CANDIDATE = scope:wet_nurse -# EMPLOYER = scope:norihito_tenno -# } -# scope:norihito_tenno = { -# add_opinion = { -# target = root -# modifier = sent_me_support -# opinion = 15 -# } -# } -# ai_chance = { -# base = 25 -# } -# } -#} -# -##Replacing Current Emperor with a Relative -#tgp_genpei_character.2010 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.2010.t -# desc = tgp_genpei_character.2010.desc -# theme = intrigue -# left_portrait = { -# character = root -# animation = interested -# camera = camera_body_right -# } -# center_portrait = { -# character = scope:previous_emperor -# animation = crying -# } -# right_portrait = { -# character = scope:go_shirakawa -# animation = disapproval -# } -# lower_left_portrait = scope:new_emperor -# lower_center_portrait = scope:fujiwara_ruler -# lower_right_portrait = scope:minamoto_ruler -# -# trigger = { -# has_tgp_dlc_trigger = yes -# this = character:japanese_taira_kanmu_34 -# title:k_chrysanthemum_throne.holder ?= { -# any_child = { -# is_available_child = yes -# trigger_if = { -# limit = { is_male = yes } -# faith_dominant_gender_male_or_equal = yes -# } -# trigger_else = { -# faith_dominant_gender_female_or_equal = yes -# } -# } -# } -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# title:k_chrysanthemum_throne.holder ?= { -# save_scope_as = previous_emperor -# #find new emperor (ideally our grandson) -# ordered_child = { -# limit = { -# is_available_child = yes -# is_close_or_extended_family_of = scope:kiyomori_taira -# OR = { -# AND = { -# faith_dominant_gender_male_or_equal = yes -# is_male = yes -# } -# faith_dominant_gender_female_or_equal = yes -# } -# } -# order_by = age -# save_scope_as = new_emperor -# } -# } -# #find Minamoto -# top_liege = { -# random_noble_family = { -# limit = { -# holder = { -# dynasty ?= dynasty:japanese_minamoto_seiwa -# house ?= { -# exists = house_confederation -# confederation.leading_house ?= house -# NOT = { house_confederation = root.top_liege.house.house_confederation } -# } -# } -# } -# alternative_limit = { -# holder = { -# dynasty ?= dynasty:japanese_minamoto_seiwa -# house ?= { -# exists = house_confederation -# NOT = { house_confederation = root.top_liege.house.house_confederation } -# } -# } -# } -# holder = { -# save_scope_as = minamoto_ruler -# house = { save_scope_as = minamoto_house } -# } -# } -# } -# #find Fujiwara -# random_vassal = { -# limit = { -# is_house_head = yes -# house = house:house_fujiwara_matsudono -# confederation.leading_house ?= house -# } -# alternative_limit = { -# is_house_head = yes -# house = house:house_fujiwara_matsudono -# } -# save_scope_as = fujiwara_ruler -# } -# } -# #Option A) Replace the Emperor - Incur the Wrath of other major powers -# option = { -# name = tgp_genpei_character.2010.a -# #Under no circumstances would an action like that be seen just -# add_tyranny = 50 -# add_dread = 30 -# #depose him! -# scope:previous_emperor = { -# depose_effect = { -# DEPOSER = scope:new_emperor -# } -# } -# -# scope:previous_emperor = { -# if = { -# limit = { is_ai = yes } -# add_opinion = { -# target = root -# modifier = forced_my_abdication_opinion -# } -# } -# if = { -# limit = { can_set_relation_rival_trigger = { CHARACTER = root } } -# set_relation_rival = { -# target = root -# reason = rival_forced_my_abdication_reason -# } -# } -# } -# -# add_hook = { -# target = scope:new_emperor -# type = strong_influence_hook -# } -# -# add_character_modifier = { -# modifier = tgp_japan_control_over_emperor -# years = 25 -# } -# -# custom_tooltip = minamoto_clan_will_respond_to_our_actions -# if = { -# limit = { -# exists = scope:minamoto_ruler -# } -# #Have the Yamatos join up with the Minamotos -# scope:previous_emperor.house ?= { -# if = { -# limit = { exists = house_confederation } -# set_variable = { -# name = bloc_leaving_reason -# value = flag:reason_events -# days = 4 -# } -# tgp_leave_house_bloc_effect = { -# OPINION = flag:yes -# TRUCE = flag:no -# } -# } -# tgp_join_house_bloc_effect = { -# INVITER = scope:minamoto_ruler.house -# OPINION = flag:yes -# } -# } -# } -# -# stress_impact = { -# patient = minor_stress_impact_gain -# arrogant = medium_stress_impact_loss -# ambitious = minor_stress_impact_loss -# } -# #Might be forcing it, but this happening most of the time would be ideal -# ai_chance = { -# base = 100 -# } -# #Trigger event for Yoritomo to gain bloc leadership -# scope:yoritomo_minamoto ?= { -# trigger_event = { -# id = tgp_genpei_character.1010 -# days = { 6 13 } -# } -# } -# #Trigger event for Yoshinaka to support Yoritomo or gain bloc leadership -# scope:yoshinaka_minamoto ?= { -# trigger_event = { -# id = tgp_genpei_character.1095 -# days = { 30 35 } -# } -# } -# } -# #Option B) Make common cause with the Fujiwara to eliminate the Minamoto -# option = { -# name = tgp_genpei_character.2010.b -# flavor = tgp_genpei_character.2010.b.flavor -# add_prestige = minor_prestige_value -# add_intrigue_lifestyle_xp = medium_lifestyle_experience -# #Make things good with fujiwara -# house = { -# change_house_relation_effect = { -# HOUSE = scope:fujiwara_ruler.house -# VALUE = house_relation_improve_medium_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:fujiwara_ruler -# TITLE = scope:dummy_gender -# } -# } -# #Make things bad with minamoto -# house = { -# change_house_relation_effect = { -# HOUSE = scope:minamoto_ruler.house -# VALUE = house_relation_damage_major_value -# REASON = conflict -# CHAR = root -# TARGET_CHAR = scope:minamoto_ruler -# TITLE = scope:dummy_gender -# } -# } -# stress_impact = { -# ambitious = medium_stress_impact_gain -# patient = minor_stress_impact_loss -# } -# ai_chance = { -# base = 20 -# } -# } -# #Option C) Make common cause with the Minamoto to eliminate the Fujiwara (get bonus to becoming shogun) -# option = { -# name = tgp_genpei_character.2010.c -# flavor = tgp_genpei_character.2010.c.flavor -# add_prestige = minor_prestige_value -# add_martial_lifestyle_xp = medium_lifestyle_experience -# #Make things good with minamoto -# house = { -# change_house_relation_effect = { -# HOUSE = scope:minamoto_ruler.house -# VALUE = house_relation_improve_medium_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:minamoto_ruler -# TITLE = scope:dummy_gender -# } -# } -# #Make things bad with fujiwara -# house = { -# change_house_relation_effect = { -# HOUSE = scope:fujiwara_ruler.house -# VALUE = house_relation_damage_major_value -# REASON = conflict -# CHAR = root -# TARGET_CHAR = scope:fujiwara_ruler -# TITLE = scope:dummy_gender -# } -# } -# stress_impact = { -# arrogant = medium_stress_impact_gain -# patient = minor_stress_impact_loss -# } -# ai_chance = { -# base = 20 -# } -# } -# #Option D) #Reignite your friendship with Go Shirakawa -# option = { -# name = tgp_genpei_character.2010.d -# flavor = tgp_genpei_character.2010.d.flavor -# add_diplomacy_lifestyle_xp = medium_lifestyle_experience -# add_piety = medium_piety_gain -# if = { -# #If we have a scheme, boost it! -# limit = { -# NOT = { -# any_scheme = { -# scheme_type = befriend -# scheme_target_character = scope:go_shirakawa -# } -# } -# } -# #If we don't have a scheme, let's scheme with a boost -# start_scheme = { -# type = befriend -# target_character = scope:go_shirakawa -# } -# } -# custom_tooltip = { -# text = tgp_japan_yearly_events.1200.c.tt -# random_scheme = { -# limit = { -# scheme_type = befriend -# scheme_target_character = scope:go_shirakawa -# } -# add_scheme_modifier = { type = settled_differences_modifier } -# } -# } -# stress_impact = { -# ambitious = minor_stress_impact_loss -# patient = medium_stress_impact_loss -# } -# ai_chance = { -# base = 10 -# modifier = { -# factor = 0 -# has_trait = impatient -# has_trait = paranoid -# has_trait = arrogant -# has_trait = shy -# } -# } -# } -#} -# -################################# -## Fujiwara Related Events -################################ -# -## Fujiwara Motofusa -# -## Initial EventWar being inevitable in Japan. Slander Kiyomori 2)Ally with Go Shirakawa or 3) Ally with Northern Fujiwara -#tgp_genpei_character.3000 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.3000.t -# desc = tgp_genpei_character.3000.desc -# window = big_event_window -# theme = crown -# left_portrait = { -# character = scope:motofusa_fujiwara -# animation = sadness -# } -# -# lower_left_portrait = scope:kiyomori_taira -# lower_center_portrait = scope:go_shirakawa -# lower_right_portrait = scope:hidehira_fujiwara -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# } -# #Option A) Slander Kiyomori -# option = { -# name = tgp_genpei_character.3000.a -# flavor = tgp_genpei_character.3000.a.flavor -# -# trigger = { -# scope:kiyomori_taira ?= { is_alive = yes } -# } -# -# change_influence = medium_influence_loss -# add_intrigue_lifestyle_xp = medium_lifestyle_experience -# add_prestige = minor_prestige_gain -# scope:kiyomori_taira = { -# every_vassal_or_below = { -# limit = { has_vassal_stance = courtly } -# custom = every_courtly_vassal -# add_opinion = { -# modifier = admiration_opinion -# target = scope:motofusa_fujiwara -# opinion = 30 -# } -# } -# } -# stress_impact = { -# arrogant = minor_stress_impact_loss -# } -# ai_chance = { -# base = 90 -# } -# } -# #Option B) #Send a letter to the retired Emperor -# option = { -# name = tgp_genpei_character.3000.b -# flavor = tgp_genpei_character.3000.b.flavor -# -# trigger = { -# scope:go_shirakawa ?= { -# is_alive = yes -# NOT = { house.house_confederation = root.house.house_confederation } -# } -# } -# -# custom_tooltip = send_letter_to_go_shirakawa -# -# scope:go_shirakawa = { -# show_as_tooltip = { -# random_list = { -# 1 = { -# add_prestige = major_prestige_gain -# } -# 1 = { -# house = { -# tgp_join_house_bloc_effect = { -# INVITER = scope:motofusa_fujiwara.house -# OPINION = flag:no -# } -# } -# set_relation_friend = { reason = friend_generic_history target = scope:motofusa_fujiwara } -# } -# } -# } -# trigger_event = { -# id = tgp_genpei_character.3010 -# days = 1 -# } -# } -# -# ai_chance = { -# base = 10 -# } -# } -# -# #Option C) Improve relations with northern Fujiwara. -# option = { -# name = tgp_genpei_character.3000.c -# flavor = tgp_genpei_character.3000.c.flavor -# -# trigger = { -# exists = scope:hidehira_fujiwara -# scope:hidehira_fujiwara ?= { is_alive = yes } -# } -# -# add_prestige = medium_prestige_loss -# #Make things good with northern Fujiwara -# house = { -# change_house_relation_effect = { -# HOUSE = scope:hidehira_fujiwara.house -# VALUE = house_relation_improve_medium_value -# REASON = friend -# CHAR = root -# TARGET_CHAR = scope:hidehira_fujiwara -# TITLE = scope:dummy_gender -# } -# } -# #Make things bad with the Taira -# house = { -# change_house_relation_effect = { -# HOUSE = scope:kiyomori_taira.house -# VALUE = house_relation_damage_major_value -# REASON = conflict -# CHAR = root -# TARGET_CHAR = scope:kiyomori_taira -# TITLE = scope:dummy_gender -# } -# } -# ai_chance = { -# base = 90 -# } -# } -#} -# -##Letter asking Go-Shirakawa for support -#tgp_genpei_character.3010 = { -# type = letter_event -# opening = tgp_genpei_character.3010.opening -# desc = tgp_genpei_character.3010.desc -# -# sender = { -# character = scope:motofusa_fujiwara -# animation = beg -# } -# -# option = { -# name = tgp_genpei_character.3010.a -# -# add_prestige = major_prestige_gain -# -# reverse_add_opinion = { -# target = scope:motofusa_fujiwara -# modifier = insulted_opinion -# opinion = -25 -# } -# -# ai_chance = { -# base = 0 -# } -# } -# -# option = { -# name = tgp_genpei_character.3010.b -# -# house = { -# tgp_join_house_bloc_effect = { -# INVITER = scope:motofusa_fujiwara.house -# OPINION = flag:no -# } -# } -# -# set_relation_friend = { reason = friend_generic_history target = scope:motofusa_fujiwara } -# -# ai_chance = { -# base = 100 -# } -# } -#} -# -## Fujiwara Hidehira -# -## Initial Event -#tgp_genpei_character.3100 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.3100.t -# desc = tgp_genpei_character.3100.desc -# theme = crown -# left_portrait = { -# character = root -# animation = war_over_win -# } -# right_portrait = { -# character = scope:yoshitsune_minamoto -# animation = marshal -# } -# lower_right_portrait = scope:kiyomori_taira -# lower_center_portrait = scope:motofusa_fujiwara -# override_background = { reference = study } -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# } -# -# option = { # Accept your position as the Governor of the North -# name = tgp_genpei_character.3100.a -# -# domicile = { -# add_domicile_building = japanese_manor_main_04 -# } -# -# ai_chance = { -# base = 25 -# } -# } -# -# option = { # Become more active in the Genpei Conflict about to break out -# name = tgp_genpei_character.3100.b -# -# show_as_tooltip = { -# add_character_modifier = { -# modifier = tgp_japan_fujiwara_hidehira_back_in_town -# years = 25 -# } -# } -# -# add_diplomacy_lifestyle_xp = medium_lifestyle_xp -# -# add_intrigue_lifestyle_xp = medium_lifestyle_xp -# -# ai_chance = { -# base = 75 -# } -# } -#} -# -################################# -## Yamato Events -################################# -# -## Go-Shirakawa Starting Event -#tgp_genpei_character.4000 = { -# type = character_event -# window = big_event_window -# title = tgp_genpei_character.4000.t -# desc = tgp_genpei_character.4000.desc -# theme = crown -# left_portrait = { -# character = root -# animation = sadness -# } -# right_portrait = { -# character = scope:norihito_tenno -# animation = holding_hu -# } -# lower_left_portrait = scope:yoritomo_minamoto -# lower_right_portrait = scope:kiyomori_taira -# -# trigger = { -# has_tgp_dlc_trigger = yes -# } -# -# immediate = { -# save_genpei_scopes_effect = yes -# } -# -# option = { # Be more active, opposing the Taira -# name = tgp_genpei_character.4000.a -# -# set_relation_rival = { -# target = scope:kiyomori_taira -# reason = rival_historical -# } -# -# change_influence = massive_influence_value -# -# top_liege = { -# every_vassal = { -# custom = every_non_taira_vassal -# limit = { -# dynasty != scope:kiyomori_taira.dynasty -# this != root -# } -# add_opinion = { -# target = root -# modifier = spoke_against_taira_rule -# opinion = 25 -# } -# } -# } -# -# ai_chance = { -# base = 25 -# } -# } -# -# option = { # Bide your time, wait for an opportunity first -# name = tgp_genpei_character.4000.b -# -# -# -# stress_impact = { -# impatient = major_stress_impact_gain -# } -# -# ai_chance = { -# base = 75 -# } -# } -#} -# \ No newline at end of file diff --git a/events/dlc/tgp/tgp_governor_contract_events.txt b/events/dlc/tgp/tgp_governor_contract_events.txt deleted file mode 100644 index 2b5655c0d..000000000 --- a/events/dlc/tgp/tgp_governor_contract_events.txt +++ /dev/null @@ -1,3495 +0,0 @@ -########################## -# GOVERNOR CONTRACT EVENTS -########################## -namespace = tgp_governor_contract_event - -### Jail Inspection - -tgp_governor_contract_event.0010 = { - type = character_event - title = tgp_governor_contract_event.0010.t - desc = tgp_governor_contract_event.0010.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = jail_inspection - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = jail_inspection_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0010.a - - custom_tooltip = tgp_governor_contract_event.0010.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:jail_inspection_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0001 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0010.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0001 = { - type = character_event - title = tgp_governor_contract_event.0001.t - desc = tgp_governor_contract_event.0001.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:sick_prisoner - animation = prisondungeon - } - override_background = { - reference = dungeon - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = jail_inspection - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - trait = pneumonic - trait = murderer - save_scope_as = sick_prisoner - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0001.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = renovate_jail - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0001.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = improve_their_conditions - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_honor = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0001.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = pardon_some_of_them - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0001.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = beat_the_complainers - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0001.e - trigger = { - exists = scope:governance_option_e - } - scope:ongoing_contract = { - complete_task_contract = convict_labor - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - after = { - hidden_effect = { - scope:sick_prisoner ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Potent Physick - -tgp_governor_contract_event.0011 = { - type = character_event - title = tgp_governor_contract_event.0011.t - desc = tgp_governor_contract_event.0011.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = potent_physick - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = potent_physick_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0011.a - - custom_tooltip = tgp_governor_contract_event.0011.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:potent_physick_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0002 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0011.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0002 = { - type = character_event - title = tgp_governor_contract_event.0002.t - desc = tgp_governor_contract_event.0002.desc - theme = administrative - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:snake_oil_peddler - animation = personality_greedy - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = potent_physick - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = good_merchant_template - faith = scope:ongoing_destination.faith - culture = scope:ongoing_destination.culture - location = scope:task_contract.task_contract_location - trait = greedy - save_scope_as = snake_oil_peddler - } - save_court_physician_as_effect = { SCOPE_NAME = physician } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0002.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = emergency_appropriation - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0002.b - trigger = { exists = scope:governance_option_b } - duel = { - skills = { diplomacy intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0002.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = licensing_issue - } - } - 50 = { - desc = tgp_governor_contract_event.0002.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_licensing_issue - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0002.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = begone_quack - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0002.d - trigger = { - exists = scope:governance_option_d - } - scope:ongoing_contract = { - complete_task_contract = hire_the_quack - } - if = { - limit = { - exists = scope:physician - } - revoke_court_position = { - recipient = scope:physician - court_position = court_physician_court_position - } - } - add_courtier = scope:snake_oil_peddler - court_position_grant_effect = { - EMPLOYER = root - POS = court_physician - CANDIDATE = scope:snake_oil_peddler - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0002.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = down_the_hatch - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - after = { - scope:snake_oil_peddler ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# Irregular Accounting - -tgp_governor_contract_event.0012 = { - type = character_event - title = tgp_governor_contract_event.0012.t - desc = tgp_governor_contract_event.0012.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = irregular_accounting - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = irregular_accounting_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0012.a - - custom_tooltip = tgp_governor_contract_event.0012.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:irregular_accounting_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0003 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0012.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0003 = { - type = character_event - title = tgp_governor_contract_event.0003.t - desc = tgp_governor_contract_event.0003.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:dubious_tax_agent - animation = personality_greedy - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = irregular_accounting - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - trait = deceitful - trait = greedy - trait = ambitious - save_scope_as = dubious_tax_agent - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0003.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = confiscation_and_incarceration - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0003.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = recruit_embezzler - } - if = { - limit = { - can_recruit_character_to_court_trigger = { - RECRUITER = root - RECRUITEE = scope:dubious_tax_agent - } - scope:dubious_tax_agent ?= { - NOT = { is_courtier_of = root } - } - } - add_courtier = scope:dubious_tax_agent - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - add = -20 - } - } - } - option = { - name = tgp_governor_contract_event.0003.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = cover_up - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0003.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = into_your_pocket - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0003.e - trigger = { exists = scope:governance_option_e } - duel = { - skills = { stewardship intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0003.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = continue_the_charade - } - } - 50 = { - desc = tgp_governor_contract_event.0003.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_continue_the_charade - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1.5 - } - } - } - after = { - scope:dubious_tax_agent ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# SALT SMUGGLERS - -tgp_governor_contract_event.0013 = { - type = character_event - title = tgp_governor_contract_event.0013.t - desc = tgp_governor_contract_event.0013.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = salt_smugglers - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = salt_smugglers_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0013.a - - custom_tooltip = tgp_governor_contract_event.0013.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:salt_smugglers_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0004 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0013.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0004 = { - type = character_event - title = tgp_governor_contract_event.0004.t - desc = tgp_governor_contract_event.0004.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:salt_smuggler - animation = prisonhouse - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = salt_smugglers - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - save_scope_as = salt_smuggler - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0004.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = execute_smuggler - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0004.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = cut_a_deal - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0004.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { martial intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0004.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = interrogate_smuggler - } - } - 50 = { - desc = tgp_governor_contract_event.0004.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_interrogate_smuggler - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0004.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { diplomacy intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0004.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = a_cut_of_the_take - } - } - 50 = { - desc = tgp_governor_contract_event.0004.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_a_cut_of_the_take - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0004.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = recruit_smuggler - } - if = { - limit = { - can_recruit_character_to_court_trigger = { - RECRUITER = root - RECRUITEE = scope:salt_smuggler - } - scope:salt_smuggler ?= { - NOT = { is_courtier_of = root } - } - } - add_courtier = scope:salt_smuggler - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - add = -20 - } - } - } - after = { - scope:salt_smuggler ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# Hoarding Grain - -tgp_governor_contract_event.0014 = { - type = character_event - title = tgp_governor_contract_event.0014.t - desc = tgp_governor_contract_event.0014.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = hoarding_grain - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = hoarding_grain_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0014.a - - custom_tooltip = tgp_governor_contract_event.0014.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:hoarding_grain_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0005 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0014.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0005 = { - type = character_event - title = tgp_governor_contract_event.0005.t - desc = tgp_governor_contract_event.0005.desc - theme = administrative - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:grain_hoarding_local_notable - animation = anger - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = hoarding_grain - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - save_scope_as = grain_hoarding_local_notable - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0005.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = release_the_grain - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0005.b - trigger = { exists = scope:governance_option_b } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0005.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = shame_them - } - } - 50 = { - desc = tgp_governor_contract_event.0005.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_shame_them - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0005.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { diplomacy martial } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0005.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = intimidate_them - } - } - 50 = { - desc = tgp_governor_contract_event.0005.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_intimidate_them - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0005.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = purchase_grain_yourself - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0005.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = bribe_with_offices - } - if = { - limit = { - can_recruit_character_to_court_trigger = { - RECRUITER = root - RECRUITEE = scope:grain_hoarding_local_notable - } - scope:grain_hoarding_local_notable ?= { - NOT = { is_courtier_of = root } - } - } - add_courtier = scope:grain_hoarding_local_notable - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - } - } - } - after = { - scope:grain_hoarding_local_notable ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# Doddering Magistrate - -tgp_governor_contract_event.0015 = { - type = character_event - title = tgp_governor_contract_event.0015.t - desc = tgp_governor_contract_event.0015.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = doddering_magistrate - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = doddering_magistrate_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0015.a - - custom_tooltip = tgp_governor_contract_event.0015.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:doddering_magistrate_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0006 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0015.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0006 = { - type = character_event - title = tgp_governor_contract_event.0006.t - desc = tgp_governor_contract_event.0006.desc - theme = administrative - left_portrait = { - character = root - animation = boredom - } - right_portrait = { - character = scope:elderly_magistrate - animation = personality_honorable - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = doddering_magistrate - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - save_scope_as = elderly_magistrate - age = { 80 90 } - trait = stubborn - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0006.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = appoint_substitute - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0006.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = force_him_out - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0006.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = promote_somewhere_harmless - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0006.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = let_him_continue - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0006.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = demote_him - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - ai_compassion = -1 - } - } - } - after = { - scope:elderly_magistrate ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# Tax Exemption Petition - -tgp_governor_contract_event.0007 = { - type = character_event - title = tgp_governor_contract_event.0007.t - desc = tgp_governor_contract_event.0007.desc - theme = administrative - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:village_elder - animation = beg - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = burdensome_taxes - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - save_scope_as = village_elder - age = 70 - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0007.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - duel = { - skills = { stewardship } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0007.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = revise_tax_assessment - } - } - 50 = { - desc = tgp_governor_contract_event.0007.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_revise_tax_assessment - } - } - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0007.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = waive_their_taxes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0007.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = pay_it_yourself - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0007.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = delayed_taxes - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 0.5 - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0007.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = imprison_debtors - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - after = { - scope:village_elder ?= { - silent_disappearance_effect = yes - } - } -} - -# Unsafe Highways -tgp_governor_contract_event.0008 = { - type = character_event - title = tgp_governor_contract_event.0008.t - desc = tgp_governor_contract_event.0008.desc - theme = administrative - left_portrait = { - character = root - animation = personality_content - } - right_portrait = { - character = scope:fearful_merchant - animation = stress - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = unsafe_highways - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = unsafe_highways_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - save_scope_as = fearful_merchant - trait = craven - trait = greedy - } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0008.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = merchant_funded_government_escort - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0008.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = send_out_the_patrols - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0008.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0008.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = talk_them_into_bodyguards - } - } - 50 = { - desc = tgp_governor_contract_event.0008.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_talk_them_into_bodyguards - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0008.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { diplomacy intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0008.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = threaten_with_sanctions - } - } - 50 = { - desc = tgp_governor_contract_event.0008.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_threaten_with_sanctions - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0008.e - trigger = { exists = scope:governance_option_e } - duel = { - skills = { diplomacy stewardship } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0008.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = entice_with_promises - } - } - 50 = { - desc = tgp_governor_contract_event.0008.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_entice_with_promises - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - } - } - after = { - scope:fearful_merchant ?= { - if = { - limit = { - NOT = { is_courtier_of = root } - } - silent_disappearance_effect = yes - } - } - } -} - -# Dam in Disrepair -tgp_governor_contract_event.0009 = { - type = character_event - title = tgp_governor_contract_event.0009.t - desc = tgp_governor_contract_event.0009.desc - theme = administrative - left_portrait = { - character = root - animation = worry - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = dam_in_disrepair - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = dam_in_disrepair_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - } - - option = { # Special governor trait option - name = tgp_governor_contract_event.0009.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = conscientious_mobilization - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0009.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = forced_labor - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_compassion = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0009.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { diplomacy intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0009.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = compel_the_wealthy - } - } - 50 = { - desc = tgp_governor_contract_event.0009.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_compel_the_wealthy - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0009.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = personal_contribution - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_compassion = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0009.e - trigger = { exists = scope:governance_option_e } - duel = { - skills = { stewardship diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0009.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = requisition_state_resources - } - } - 50 = { - desc = tgp_governor_contract_event.0009.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_requisition_state_resources - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } -} - -# Lines in the Soil - -tgp_governor_contract_event.0020 = { - type = character_event - title = tgp_governor_contract_event.0020.t - desc = tgp_governor_contract_event.0020.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = lines_in_the_soil - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = lines_in_the_soil_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0020.a - - custom_tooltip = tgp_governor_contract_event.0020.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:lines_in_the_soil_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0021 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0020.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0021 = { - type = character_event - title = tgp_governor_contract_event.0021.t - desc = tgp_governor_contract_event.0021.desc - theme = administrative - left_portrait = { - character = scope:quarrelling_landowner_one - animation = anger - } - right_portrait = { - character = scope:quarrelling_landowner_two - animation = rage - } - lower_left_portrait = { - character = root - } - override_background = { - reference = dungeon - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = lines_in_the_soil - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = lines_in_the_soil_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_landowner_one - trait = greedy - trait = stubborn - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_landowner_two - trait = greedy - trait = stubborn - } - } - option = { - name = tgp_governor_contract_event.0021.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = land_resurvey - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0021.b - trigger = { exists = scope:governance_option_b } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0021.b.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = consult_archives - } - } - 50 = { - desc = tgp_governor_contract_event.0021.b.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_consult_archives - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0021.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = split_the_land - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0021.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0021.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = purchase_claims - } - } - 50 = { - desc = tgp_governor_contract_event.0021.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_purchase_claims - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0021.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = declare_state_property - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - after = { - hidden_effect = { - scope:quarrelling_landowner_one ?= { - silent_disappearance_effect = yes - } - scope:quarrelling_landowner_two ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Fraud in Broad Daylight - -tgp_governor_contract_event.0022 = { - type = character_event - title = tgp_governor_contract_event.0022.t - desc = tgp_governor_contract_event.0022.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:reporting_councillor - animation = worry - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = fraud_in_broad_daylight - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = fraud_in_broad_daylight_destination - } - } - random_councillor = { - limit = { - is_available = yes - } - save_scope_as = reporting_councillor - } - } - - option = { - name = tgp_governor_contract_event.0022.a - - custom_tooltip = tgp_governor_contract_event.0022.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:fraud_in_broad_daylight_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0023 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0022.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0023 = { - type = character_event - title = tgp_governor_contract_event.0023.t - desc = tgp_governor_contract_event.0023.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = fraud_in_broad_daylight - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - } - option = { - name = tgp_governor_contract_event.0023.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = goods_inspection - } - ai_chance = { - base = 100 - } - } - option = { - name = tgp_governor_contract_event.0023.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = reward_for_information - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0023.c - trigger = { exists = scope:governance_option_b } - duel = { - skills = { intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0023.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = undercover_clerks - } - } - 50 = { - desc = tgp_governor_contract_event.0023.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_undercover_clerks - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - - } - } - option = { - name = tgp_governor_contract_event.0023.d - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = merchant_association - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0023.e - trigger = { exists = scope:governance_option_b } - duel = { - skills = { martial intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0023.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = surprise_raid - } - } - 50 = { - desc = tgp_governor_contract_event.0023.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_surprise_raid - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = 1 - } - } - } - after = { - hidden_effect = { - scope:merchant_magnate ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Crumbling Bridge - -tgp_governor_contract_event.0024 = { - type = character_event - title = tgp_governor_contract_event.0024.t - desc = tgp_governor_contract_event.0024.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = crumbling_bridge - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = crumbling_bridge_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0024.a - - custom_tooltip = tgp_governor_contract_event.0024.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:crumbling_bridge_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0025 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0024.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0025 = { - type = character_event - title = tgp_governor_contract_event.0025.t - desc = tgp_governor_contract_event.0025.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = crumbling_bridge - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - } - option = { - name = tgp_governor_contract_event.0025.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = army_assistance - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0025.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = temporary_substitute - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0025.c - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = ferry_crossing - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0025.d - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = slower_replacement - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0025.e - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = settle_caravans - } - duel = { - skills = { stewardship learning } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0025.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = settle_caravans - } - } - 50 = { - desc = tgp_governor_contract_event.0025.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_settle_caravans - } - } - } - ai_chance = { - base = 100 - } - } -} - -# A Confusion of Tongues - -tgp_governor_contract_event.0026 = { - type = character_event - title = tgp_governor_contract_event.0026.t - desc = tgp_governor_contract_event.0026.desc - theme = administrative - left_portrait = { - character = root - animation = thinking - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = confusion_of_tongues - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = confusion_of_tongues_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0026.a - - custom_tooltip = tgp_governor_contract_event.0026.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:confusion_of_tongues_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0027 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0026.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0027 = { - type = character_event - title = tgp_governor_contract_event.0027.t - desc = tgp_governor_contract_event.0027.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:local_magistrate - animation = thinking - } - lower_right_portrait = { - character = scope:incomprehensible_merchant - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = confusion_of_tongues - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 6 } - random_county_in_region = { - region = world_asia_and_india - limit = { - any_province = { - is_coastal = yes - } - culture = { NOT = { has_cultural_pillar = heritage_chinese } } - } - save_scope_as = merchant_origin_county - } - scope:merchant_origin_county.culture = { - save_scope_as = merchant_origin_county_culture - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = local_magistrate - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = scope:merchant_origin_county_culture - faith = scope:merchant_origin_county.faith - save_scope_as = incomprehensible_merchant - } - scope:task_contract = { - set_variable = { - name = foreign_merchant_culture - value = scope:incomprehensible_merchant.culture - } - } - } - option = { - name = tgp_governor_contract_event.0027.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = temporary_housing - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0027.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = search_for_translator - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0027.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = confiscate_their_goods - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_boldness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0027.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0027.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = communicate_through_gestures - } - } - 50 = { - desc = tgp_governor_contract_event.0027.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_communicate_through_gestures - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0027.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = put_them_under_guard - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0027.f - trigger = { - exists = scope:governance_option_f - } - scope:ongoing_contract = { - complete_task_contract = i_know_this_one - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - after = { - hidden_effect = { - scope:incomprehensible_merchant ?= { - silent_disappearance_effect = yes - } - } - } -} -# Seditious Storytelling - -tgp_governor_contract_event.0028 = { - type = character_event - title = tgp_governor_contract_event.0028.t - desc = tgp_governor_contract_event.0028.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = seditious_storytelling - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = seditious_storytelling_destination - } - } - random_councillor = { - limit = { - is_available = yes - } - save_scope_as = concerned_councillor - } - } - - option = { - name = tgp_governor_contract_event.0028.a - - custom_tooltip = tgp_governor_contract_event.0028.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:seditious_storytelling_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0029 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0028.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0029 = { - type = character_event - title = tgp_governor_contract_event.0029.t - desc = tgp_governor_contract_event.0029.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:seditious_storyteller - animation = thinking - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = seditious_storytelling - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = seditious_storyteller - trait = honest - trait = stubborn - } - } - option = { - name = tgp_governor_contract_event.0029.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = censor_storyteller - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0029.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = arrest_storyteller - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0029.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = encourage_rival_storytellers - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0029.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = intimidate_audience - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0029.e - trigger = { exists = scope:governance_option_e } - duel = { - skills = { diplomacy intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0029.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = persuade_storyteller - } - } - 50 = { - desc = tgp_governor_contract_event.0029.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_persuade_storyteller - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - after = { - hidden_effect = { - scope:seditious_storyteller ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Quaking in Panic - -tgp_governor_contract_event.0030 = { - type = character_event - title = tgp_governor_contract_event.0030.t - desc = tgp_governor_contract_event.0030.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - right_portrait = { - character = scope:my_councillor - animation = thinking - } - lower_right_portrait = { - character = scope:alarmed_councillor - animation = worry - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = quaking_in_panic - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = quaking_in_panic_destination - } - } - random_councillor = { - limit = { - is_available = yes - } - save_scope_as = my_councillor - } - random_councillor = { - limit = { - is_available = yes - NOT = { this = scope:my_councillor } - } - save_scope_as = alarmed_councillor - } - } - - option = { - name = tgp_governor_contract_event.0030.a - - custom_tooltip = tgp_governor_contract_event.0030.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:quaking_in_panic_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0031 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0030.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0031 = { - type = character_event - title = tgp_governor_contract_event.0031.t - desc = tgp_governor_contract_event.0031.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:panicked_villager - animation = fear - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = quaking_in_panic - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = panicked_villager - trait = craven - } - } - option = { - name = tgp_governor_contract_event.0031.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0031.a.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = convene_public_meeting - } - } - 50 = { - desc = tgp_governor_contract_event.0031.a.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_convene_public_meeting - } - } - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0031.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = deploy_guards - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_vengefulness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0031.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = appeal_to_local_leadership - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_sociability = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0031.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { stewardship } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0031.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = architectural_inspection - } - } - 50 = { - desc = tgp_governor_contract_event.0031.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_architectural_inspection - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0031.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = population_transfer - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - after = { - hidden_effect = { - scope:panicked_villager ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Monopoly in the Marketplace - -tgp_governor_contract_event.0032 = { - type = character_event - title = tgp_governor_contract_event.0032.t - desc = tgp_governor_contract_event.0032.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - right_portrait = { - character = scope:plaintive_merchant - animation = anger - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = monopoly_in_the_marketplace - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = monopoly_in_the_marketplace_destination - } - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = plaintive_merchant - } - } - - option = { - name = tgp_governor_contract_event.0032.a - - custom_tooltip = tgp_governor_contract_event.0032.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:monopoly_in_the_marketplace_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0033 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0032.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } - after = { - hidden_effect = { - scope:plaintive_merchant ?= { - silent_disappearance_effect = yes - } - } - } -} - -tgp_governor_contract_event.0033 = { - type = character_event - title = tgp_governor_contract_event.0033.t - desc = tgp_governor_contract_event.0033.desc - theme = administrative - override_background = { reference = market } - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:merchant_magnate - animation = admiration - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = monopoly_in_the_marketplace - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - trait = greedy - trait = deceitful - trait = ambitious - save_scope_as = merchant_magnate - } - } - option = { - name = tgp_governor_contract_event.0033.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = strict_regulations - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0033.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = association_stalls_only - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0033.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = levy_special_tax - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0033.d - trigger = { exists = scope:governance_option_d } - duel = { - skills = { stewardship intrigue } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0033.d.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = back_competitors - } - } - 50 = { - desc = tgp_governor_contract_event.0033.d.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_back_competitors - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0033.e - trigger = { exists = scope:governance_option_e } - scope:ongoing_contract = { - complete_task_contract = seize_merchant_goods - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - } - } - } - after = { - hidden_effect = { - scope:merchant_magnate ?= { - silent_disappearance_effect = yes - } - } - } -} - -# Contested Inheritance - -tgp_governor_contract_event.0034 = { - type = character_event - title = tgp_governor_contract_event.0034.t - desc = tgp_governor_contract_event.0034.desc - theme = administrative - left_portrait = { - character = root - animation = pondering - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = contested_inheritance - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = contested_inheritance_destination - } - } - } - - option = { - name = tgp_governor_contract_event.0034.a - - custom_tooltip = tgp_governor_contract_event.0034.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:contested_inheritance_destination - ARRIVAL_EVENT = tgp_governor_contract_event.0035 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.0034.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { - add = 100 - is_available = no - } - modifier = { - add = 200 - has_trait = lazy - NOT = { has_trait = greedy } # Greedy always wants more gold, even when lazy. - } - } - } -} - -tgp_governor_contract_event.0035 = { - type = character_event - title = tgp_governor_contract_event.0035.t - desc = tgp_governor_contract_event.0035.desc - theme = administrative - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:quarrelling_heir_one - animation = thinking - } - lower_left_portrait = { - character = scope:quarrelling_heir_two - } - lower_center_portrait = { - character = scope:quarrelling_heir_three - } - lower_right_portrait = { - character = scope:quarrelling_heir_four - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = contested_inheritance - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 5 } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_heir_one - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_heir_two - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_heir_three - } - create_character = { - template = merchant_template - location = scope:task_contract.task_contract_location - location = root.location - culture = root.location.culture - faith = root.location.faith - save_scope_as = quarrelling_heir_four - } - } - option = { - name = tgp_governor_contract_event.0035.a - trigger = { - exists = scope:governance_option_a - has_trait = governor # To show that the trait unlocks the option - } - scope:ongoing_contract = { - complete_task_contract = declare_communal_property - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_governor_contract_event.0035.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = award_according_to_seniority - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0035.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { intrigue stewardship } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0035.c.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = award_to_highest_bidder - } - } - 50 = { - desc = tgp_governor_contract_event.0035.c.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_award_to_highest_bidder - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_honor = -1 - } - } - } - option = { - name = tgp_governor_contract_event.0035.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = adhere_to_testament - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = 1 - } - } - } - option = { - name = tgp_governor_contract_event.0035.e - trigger = { exists = scope:governance_option_e } - duel = { - skills = { diplomacy } - value = decent_skill_rating - 50 = { - desc = tgp_governor_contract_event.0035.e.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - scope:ongoing_contract = { - complete_task_contract = persuade_private_settlement - } - } - 50 = { - desc = tgp_governor_contract_event.0035.e.failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - scope:ongoing_contract ?= { - complete_task_contract = failure_persuade_private_settlement - } - } - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_energy = 1 - } - } - } - after = { - hidden_effect = { - scope:quarrelling_heir_one ?= { - silent_disappearance_effect = yes - } - scope:quarrelling_heir_two ?= { - silent_disappearance_effect = yes - } - scope:quarrelling_heir_three ?= { - silent_disappearance_effect = yes - } - scope:quarrelling_heir_four ?= { - silent_disappearance_effect = yes - } - } - } -} diff --git a/events/dlc/tgp/tgp_governor_contract_events_2000.txt b/events/dlc/tgp/tgp_governor_contract_events_2000.txt deleted file mode 100644 index 6e925a42d..000000000 --- a/events/dlc/tgp/tgp_governor_contract_events_2000.txt +++ /dev/null @@ -1,502 +0,0 @@ -########################## -# GOVERNOR CONTRACT EVENTS -########################## -namespace = tgp_governor_contract_event - -### Missing Equipment -# Intro event -tgp_governor_contract_event.2000 = { - type = character_event - title = tgp_governor_contract_event.2000.t - desc = tgp_governor_contract_event.2000.desc - theme = administrative - left_portrait = { - character = root - animation = worry - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = missing_equipment - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = robbery_location - } - } - - # Save the capital location - top_liege = { - capital_province = { - save_scope_as = capital_location - } - } - } - - option = { # Let's pay the workshops a visit. - name = tgp_governor_contract_event.2000.a - - # Travel to the capital and visit a workshop/production facility - custom_tooltip = { - text = tgp_governor_contract_event.2000.a_tt - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:capital_location - ARRIVAL_EVENT = tgp_governor_contract_event.2001 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_governor_contract_event.2000.b - - scope:ongoing_contract = { - complete_task_contract = buy_replacements - } - - ai_chance = { - base = 0 - - modifier = { # The AI may take this if they have A LOT of gold - add = 100 - short_term_gold >= massive_gold_value - } - } - } - - option = { - name = tgp_governor_contract_event.2000.c - - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - - modifier = { # Pick this only if necessary - add = 100 - is_available = no - } - } - } -} - -# Arrival at the workshop -tgp_governor_contract_event.2001 = { - type = character_event - title = tgp_governor_contract_event.2001.t - desc = tgp_governor_contract_event.2001.desc - theme = administrative - override_background = { reference = market } - left_portrait = { - character = root - animation = disapproval - } - right_portrait = { - character = scope:foreman - animation = reading - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = missing_equipment - } - save_scope_as = ongoing_contract - } - - # Save the capital location - top_liege = { - capital_province = { - save_scope_as = capital_location - } - } - - # Find/create a foreman for us to talk to - if = { - limit = { - any_pool_character = { - province = scope:capital_location - is_physically_able_ai_adult = yes - } - } - random_pool_character = { - province = scope:capital_location - limit = { - is_physically_able_ai_adult = yes - } - save_scope_as = foreman - } - } - else = { - create_character = { - template = scholar_character - culture = scope:capital_location.county.culture - faith = scope:capital_location.county.faith - location = scope:capital_location - gender_female_chance = root_faith_dominant_gender_female_chance - save_scope_as = foreman - } - } - - # Check if you have an important relation at the imperial court - top_liege = { - if = { - limit = { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - save_scope_as = court_relation - } - else_if = { - limit = { - cp:councillor_chancellor ?= { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - } - cp:councillor_chancellor = { save_scope_as = court_relation } - } - else_if = { - limit = { - cp:councillor_marshal ?= { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - } - cp:councillor_marshal = { save_scope_as = court_relation } - } - else_if = { - limit = { - cp:councillor_steward ?= { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - } - cp:councillor_steward = { save_scope_as = court_relation } - } - else_if = { - limit = { - cp:councillor_spymaster ?= { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - } - cp:councillor_spymaster = { save_scope_as = court_relation } - } - else_if = { - limit = { - cp:councillor_court_chaplain ?= { - OR = { - has_relation_friend = root - has_relation_lover = root - is_close_or_extended_family_of = root - root = { has_hook = prev } - } - } - } - cp:councillor_court_chaplain = { save_scope_as = court_relation } - } - } - - hidden_effect = { # Delay the travel until the events are resolved - current_travel_plan ?= { - delay_travel_plan = { days = 180 } - } - } - } - - option = { # A _clerical_ error? [relation] will hear about this... - name = tgp_governor_contract_event.2001.a - - trigger = { - exists = scope:court_relation - } - - custom_tooltip = { - text = tgp_governor_contract_event.2001.a.tt - trigger_event = { - id = tgp_governor_contract_event.2002 - } - } - - ai_chance = { - base = 100 - } - } - - option = { # Surely some additional compensation is in order? - name = tgp_governor_contract_event.2001.b - - duel = { - skill = diplomacy - value = 10 - 50 = { # Success - desc = tgp_governor_contract_event.2001.tt_success_desc - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - trigger_event = { - id = tgp_governor_contract_event.2002 - } - custom_tooltip = tgp_governor_contract_event.2001.tt_success - } - 50 = { # Failure - desc = tgp_governor_contract_event.2001.tt_failure_desc - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - } - trigger_event = { - id = tgp_governor_contract_event.2003 - } - custom_tooltip = tgp_governor_contract_event.2001.tt_failure - show_as_tooltip = { # Actual deduction is done in follow-up event - change_influence = medium_influence_loss - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - content = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - - modifier = { - factor = 2 - diplomacy >= good_skill_level - } - modifier = { - factor = 0 - exists = scope:court_relation - } - modifier = { - factor = 0 - has_trait = content - } - } - } - - option = { # It would be unfortunate if your incompetence became public, no? - name = tgp_governor_contract_event.2001.c - - duel = { - skill = intrigue - value = 10 - 50 = { # Success - desc = tgp_governor_contract_event.2001.tt_success_desc - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - trigger_event = { - id = tgp_governor_contract_event.2002 - } - custom_tooltip = tgp_governor_contract_event.2001.tt_success - } - 50 = { # Failure - desc = tgp_governor_contract_event.2001.tt_failure_desc - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - } - trigger_event = { - id = tgp_governor_contract_event.2003 - } - custom_tooltip = tgp_governor_contract_event.2001.tt_failure - show_as_tooltip = { # Actual deduction is done in follow-up event - change_influence = medium_influence_loss - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - } - - ai_chance = { - base = 0 - - modifier = { - factor = 2 - intrigue >= good_skill_level - } - modifier = { - factor = 1.2 - has_trait = deceitful - } - modifier = { - factor = 0 - has_trait = compassionate - } - } - } - - option = { # Very well. Just make certain that it does. - name = tgp_governor_contract_event.2001.d - - scope:ongoing_contract = { - complete_task_contract = offered_replacements - } - - current_travel_plan ?= { resume_travel_plan = yes } - - ai_chance = { - base = 50 - - modifier = { - factor = 2 - has_trait = content - } - } - } -} - -# Workship visit: Success -tgp_governor_contract_event.2002 = { - type = character_event - title = tgp_governor_contract_event.2002.t - desc = tgp_governor_contract_event.2002.desc - theme = administrative - override_background = { reference = market } - left_portrait = { - character = root - animation = schadenfreude - } - right_portrait = { - character = scope:foreman - animation = obsequious_bow - } - - immediate = { - generate_governance_outcome_effect = { OPTIONS = 4 } - } - - # Special governor trait option - option = { # Let's secure a number of shipments in the future. - name = tgp_governor_contract_event.2002.a - - trigger = { - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = secure_future_deliveries - } - - ai_chance = { - base = 100 - } - } - - option = { # Secure me your next #EMP two#! shipments. - name = tgp_governor_contract_event.2002.b - trigger = { exists = scope:governance_option_b } - - scope:ongoing_contract = { - complete_task_contract = demand_extra_shipment - } - - ai_chance = { - base = 25 - } - } - - option = { # A monetary compensation is in order. - name = tgp_governor_contract_event.2002.c - trigger = { exists = scope:governance_option_c } - - scope:ongoing_contract = { - complete_task_contract = demand_gold - } - - ai_chance = { - base = 25 - } - } - - option = { # Send me the best equipment you have available. - name = tgp_governor_contract_event.2002.d - trigger = { exists = scope:governance_option_d } - - scope:ongoing_contract = { - complete_task_contract = demand_best_equipment - } - - ai_chance = { - base = 25 - } - } - - after = { - current_travel_plan ?= { resume_travel_plan = yes } - } -} - -# Workship visit: Failure -tgp_governor_contract_event.2003 = { - type = character_event - title = tgp_governor_contract_event.2003.t - desc = tgp_governor_contract_event.2003.desc - theme = administrative - override_background = { reference = market } - left_portrait = { - character = root - animation = disappointed - } - right_portrait = { - character = scope:foreman - animation = anger - } - - immediate = { - } - - option = { # Fine. - name = tgp_governor_contract_event.2003.a - - scope:ongoing_contract = { - complete_task_contract = offered_replacements - } - - change_influence = medium_influence_loss - add_prestige = medium_prestige_loss - } - - after = { - current_travel_plan ?= { resume_travel_plan = yes } - } -} diff --git a/events/dlc/tgp/tgp_house_blocs.txt b/events/dlc/tgp/tgp_house_blocs.txt deleted file mode 100644 index c6dc8d550..000000000 --- a/events/dlc/tgp/tgp_house_blocs.txt +++ /dev/null @@ -1,176 +0,0 @@ -namespace = tgp_house_blocs - -# Message management - -tgp_house_blocs.0001 = { - type = character_event - hidden = yes - - trigger = { has_character_flag = bloc_message_flag } - - immediate = { - # Notify all members about them leaving. - send_interface_message = { - type = msg_left_house_bloc - title = msg_left_bloc_root - desc = msg_left_bloc_desc_root - left_icon = scope:leaver.house - right_icon = scope:bloc.leading_house - custom_description = { - text = leave_house_bloc_effect - subject = house.house_head - } - } - every_player = { - limit = { - confederation ?= scope:bloc - NOT = { this = root } - } - send_interface_message = { - type = msg_left_house_bloc - title = msg_left_bloc - desc = msg_left_bloc_desc - left_icon = scope:leaver.house - right_icon = scope:bloc.leading_house - custom_description = { - text = leave_house_bloc_effect - subject = scope:leaver.house_head - } - } - } - remove_character_flag = bloc_message_flag - } -} - -tgp_house_blocs.0002 = { - type = character_event - hidden = yes - - trigger = { has_character_flag = bloc_message_flag } - - immediate = { - # Notify all members about them leaving. - send_interface_message = { - type = msg_joined_house_bloc - title = msg_joined_bloc_root - desc = msg_joined_bloc_desc_root - left_icon = scope:joiner.house - right_icon = scope:bloc.leading_house - custom_description = { - text = join_house_bloc_effect - subject = scope:joiner - object = scope:bloc.leading_house.house_head - } - } - every_player = { - limit = { - confederation ?= scope:bloc - NOT = { this = root } - } - send_interface_message = { - type = msg_joined_house_bloc - title = msg_joined_bloc - desc = msg_joined_bloc_desc - left_icon = scope:joiner.house - right_icon = scope:bloc.leading_house - custom_description = { - text = join_house_bloc_effect - subject = scope:joiner - object = scope:bloc.leading_house.house_head - } - } - } - remove_character_flag = bloc_message_flag - } -} - -tgp_house_blocs.0010 = { - type = character_event - hidden = yes - - immediate = { - bloc_leader_change_aspiration_cohesion_effect = yes - } -} - -# Strength Unlock - -tgp_house_blocs.1001 = { - type = character_event - title = tgp_house_blocs.1001.t - desc = tgp_house_blocs.1001.desc - theme = war - left_portrait = { - character = root - animation = thinking - } - right_portrait = { - character = scope:bloc_leader - animation = japanese_war_fan - } - override_background = { reference = army_camp } - - trigger = { - is_ruler = yes - exists = house.house_confederation - NOT = { is_at_war_with = house.house_confederation.leading_house.house_head } - } - - immediate = { - house = { - house_confederation = { - leading_house.house_head = { save_scope_as = bloc_leader } - } - every_house_member = { - limit = { - is_landed = yes - top_liege = root.top_liege - OR = { - liege = scope:bloc_leader - liege = root - } - NOR = { - this = root - is_at_war_with = house.house_confederation.leading_house.house_head - } - } - add_to_list = war_joiners - } - } - } - - option = { - name = tgp_house_blocs.1001.a - scope:war = { - add_attacker = root - } - every_in_list = { - list = war_joiners - save_temporary_scope_as = war_joiner_temp - scope:war = { - add_attacker = scope:war_joiner_temp - } - } - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_house_blocs.1001.b - house = { - set_variable = { - name = bloc_leaving_reason - value = flag:reason_events - days = 4 - } - tgp_leave_house_bloc_effect = { - OPINION = flag:yes - TRUCE = flag:yes - } - } - ai_chance = { - base = 0 - } - } -} diff --git a/events/dlc/tgp/tgp_interaction_events.txt b/events/dlc/tgp/tgp_interaction_events.txt deleted file mode 100644 index acacb5c8e..000000000 --- a/events/dlc/tgp/tgp_interaction_events.txt +++ /dev/null @@ -1,1185 +0,0 @@ -namespace = tgp_interaction_event - -# Send Treasury interaction events -tgp_interaction_event.0001 = { - type = letter_event - opening = char_interaction.0010.opening - desc = tgp_interaction_event.0001.desc - sender = scope:recipient - - trigger = { - scope:actor = { - is_alive = yes - } - scope:recipient = { - is_alive = yes - } - } - - immediate = { - # Let's calculate a reward - random_list = { - 10 = { # Give hook - trigger = { - can_add_hook = { - target = scope:recipient - type = favor_hook - } - } - modifier = { - is_liege_or_above_of = scope:recipient - factor = 1.5 - } - modifier = { # Non-powerful families are more likely to offer a hook - scope:recipient.house ?= { - is_powerful_family = no - is_dominant_family = no - } - factor = 1.5 - } - - save_scope_as = treasury_hook - } - 10 = { # Become a disciple - trigger = { - scope:recipient = { - NOR = { - # Does not have any of these relations already - any_relation = { type = disciple } - any_relation = { type = elder } - - # And is someone who could actually be a disciple - has_trait = ambitious - has_trait = arrogant - } - } - } - modifier = { - scope:recipient = { - has_trait = trusting - } - add = 5 - } - modifier = { - scope:recipient = { - has_trait = humble - } - add = 5 - } - - save_scope_as = treasury_become_disciple - } - 10 = { # Give influence - modifier = { - scope:recipient.influence_level > 3 - add = 10 - } - - save_scope_as = treasury_influence - } - } - } - - option = { - name = tgp_interaction_event.0001.a - - switch = { - trigger = exists - scope:treasury_hook = { - add_hook = { - target = scope:recipient - type = favor_hook - } - } - scope:treasury_become_disciple = { - set_elder_relation_effect = { - ELDER = scope:actor - DISCIPLE = scope:recipient - MERIT = minor_merit_gain - } - } - scope:treasury_influence = { - change_influence = medium_influence_gain - } - } - } -} - -# Request Military Aid interaction events -# Recipient receives the request -tgp_interaction_event.0010 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = tgp_interaction_event.0010.desc - sender = scope:actor - - trigger = { - scope:actor = { is_alive = yes } - scope:recipient = { is_alive = yes } - scope:joining_governor = { is_alive = yes } - } - - option = { # Join the war yourself (if applicable) - name = tgp_interaction_event.0010.a - trigger = { - trigger_if = { - limit = { - this = top_liege - } - is_character_interaction_valid = { - recipient = scope:actor - interaction = join_vassal_war_interaction - } - } - trigger_else = { - vassal_contract_has_flag = celestial_military_appointment - NOR = { - this = scope:actor - any_war_ally = { this = scope:actor } - any_war_enemy = { this = scope:actor } - is_at_war_with = scope:actor - } - } - } - - save_scope_as = joining_character - if = { - limit = { - this = top_liege - is_character_interaction_valid = { - recipient = scope:actor - interaction = join_vassal_war_interaction - } - } - custom_tooltip = { - text = join_vassal_war_interaction_desc - open_interaction_window = { - interaction = join_vassal_war_interaction - actor = root - recipient = scope:actor - } - } - } - else = { - scope:actor = { - every_character_war = { - limit = { - is_war_leader = scope:actor - is_attacker = scope:actor - } - add_attacker = scope:joining_character - } - every_character_war = { - limit = { - is_war_leader = scope:actor - is_defender = scope:actor - } - add_defender = scope:joining_character - } - - # Send response to actor - trigger_event = tgp_interaction_event.0012 - } - } - - ai_chance = { - base = 0 - } - } - option = { # Have any military governor join the war - name = tgp_interaction_event.0010.b - - scope:joining_governor = { - save_scope_as = joining_character - trigger_event = tgp_interaction_event.0011 - } - scope:actor = { - every_character_war = { - limit = { - is_war_leader = scope:actor - is_attacker = scope:actor - } - add_attacker = scope:joining_character - } - every_character_war = { - limit = { - is_war_leader = scope:actor - is_defender = scope:actor - } - add_defender = scope:joining_character - } - - # Send response to actor - trigger_event = tgp_interaction_event.0012 - } - - ai_chance = { # The AI always sends someone - base = 100 - } - } - option = { # Players have the option to not send anyone, and use celestial_send_military_aid_interaction instead - name = tgp_interaction_event.0010.c - - custom_tooltip = { - text = celestial_send_military_aid_interaction - open_interaction_window = { - interaction = celestial_send_military_aid_interaction - actor = root - recipient = scope:actor - } - } - - ai_chance = { - base = 0 - } - } -} - -# Military governor receives an order to join the war -tgp_interaction_event.0011 = { - type = letter_event - opening = tgp_interaction_event.0011.opening - desc = tgp_interaction_event.0011.desc - sender = scope:recipient - - immediate = { - show_as_tooltip = { - scope:actor = { - every_character_war = { - limit = { - is_war_leader = scope:actor - is_attacker = scope:actor - } - add_attacker = scope:joining_governor - } - every_character_war = { - limit = { - is_war_leader = scope:actor - is_defender = scope:actor - } - add_defender = scope:joining_governor - } - } - } - } - - option = { - name = { - trigger = { - top_liege.cp:councillor_marshal ?= scope:recipient - } - text = tgp_interaction_event.0011.a - } - name = { - trigger = { - NOT = { top_liege.cp:councillor_marshal ?= scope:recipient } - } - text = tgp_interaction_event.0011.b - } - } -} - -# Actor receives a response -tgp_interaction_event.0012 = { - type = letter_event - opening = tgp_interaction_event.0011.opening - desc = { - triggered_desc = { - trigger = { - scope:joining_character = scope:recipient - } - desc = tgp_interaction_event.0012.desc_marshal - } - desc = tgp_interaction_event.0012.desc_governor - } - sender = scope:recipient - - immediate = { - show_as_tooltip = { - every_character_war = { - limit = { - is_war_leader = scope:actor - is_attacker = scope:actor - } - add_attacker = scope:joining_character - } - every_character_war = { - limit = { - is_war_leader = scope:actor - is_defender = scope:actor - } - add_defender = scope:joining_character - } - } - } - - option = { - name = tgp_interaction_event.0012.a - } -} - -# Recipient/governor receives news of military governor joining war -tgp_interaction_event.0015 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = tgp_interaction_event.0015.desc - sender = scope:actor - - immediate = { - custom_tooltip = celestial_send_military_aid_effect_desc - } - - option = { - name = tgp_interaction_event.0012.a - } -} - -# Secondary recipient/military governor receives order to join war -tgp_interaction_event.0016 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = tgp_interaction_event.0016.desc - sender = scope:actor - - immediate = { - custom_tooltip = celestial_send_military_aid_effect_desc - } - - option = { - name = tgp_interaction_event.0016.a - } -} - -# Siphon Treasury starting event -tgp_interaction_event.0020 = { - type = character_event - title = tgp_interaction_event.0020.t - desc = tgp_interaction_event.0020.desc - theme = generic_intrigue_scheme - left_portrait = { - character = root - animation = schadenfreude - } - - option = { - name = tgp_interaction_event.0020.a - custom_tooltip = siphon_destination_gold_tt - scope:scheme = { - set_variable = { - name = siphon_destination - value = flag:gold - } - } - ai_chance = { - base = 0 - modifier = { - gold <= treasury - add = 100 - } - } - } - option = { - name = tgp_interaction_event.0020.b - custom_tooltip = siphon_destination_treasury_tt - scope:scheme = { - set_variable = { - name = siphon_destination - value = flag:treasury - } - } - ai_chance = { - base = 0 - modifier = { - gold > treasury - add = 100 - } - } - } -} - -# Break with Elder notification event -tgp_interaction_event.0030 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = { - desc = tgp_interaction_event.0030.desc - triggered_desc = { - trigger = { exists = scope:new_elder } - desc = tgp_interaction_event.0030.desc_new_elder - } - } - sender = scope:actor - - immediate = { - show_as_tooltip = { - scope:actor = { - remove_relation_elder = scope:recipient - if = { - limit = { - exists = scope:new_elder - } - set_relation_elder = scope:new_elder - root = { - set_relation_grudge = scope:new_elder - } - } - } - } - } - - option = { - name = { - trigger = { - exists = scope:new_elder - } - text = tgp_interaction_event.0030.a_new_elder - } - name = tgp_interaction_event.0030.a - } -} - -# Find Elder notification event -tgp_interaction_event.0031 = { - type = letter_event - opening = tgp_interaction_event.0031.opening - desc = tgp_interaction_event.0031.desc - sender = scope:actor - - immediate = { - } - - option = { - name = tgp_interaction_event.0031.a - scope:actor = { trigger_event = tgp_interaction_event.00311 } - show_as_tooltip = { - scope:actor = { - set_elder_relation_effect = { - ELDER = scope:secondary_recipient - DISCIPLE = scope:actor - MERIT = minor_merit_gain - } - } - } - ai_will_select = { - value = scope:secondary_recipient.find_elder_acceptance_value - } - } - option = { - name = tgp_interaction_event.0031.b - scope:actor = { - send_interface_toast = { - type = event_toast_effect_bad - title = tgp_interaction_event.0031.b.tt - left_icon = scope:secondary_recipient - add_opinion = { - target = scope:secondary_recipient - modifier = refused_to_be_elder_opinion - opinion = -10 - } - } - } - ai_will_select = { - value = scope:secondary_recipient.find_elder_acceptance_value - multiply = -1 - } - } -} - -scripted_effect tgp_dynastic_cycle_add_to_elders_movement_effect = { - custom_tooltip = tgp_dynastic_cycle_add_to_elders_movement_effect_tt - if = { - limit = { - scope:secondary_recipient = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = expansion_movement - } - } - } - set_variable = { - name = movement_member - value = flag:expansion - } - } - else_if = { - limit = { - scope:secondary_recipient = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = advancement_movement - } - } - } - set_variable = { - name = movement_member - value = flag:advancement - } - } - else_if = { - limit = { - scope:secondary_recipient = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = pro_hegemon_movement - } - } - } - set_variable = { - name = movement_member - value = flag:pro_hegemon - } - } - else_if = { - limit = { - scope:secondary_recipient = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = conservative_movement - } - } - } - set_variable = { - name = movement_member - value = flag:conservative - } - } -} - -tgp_interaction_event.00311 = { - type = letter_event - opening = tgp_interaction_event.00311.opening - desc = { - desc = tgp_interaction_event.00311.desc.intro - first_valid = { - triggered_desc = { - trigger = { - exists = scope:elder_movement - } - desc = tgp_interaction_event.00311.desc.movement - } - desc = tgp_interaction_event.00311.desc.no_movement - } - } - sender = scope:secondary_recipient - - immediate = { - scope:actor = { - set_elder_relation_effect = { - ELDER = scope:secondary_recipient - DISCIPLE = scope:actor - MERIT = minor_merit_gain - } - } - if = { - limit = { - situation:dynastic_cycle ?= { - any_situation_participant = { - this = scope:actor - } - any_situation_participant = { - this = scope:secondary_recipient - } - } - scope:secondary_recipient = { - NOT = { - top_participant_group:dynastic_cycle = { participant_group_type = undecided_movement } - } - } - scope:actor = { - NOT = { is_in_same_movement_as = { TARGET = scope:secondary_recipient } } - } - } - scope:secondary_recipient = { - top_participant_group:dynastic_cycle ?= { save_scope_as = elder_movement } - } - top_participant_group:dynastic_cycle ?= { save_scope_as = my_movement } - } - } - - option = { # I'll join - name = tgp_interaction_event.00311.a - trigger = { exists = scope:elder_movement } - tgp_dynastic_cycle_add_to_elders_movement_effect = yes - ai_chance = { - base = 100 - } - } - - option = { # Nah - name = tgp_interaction_event.00311.b - trigger = { exists = scope:elder_movement } - change_influence = major_influence_loss - scope:secondary_recipient = { - add_opinion = { - target = root - opinion = -20 - modifier = disappointed_opinion - } - } - ai_chance = { - base = 100 - modifier = { # AI will always join the movement if possible - exists = scope:elder_movement - factor = 0 - } - } - } - - option = { # Not in China - name = tgp_interaction_event.00311.c - trigger = { - NOT = { exists = scope:elder_movement } - } - ai_chance = { - base = 100 - } - } -} - -# Break with Disciple notification event -tgp_interaction_event.0032 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = tgp_interaction_event.0032.desc - - sender = scope:actor - - immediate = { - show_as_tooltip = { - scope:actor = { - remove_relation_disciple = scope:recipient - } - } - } - - option = { - name = tgp_interaction_event.0032.a - } -} - -# Secretary Director changed his own mandate -tgp_interaction_event.0041 = { - type = letter_event - opening = tgp_interaction_event.0010.opening - desc = tgp_interaction_event.0041.desc - sender = scope:actor - - immediate = { - show_as_tooltip = { - switch = { - trigger = yes - scope:placate_movements = { - set_diarchy_mandate = placate_movements - scope:actor = { - set_variable = { - name = diarch_forced_mandate - value = flag:placate_movements - } - } - } - scope:promote_might = { - set_diarchy_mandate = promote_might - scope:actor = { - set_variable = { - name = diarch_forced_mandate - value = flag:promote_might - } - } - } - scope:promote_merit = { - set_diarchy_mandate = promote_merit - scope:actor = { - set_variable = { - name = diarch_forced_mandate - value = flag:promote_merit - } - } - } - } - } - } - option = { - name = tgp_interaction_event.0041.a - scope:actor = { - tgp_activate_catalyst_against_hegemon_effect = { - HEGEMON = root - CATALYST = catalyst_diarch_mandate - } - } - } -} - -# Secretary Director trains knights -tgp_interaction_event.0042 = { - type = character_event - title = ep3_contract_event.0091.t - desc = { - desc = ep3_contract_event.0091.desc - first_valid = { - triggered_desc = { - trigger = { scope:helper = root } - desc = { - desc = ep3_contract_event.0091.desc_me - first_valid = { - triggered_desc = { - trigger = { root.prowess < high_skill_rating } - desc = ep3_contract_event.0091.desc_me_high_prowess - } - desc = ep3_contract_event.0091.desc_me_low_prowess - } - } - } - desc = { - desc = ep3_contract_event.0091.desc_helper - first_valid = { - triggered_desc = { - trigger = { scope:helper.prowess < high_skill_rating } - desc = ep3_contract_event.0091.desc_high_prowess - } - desc = ep3_contract_event.0091.desc_low_prowess - } - } - } - desc = ep3_contract_event.0091.desc_outro - } - theme = war - left_portrait = { - character = root - triggered_animation = { - trigger = { - scope:helper = root - root.prowess < high_skill_rating - } - animation = random_weapon_yield - } - triggered_animation = { - trigger = { - scope:helper = root - root.prowess >= high_skill_rating - } - animation = inspect_weapon - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess < high_skill_rating - } - animation = stunned - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess >= high_skill_rating - } - animation = disappointed - } - } - right_portrait = { - character = scope:knight - triggered_animation = { - trigger = { - scope:helper = root - root.prowess < high_skill_rating - } - animation = random_weapon_celebrate - } - triggered_animation = { - trigger = { - scope:helper = root - root.prowess >= high_skill_rating - } - animation = random_weapon_yield - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess < high_skill_rating - } - animation = random_weapon_celebrate - } - triggered_animation = { - trigger = { - scope:helper != root - scope:helper.prowess >= high_skill_rating - } - animation = random_weapon_yield - } - } - lower_left_portrait = { - trigger = { scope:helper != root } - character = scope:helper - } - lower_right_portrait = { - character = scope:task_contract_councillor - } - lower_center_portrait = { - character = scope:task_contract_councillor_liege - } - - immediate = { - scope:recipient = { - save_scope_as = task_contract_employer - cp:councillor_marshal ?= { - if = { - limit = { - this != scope:knight - } - save_scope_as = task_contract_councillor - } - } - } - cp:councillor_marshal ?= { - add_to_list = helpers_list - } - # search for anyone that could help you train them - random_court_position_holder = { - type = grand_guardian_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = fire_dragon_engineer_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = chief_qadi_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = garuda_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = court_tutor_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = master_of_horse_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = master_of_hunt_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = bodyguard_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = champion_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = executioner_court_position - add_to_list = helpers_list - } - random_court_position_holder = { - type = master_assassin_court_position - add_to_list = helpers_list - } - random_in_list = { - list = helpers_list - save_scope_as = helper - } - if = { - limit = { - NOT = { exists = scope:helper } - } - save_scope_as = helper - } - scope:helper = { - random_character_trait = { - limit = { - has_trait_category = commander - } - save_scope_as = trait_to_teach - } - } - scope:helper = { - set_signature_weapon_effect = yes - } - scope:knight = { - set_signature_weapon_effect = yes - } - } - - # steal the knight - option = { - name = ep3_contract_event.0091.a - trigger = { scope:knight = { is_landed = no } } - duel = { - skill = diplomacy - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_recruit - modifier = { - add = root.prestige_level - factor = 5 - } - send_interface_toast = { - title = ep3_contract_event.0091_won_recruit - left_icon = root - right_icon = scope:knight - add_courtier = scope:knight - change_influence = { - value = scope:knight.prowess - multiply = -4 - } - pay_short_term_gold = { - target = scope:recipient - gold = { - value = scope:knight.prowess - multiply = 5 - } - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0091_lost_recruit - send_interface_toast = { - title = ep3_contract_event.0091_lost_recruit - left_icon = root - right_icon = scope:knight - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - impatient = minor_stress_impact_loss - just = minor_stress_impact_gain - honest = minor_stress_impact_gain - callous = minor_stress_impact_loss - deceitful = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = diplomacy - } - } - } - - # teach them a trait you know - option = { - name = ep3_contract_event.0091.b - trigger = { - exists = scope:trait_to_teach - scope:knight = { - NOT = { has_trait = scope:trait_to_teach } - } - } - duel = { - skill = martial - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_trait - modifier = { - add = root.learning - } - send_interface_toast = { - title = ep3_contract_event.0091_won_trait - left_icon = root - right_icon = scope:knight - scope:knight = { - add_trait = scope:trait_to_teach - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - } - 25 = { - desc = ep3_contract_event.0091_lost - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - arrogant = minor_stress_impact_loss - stubborn = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - highest_skill = martial - } - } - } - - # let helper teach them some prowess - option = { - name = ep3_contract_event.0091.c - trigger = { - exists = scope:helper - scope:helper != root - } - scope:helper = { - duel = { - skill = prowess - target = scope:knight - 25 = { - desc = ep3_contract_event.0091_won_helper - send_interface_toast = { - title = ep3_contract_event.0091_won_helper - left_icon = root - right_icon = scope:knight - scope:knight = { - add_prowess_skill = { - value = scope:helper.prowess - subtract = scope:knight.prowess - divide = 4 - add = { - value = scope:knight.ai_boldness - divide = 10 - } - add = { - value = scope:helper.ai_boldness - divide = 10 - } - min = 2 - max = 5 - } - force_character_skill_recalculation = yes - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - } - 25 = { - desc = ep3_contract_event.0091_lost - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - } - } - } - stress_impact = { - arrogant = minor_stress_impact_gain - ambitious = minor_stress_impact_gain - humble = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - add = 100 - scope:helper.prowess > scope:knight.prowess - } - } - } - - # teach them some prowess yourself - option = { - name = ep3_contract_event.0091.d - duel = { - skill = prowess - target = scope:knight - 50 = { - desc = ep3_contract_event.0091_won - send_interface_toast = { - title = ep3_contract_event.0091_won - left_icon = root - right_icon = scope:knight - scope:knight = { - add_prowess_skill = { - value = root.prowess - subtract = scope:knight.prowess - divide = 4 - add = { - value = scope:knight.ai_boldness - divide = 10 - } - add = { - value = root.ai_boldness - divide = 10 - } - min = 1 - max = 4 - } - force_character_skill_recalculation = yes - } - } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - add = { - value = scope:knight.ai_energy - divide = -10 - } - } - modifier = { - add = { - value = root.ai_energy - divide = -10 - } - } - } - 50 = { - desc = ep3_contract_event.0091_lost - send_interface_toast = { - title = ep3_contract_event.0091_lost - left_icon = root - right_icon = scope:knight - } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - modifier = { - add = { - value = scope:knight.ai_energy - divide = 10 - } - } - modifier = { - add = { - value = root.ai_energy - divide = 10 - } - } - } - } - stress_impact = { - arrogant = minor_stress_impact_loss - ambitious = minor_stress_impact_loss - humble = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - add = 100 - prowess > scope:knight.prowess - } - } - } -} diff --git a/events/dlc/tgp/tgp_japan_career_events.txt b/events/dlc/tgp/tgp_japan_career_events.txt deleted file mode 100644 index 38962a159..000000000 --- a/events/dlc/tgp/tgp_japan_career_events.txt +++ /dev/null @@ -1,125 +0,0 @@ -################################### -# JAPAN CAREER EVENTS -################################### -namespace = tgp_japan_career - -### EVENT LIST #################################################################### -## 0001 - Intro in 1066 -## 0002 - Intro in 1178 -################################################################################### - -# Intro Event - Who are you playing as and what is your situation -# Also acts as an introduction when you start playing in Japan -tgp_japan_career.0001 = { - type = character_event - window = big_event_window - title = tgp_japan_career.0001.t - desc = { - desc = tgp_japan_career.0001.desc - first_valid = { - triggered_desc = { - trigger = { has_title = title:k_chrysanthemum_throne } #is tenno - desc = tgp_japan_career.0001.tenno_desc - } - triggered_desc = { - trigger = { has_title = title:e_japan } #is kampaku - desc = tgp_japan_career.0001.kampaku_desc - } - triggered_desc = { - trigger = { government_has_flag = government_is_japan_feudal } #is soryo - desc = tgp_japan_career.0001.soryo_desc - } - triggered_desc = { - trigger = { government_has_flag = government_is_japan_administrative } #is ritsuryo - desc = tgp_japan_career.0001.ritsuryo_desc - } - } - desc = tgp_japan_career.0001.desc_2 - } - theme = diplomacy - override_icon = { - trigger = { government_has_flag = government_is_japan_feudal } - reference ="gfx/interface/icons/event_types/type_war.dds" - } - override_header_background = { - trigger = { government_has_flag = government_is_japan_feudal } - reference = "gfx/interface/window_event/event_header_red.dds" - } - override_background = { - trigger = { - has_title = title:k_chrysanthemum_throne - } - reference = tgp_garden_asia - } - override_background = { - trigger = { - has_title = title:e_japan - } - reference = tgp_study_japan - } - override_background = { - trigger = { - government_has_flag = government_is_japan_feudal - } - reference = tgp_crossroad_inn_asia - } - override_background = { - trigger = { - government_has_flag = government_is_japan_administrative - } - reference = bedchamber - } - - - left_portrait = { - character = root - triggered_animation = { - trigger = { - government_has_flag = government_is_japan_feudal #Soryo ruler should have their sword out - } - animation = inspect_weapon - } - animation = chancellor - } - - right_portrait = { - character = player_heir - triggered_animation = { - trigger = { - government_has_flag = government_is_japan_feudal #Soryo ruler should have their sword out - } - animation = horse_archer_aggressive - camera = camera_event_scheme_vs_left_look_left - } - animation = holding_scrolls - } - - trigger = { - has_tgp_dlc_trigger = yes - government_is_japanese_trigger = yes - } - - immediate = { - # Scopes - save_scope_as = new_ruler - house ?= { save_scope_as = ruler_family } - top_liege = { save_scope_as = kampaku } - player_heir ?= { save_scope_as = heir } - } - - option = { - name = tgp_japan_career.0001.a - add_character_modifier = { - modifier = tgp_japan_peace_modifier - years = 20 - } - } - - option = { - name = tgp_japan_career.0001.b - add_character_modifier = { - modifier = tgp_japan_war_modifier - years = 20 - } - } -} diff --git a/events/dlc/tgp/tgp_japan_decision_events.txt b/events/dlc/tgp/tgp_japan_decision_events.txt deleted file mode 100644 index 39703a341..000000000 --- a/events/dlc/tgp/tgp_japan_decision_events.txt +++ /dev/null @@ -1,3317 +0,0 @@ -namespace = tgp_japan_decision - -# tgp_japan_establish_house_fief_decision - -scripted_effect tgp_establish_house_fief_save_scopes_effect = { - top_liege ?= { save_scope_as = regent } - save_scope_as = new_head - house = { - save_scope_as = old_house - house_head = { save_scope_as = old_head } - } - random_held_title = { - limit = { is_noble_family_title = yes } - save_scope_as = old_nf_title - } -} - -tgp_japan_decision.9001 = { # CHOOSE HOUSE NAME EVENT - WITH WIDGET - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { has_character_flag = establish_house_fief } - desc = tgp_japan_decision.9001.t.fief - } - desc = tgp_japan_decision.9001.t.cadet - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - this != scope:old_head - has_character_flag = establish_house_fief - } - desc = tgp_japan_decision.9001.desc.fief_split_house - } - desc = tgp_japan_decision.9001.desc.cadet - } - first_valid = { - triggered_desc = { - trigger = { - has_character_flag = establish_house_fief - var:petition_liege_house_fief_allowed_flag ?= top_liege - top_liege = { government_allows = administrative } - } - desc = tgp_japan_decision.9001.desc.permission - } - triggered_desc = { - trigger = { - has_character_flag = establish_house_fief - top_liege = { government_allows = administrative } - } - desc = tgp_japan_decision.9001.desc.crime - } - triggered_desc = { - trigger = { has_character_flag = establish_house_fief } - desc = tgp_japan_decision.9001.desc.feudal - } - } - desc = tgp_japan_decision.9001.desc.fief_name - } - theme = realm - - left_portrait = { - character = root - animation = thinking - } - lower_left_portrait = { - character = scope:old_head - trigger = { - NOR = { - scope:regent ?= this - root = this - } - } - } - lower_right_portrait = scope:regent - - #NAMING WIDGET - widget = { - gui = "event_window_widget_enter_text" - container = "dynamic_birth_name" - controller = { - type = text - data = { - key = new_japanese_house_name - default = { - localization_key = dynn_Abe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Abe } } - } - default = { - localization_key = dynn_Adachi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Adachi } } - } - default = { - localization_key = dynn_Aida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Aida } } - } - default = { - localization_key = dynn_Aihara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Aihara } } - } - default = { - localization_key = dynn_AikO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_AikO_ } } - } - default = { - localization_key = dynn_Akamatsu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akamatsu } } - } - default = { - localization_key = dynn_Akasu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akasu } } - } - default = { - localization_key = dynn_Akata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akata } } - } - default = { - localization_key = dynn_Akahori - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akahori } } - } - default = { - localization_key = dynn_Akatsuka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akatsuka } } - } - default = { - localization_key = dynn_Akazawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akazawa } } - } - default = { - localization_key = dynn_Akiyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akiyama } } - } - default = { - localization_key = dynn_Akizuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Akizuki } } - } - default = { - localization_key = dynn_Amago - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Amago } } - } - default = { - localization_key = dynn_Amano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Amano } } - } - default = { - localization_key = dynn_Amenomori - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Amenomori } } - } - default = { - localization_key = dynn_Anami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Anami } } - } - default = { - localization_key = dynn_Ano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ano } } - } - default = { - localization_key = dynn_Anzai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Anzai } } - } - default = { - localization_key = dynn_Aoyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Aoyama } } - } - default = { - localization_key = dynn_Asaba - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asaba } } - } - default = { - localization_key = dynn_Asaka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asaka } } - } - default = { - localization_key = dynn_Asakura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asakura } } - } - default = { - localization_key = dynn_Asami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asami } } - } - default = { - localization_key = dynn_Asano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asano } } - } - default = { - localization_key = dynn_Asari - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asari } } - } - default = { - localization_key = dynn_Ashida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ashida } } - } - default = { - localization_key = dynn_Ashikaga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ashikaga } } - } - default = { - localization_key = dynn_Ashina_JP - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ashina_JP } } - } - default = { - localization_key = dynn_Aso - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Aso } } - } - default = { - localization_key = dynn_Asuke - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Asuke } } - } - default = { - localization_key = dynn_Atobe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Atobe } } - } - default = { - localization_key = dynn_Awata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Awata } } - } - default = { - localization_key = dynn_Bessho - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Bessho } } - } - default = { - localization_key = dynn_Chiba - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Chiba } } - } - default = { - localization_key = dynn_Chichibu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Chichibu } } - } - default = { - localization_key = dynn_ChO_sokabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ChO_sokabe } } - } - default = { - localization_key = dynn_Date - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Date } } - } - default = { - localization_key = dynn_Deura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Deura } } - } - default = { - localization_key = dynn_Doi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Doi } } - } - default = { - localization_key = dynn_Ebina - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ebina } } - } - default = { - localization_key = dynn_Ema - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ema } } - } - default = { - localization_key = dynn_Fukushima - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Fukushima } } - } - default = { - localization_key = dynn_Furuichi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Furuichi } } - } - default = { - localization_key = dynn_Hachisuka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hachisuka } } - } - default = { - localization_key = dynn_Haga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Haga } } - } - default = { - localization_key = dynn_HanyU__2 - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_HanyU__2 } } - } - default = { - localization_key = dynn_Hara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hara } } - } - default = { - localization_key = dynn_Harada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Harada } } - } - default = { - localization_key = dynn_Haraishi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Haraishi } } - } - default = { - localization_key = dynn_Hasuike - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hasuike } } - } - default = { - localization_key = dynn_Hatano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hatano } } - } - default = { - localization_key = dynn_Hatakeyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hatakeyama } } - } - default = { - localization_key = dynn_Hatta - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hatta } } - } - default = { - localization_key = dynn_Hattori - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hattori } } - } - default = { - localization_key = dynn_Hayami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hayami } } - } - default = { - localization_key = dynn_Hayashi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hayashi } } - } - default = { - localization_key = dynn_Henmi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Henmi } } - } - default = { - localization_key = dynn_Higuchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Higuchi } } - } - default = { - localization_key = dynn_Hiki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hiki } } - } - default = { - localization_key = dynn_Hikida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hikida } } - } - default = { - localization_key = dynn_Hiraga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hiraga } } - } - default = { - localization_key = dynn_Hirukawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hirukawa } } - } - default = { - localization_key = dynn_Hizume - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hizume } } - } - default = { - localization_key = dynn_HO_jO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_HO_jO_ } } - } - default = { - localization_key = dynn_Honda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Honda } } - } - default = { - localization_key = dynn_HonjO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_HonjO_ } } - } - default = { - localization_key = dynn_Hoshina - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hoshina } } - } - default = { - localization_key = dynn_Hosokawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hosokawa } } - } - default = { - localization_key = dynn_Hotta - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hotta } } - } - default = { - localization_key = dynn_Hozumi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Hozumi } } - } - default = { - localization_key = dynn_Iba_JP - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Iba_JP } } - } - default = { - localization_key = dynn_Ichiji - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ichiji } } - } - default = { - localization_key = dynn_Iga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Iga } } - } - default = { - localization_key = dynn_Ii - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ii } } - } - default = { - localization_key = dynn_Iida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Iida } } - } - default = { - localization_key = dynn_Iinuma - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Iinuma } } - } - default = { - localization_key = dynn_Ikeda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ikeda } } - } - default = { - localization_key = dynn_Ikoma - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ikoma } } - } - default = { - localization_key = dynn_Imai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Imai } } - } - default = { - localization_key = dynn_Imagawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Imagawa } } - } - default = { - localization_key = dynn_Ina - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ina } } - } - default = { - localization_key = dynn_Inage - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Inage } } - } - default = { - localization_key = dynn_Inazawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Inazawa } } - } - default = { - localization_key = dynn_Inomata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Inomata } } - } - default = { - localization_key = dynn_Inoue - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Inoue } } - } - default = { - localization_key = dynn_IntO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_IntO_ } } - } - default = { - localization_key = dynn_Irie - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Irie } } - } - default = { - localization_key = dynn_Irobe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Irobe } } - } - default = { - localization_key = dynn_Isa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Isa } } - } - default = { - localization_key = dynn_Ishikawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ishikawa } } - } - default = { - localization_key = dynn_Ishitani - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ishitani } } - } - default = { - localization_key = dynn_Isshiki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Isshiki } } - } - default = { - localization_key = dynn_Itakura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Itakura } } - } - default = { - localization_key = dynn_ItO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ItO_ } } - } - default = { - localization_key = dynn_ItO__2 - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ItO__2 } } - } - default = { - localization_key = dynn_Itoga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Itoga } } - } - default = { - localization_key = dynn_Izumi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Izumi } } - } - default = { - localization_key = dynn_Iwamatsu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Iwamatsu } } - } - default = { - localization_key = dynn_Jinbo - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Jinbo } } - } - default = { - localization_key = dynn_Kagami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kagami } } - } - default = { - localization_key = dynn_Kagawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kagawa } } - } - default = { - localization_key = dynn_Kaji - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kaji } } - } - default = { - localization_key = dynn_Kajiwara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kajiwara } } - } - default = { - localization_key = dynn_Kamachi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kamachi } } - } - default = { - localization_key = dynn_Kambara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kambara } } - } - default = { - localization_key = dynn_Kanazu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kanazu } } - } - default = { - localization_key = dynn_Kanbe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kanbe } } - } - default = { - localization_key = dynn_Kaneda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kaneda } } - } - default = { - localization_key = dynn_Kaneko - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kaneko } } - } - default = { - localization_key = dynn_Kano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kano } } - } - default = { - localization_key = dynn_Kasai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kasai } } - } - default = { - localization_key = dynn_Kasuga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kasuga } } - } - default = { - localization_key = dynn_Kasukabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kasukabe } } - } - default = { - localization_key = dynn_Katagiri - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Katagiri } } - } - default = { - localization_key = dynn_Kataoka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kataoka } } - } - default = { - localization_key = dynn_Katsuta - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Katsuta } } - } - default = { - localization_key = dynn_Kawagoe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kawagoe } } - } - default = { - localization_key = dynn_Kawasaki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kawasaki } } - } - default = { - localization_key = dynn_Kawazu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kawazu } } - } - default = { - localization_key = dynn_Kida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kida } } - } - default = { - localization_key = dynn_Kikkawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kikkawa } } - } - default = { - localization_key = dynn_Kikuchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kikuchi } } - } - default = { - localization_key = dynn_Kimotsuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kimotsuki } } - } - default = { - localization_key = dynn_Kira - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kira } } - } - default = { - localization_key = dynn_Kiso - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kiso } } - } - default = { - localization_key = dynn_Kitahara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kitahara } } - } - default = { - localization_key = dynn_KO_no - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KO_no } } - } - default = { - localization_key = dynn_KO_sokabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KO_sokabe } } - } - default = { - localization_key = dynn_Kobayakawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kobayakawa } } - } - default = { - localization_key = dynn_Kodama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kodama } } - } - default = { - localization_key = dynn_Kokubu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kokubu } } - } - default = { - localization_key = dynn_Kosaka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kosaka } } - } - default = { - localization_key = dynn_Kuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kuki } } - } - default = { - localization_key = dynn_Kumabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kumabe } } - } - default = { - localization_key = dynn_Kumagai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kumagai } } - } - default = { - localization_key = dynn_Kumasaka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kumasaka } } - } - default = { - localization_key = dynn_Kurita - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kurita } } - } - default = { - localization_key = dynn_Kutsuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kutsuki } } - } - default = { - localization_key = dynn_Maki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Maki } } - } - default = { - localization_key = dynn_Makino - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Makino } } - } - default = { - localization_key = dynn_Masuda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Masuda } } - } - default = { - localization_key = dynn_Matano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Matano } } - } - default = { - localization_key = dynn_Matsudaira - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Matsudaira } } - } - default = { - localization_key = dynn_Matsura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Matsura } } - } - default = { - localization_key = dynn_Migata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Migata } } - } - default = { - localization_key = dynn_Mikata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mikata } } - } - default = { - localization_key = dynn_Mimura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mimura } } - } - default = { - localization_key = dynn_Minase - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Minase } } - } - default = { - localization_key = dynn_Misawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Misawa } } - } - default = { - localization_key = dynn_Mitai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mitai } } - } - default = { - localization_key = dynn_Mitoya - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mitoya } } - } - default = { - localization_key = dynn_Miura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Miura } } - } - default = { - localization_key = dynn_Miyoshi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Miyoshi } } - } - default = { - localization_key = dynn_Mizokui - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mizokui } } - } - default = { - localization_key = dynn_Mochizuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mochizuki } } - } - default = { - localization_key = dynn_Mogami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mogami } } - } - default = { - localization_key = dynn_Mokusai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mokusai } } - } - default = { - localization_key = dynn_Momonoi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Momonoi } } - } - default = { - localization_key = dynn_Mori_JP # Not prounounced "Mōri" yet - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Mori_JP } } - } - default = { - localization_key = dynn_Murakami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Murakami } } - } - default = { - localization_key = dynn_Murayama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Murayama } } - } - default = { - localization_key = dynn_Nagae - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nagae } } - } - default = { - localization_key = dynn_Nagao - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nagao } } - } - default = { - localization_key = dynn_Nagasa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nagasa } } - } - default = { - localization_key = dynn_NakajO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_NakajO_ } } - } - default = { - localization_key = dynn_Nakamura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nakamura } } - } - default = { - localization_key = dynn_Nakano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nakano } } - } - default = { - localization_key = dynn_Namba - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Namba } } - } - default = { - localization_key = dynn_Namekata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Namekata } } - } - default = { - localization_key = dynn_Nanbu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nanbu } } - } - default = { - localization_key = dynn_NanjO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_NanjO_ } } - } - default = { - localization_key = dynn_Narita - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Narita } } - } - default = { - localization_key = dynn_Nasu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nasu } } - } - default = { - localization_key = dynn_Natsume - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Natsume } } - } - default = { - localization_key = dynn_Nemoto - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nemoto } } - } - default = { - localization_key = dynn_Nezu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nezu } } - } - default = { - localization_key = dynn_Nikaido - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nikaido } } - } - default = { - localization_key = dynn_Niki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Niki } } - } - default = { - localization_key = dynn_Nissai - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nissai } } - } - default = { - localization_key = dynn_Nogi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nogi } } - } - default = { - localization_key = dynn_Nomoto - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nomoto } } - } - default = { - localization_key = dynn_Nose - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nose } } - } - default = { - localization_key = dynn_Noyo - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Noyo } } - } - default = { - localization_key = dynn_Nishina - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nishina } } - } - default = { - localization_key = dynn_Nitta - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nitta } } - } - default = { - localization_key = dynn_Niwa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Niwa } } - } - default = { - localization_key = dynn_O_ba - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_ba } } - } - default = { - localization_key = dynn_O_hara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_hara } } - } - default = { - localization_key = dynn_O_i - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_i } } - } - default = { - localization_key = dynn_O_kawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_kawa } } - } - default = { - localization_key = dynn_O_mi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_mi } } - } - default = { - localization_key = dynn_O_miya - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_miya } } - } - default = { - localization_key = dynn_O_no - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_no } } - } - default = { - localization_key = dynn_O_suga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_suga } } - } - default = { - localization_key = dynn_O_ta - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_ta } } - } - default = { - localization_key = dynn_O_tawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_tawa } } - } - default = { - localization_key = dynn_O_tomo - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_tomo } } - } - default = { - localization_key = dynn_O_uchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_uchi } } - } - default = { - localization_key = dynn_O_zone - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_zone } } - } - default = { - localization_key = dynn_Obata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Obata } } - } - default = { - localization_key = dynn_Obu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Obu } } - } - default = { - localization_key = dynn_Oda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Oda } } - } - default = { - localization_key = dynn_Odagiri - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Odagiri } } - } - default = { - localization_key = dynn_Ogasawara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ogasawara } } - } - default = { - localization_key = dynn_Ogata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ogata } } - } - default = { - localization_key = dynn_Ogawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ogawa } } - } - default = { - localization_key = dynn_Okabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Okabe } } - } - default = { - localization_key = dynn_Okada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Okada } } - } - default = { - localization_key = dynn_Okazaki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Okazaki } } - } - default = { - localization_key = dynn_Onodera - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Onodera } } - } - default = { - localization_key = dynn_Onozaki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Onozaki } } - } - default = { - localization_key = dynn_Osada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Osada } } - } - default = { - localization_key = dynn_Oyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Oyama } } - } - default = { - localization_key = dynn_Oyamada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Oyamada } } - } - default = { - localization_key = dynn_Sado - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sado } } - } - default = { - localization_key = dynn_Sagae - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sagae } } - } - default = { - localization_key = dynn_Sagara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sagara } } - } - default = { - localization_key = dynn_Saji - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Saji } } - } - default = { - localization_key = dynn_Sakuma - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sakuma } } - } - default = { - localization_key = dynn_Sanada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sanada } } - } - default = { - localization_key = dynn_Sano - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sano } } - } - default = { - localization_key = dynn_Sasaki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sasaki } } - } - default = { - localization_key = dynn_Satake - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Satake } } - } - default = { - localization_key = dynn_Satomi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Satomi } } - } - default = { - localization_key = dynn_Sawara - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sawara } } - } - default = { - localization_key = dynn_Seki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Seki } } - } - default = { - localization_key = dynn_Seno_o - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Seno_o } } - } - default = { - localization_key = dynn_Shiba - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shiba } } - } - default = { - localization_key = dynn_Shibuya - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shibuya } } - } - default = { - localization_key = dynn_Shida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shida } } - } - default = { - localization_key = dynn_Shiga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shiga } } - } - default = { - localization_key = dynn_Shima - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shima } } - } - default = { - localization_key = dynn_Shimazu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shimazu } } - } - default = { - localization_key = dynn_ShimokO_be - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ShimokO_be } } - } - default = { - localization_key = dynn_Shinagawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shinagawa } } - } - default = { - localization_key = dynn_ShingU_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ShingU_ } } - } - default = { - localization_key = dynn_Shinmen - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shinmen } } - } - default = { - localization_key = dynn_Shioda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shioda } } - } - default = { - localization_key = dynn_Shionoya - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shionoya } } - } - default = { - localization_key = dynn_Shiratori - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Shiratori } } - } - default = { - localization_key = dynn_SO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SO_ } } - } - default = { - localization_key = dynn_Soga_2 - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Soga } } - } - default = { - localization_key = dynn_Sogabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sogabe } } - } - default = { - localization_key = dynn_SogO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SogO_ } } - } - default = { - localization_key = dynn_SO_ma - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SO_ma } } - } - default = { - localization_key = dynn_SO_sa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SO_sa } } - } - default = { - localization_key = dynn_Sugime - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sugime } } - } - default = { - localization_key = dynn_Sugimoto - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Sugimoto } } - } - default = { - localization_key = dynn_Suzuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Suzuki } } - } - default = { - localization_key = dynn_Tada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tada } } - } - default = { - localization_key = dynn_Taguchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Taguchi } } - } - default = { - localization_key = dynn_Takaoka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Takaoka } } - } - default = { - localization_key = dynn_Takayasu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Takayasu } } - } - default = { - localization_key = dynn_Takeda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Takeda } } - } - default = { - localization_key = dynn_Takeishi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Takeishi } } - } - default = { - localization_key = dynn_Takezaki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Takezaki } } - } - default = { - localization_key = dynn_Tamura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tamura } } - } - default = { - localization_key = dynn_Tanaka - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tanaka } } - } - default = { - localization_key = dynn_Tashiro - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tashiro } } - } - default = { - localization_key = dynn_TO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_TO_ } } - } - default = { - localization_key = dynn_TO_gO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_TO_gO_ } } - } - default = { - localization_key = dynn_Togashi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Togashi } } - } - default = { - localization_key = dynn_Toida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Toida } } - } - default = { - localization_key = dynn_Toki_JP - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Toki_JP } } - } - default = { - localization_key = dynn_Tokiwa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tokiwa } } - } - default = { - localization_key = dynn_Tokuda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tokuda } } - } - default = { - localization_key = dynn_Tokugawa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tokugawa } } - } - default = { - localization_key = dynn_Tomono - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tomono } } - } - default = { - localization_key = dynn_Tomura - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tomura } } - } - default = { - localization_key = dynn_Toshima - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Toshima } } - } - default = { - localization_key = dynn_Tsuchiya - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tsuchiya } } - } - default = { - localization_key = dynn_Tsutsumi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tsutsumi } } - } - default = { - localization_key = dynn_Toyoda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Toyoda } } - } - default = { - localization_key = dynn_Toyoyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Toyoyama } } - } - default = { - localization_key = dynn_Ueda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ueda } } - } - default = { - localization_key = dynn_Uesugi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Uesugi } } - } - default = { - localization_key = dynn_Ui - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ui } } - } - default = { - localization_key = dynn_Uji_ie - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Uji_ie } } - } - default = { - localization_key = dynn_Unno - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Unno } } - } - default = { - localization_key = dynn_Urakami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Urakami } } - } - default = { - localization_key = dynn_Usami - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Usami } } - } - default = { - localization_key = dynn_Ushimaru - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ushimaru } } - } - default = { - localization_key = dynn_Ushioda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Ushioda } } - } - default = { - localization_key = dynn_Usuki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Usuki } } - } - default = { - localization_key = dynn_Wada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Wada } } - } - default = { - localization_key = dynn_Wasada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Wasada } } - } - default = { - localization_key = dynn_Washizu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Washizu } } - } - default = { - localization_key = dynn_Watanabe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Watanabe } } - } - default = { - localization_key = dynn_Watari - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Watari } } - } - default = { - localization_key = dynn_Yamada - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamada } } - } - default = { - localization_key = dynn_Yamaga - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamaga } } - } - default = { - localization_key = dynn_Yamagata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamagata } } - } - default = { - localization_key = dynn_Yamaguchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamaguchi } } - } - default = { - localization_key = dynn_Yamamoto - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamamoto } } - } - default = { - localization_key = dynn_Yamana - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamana } } - } - default = { - localization_key = dynn_Yamauchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yamauchi } } - } - default = { - localization_key = dynn_Yashiro - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yashiro } } - } - default = { - localization_key = dynn_Yasu - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yasu } } - } - default = { - localization_key = dynn_Yasuda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yasuda } } - } - default = { - localization_key = dynn_Yasutomi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yasutomi } } - } - default = { - localization_key = dynn_Yoda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yoda } } - } - default = { - localization_key = dynn_Yokoyama - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yokoyama } } - } - default = { - localization_key = dynn_Yomoda - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yomoda } } - } - default = { - localization_key = dynn_Yoshida - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yoshida } } - } - default = { - localization_key = dynn_YU_ki - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_YU_ki } } - } - default = { - localization_key = dynn_Yuasa - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yuasa } } - } - default = { - localization_key = dynn_Yuri - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Yuri } } - } - ### KYOTO - default = { - localization_key = dynn_Awata - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Awata } } - } - default = { - localization_key = dynn_Awataguchi - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Awataguchi } } - } - default = { - localization_key = dynn_GojO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_GojO_ } } - } - default = { - localization_key = dynn_IchijO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_IchijO_ } } - } - default = { - localization_key = dynn_Kitabatake - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Kitabatake } } - } - default = { - localization_key = dynn_Konoe - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Konoe } } - } - default = { - localization_key = dynn_KyO_goku - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KyO_goku } } - } - default = { - localization_key = dynn_Nakamikado - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Nakamikado } } - } - default = { - localization_key = dynn_NijO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_NijO_ } } - } - default = { - localization_key = dynn_O_inomikado - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_O_inomikado } } - } - default = { - localization_key = dynn_Rokkaku - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Rokkaku } } - } - default = { - localization_key = dynn_RokujO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_RokujO_ } } - } - default = { - localization_key = dynn_SanjO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SanjO_ } } - } - default = { - localization_key = dynn_ShijO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_ShijO_ } } - } - default = { - localization_key = dynn_Tsuchimikado - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_Tsuchimikado } } - } - ### FUJIWARA - default = { - localization_key = dynn_AndO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_AndO_ } } - } - default = { - localization_key = dynn_EndO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_EndO_ } } - } - default = { - localization_key = dynn_GotO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_GotO_ } } - } - default = { - localization_key = dynn_KatO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KatO_ } } - } - default = { - localization_key = dynn_KondO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KondO_ } } - } - default = { - localization_key = dynn_KudO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_KudO_ } } - } - default = { - localization_key = dynn_MutO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_MutO_ } } - } - default = { - localization_key = dynn_SaitO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SaitO_ } } - } - default = { - localization_key = dynn_SatO_ - trigger = { is_target_in_variable_list = { name = japanese_house_names target = flag:dynn_SatO_ } } - } - ### OTHER - default = { - localization_key = japanese_house_domicile_barony - trigger = { - exists = scope:domicile_barony - trigger_if = { - limit = { has_variable_list = japanese_house_names } - variable_list_size = { - name = japanese_house_names - value < 2 - } - } - } - } - default = { - localization_key = japanese_house_random_barony - trigger = { - exists = scope:random_barony - NOT = { has_character_flag = found_cadet_branch } - trigger_if = { - limit = { has_variable_list = japanese_house_names } - variable_list_size = { - name = japanese_house_names - value < 2 - } - } - } - } - default = { - localization_key = japanese_house_first_name - trigger = { - exists = scope:old_head - has_character_flag = found_cadet_branch - trigger_if = { - limit = { has_variable_list = japanese_house_names } - variable_list_size = { - name = japanese_house_names - value < 2 - } - } - } - } - default = { - localization_key = japanese_house_primary_county - trigger = { - exists = scope:primary_county - trigger_if = { - limit = { has_variable_list = japanese_house_names } - variable_list_size = { - name = japanese_house_names - value < 3 - } - } - } - } - default = { - localization_key = japanese_house_domicile_county - trigger = { - exists = scope:domicile_county - trigger_if = { - limit = { has_variable_list = japanese_house_names } - variable_list_size = { - name = japanese_house_names - value < 3 - } - } - } - } - } - } - setup_scope = { - root = { save_scope_as = text_target } - } - } - - immediate = { - top_liege = { save_scope_as = regent } - save_scope_as = new_head - save_scope_as = new_house_head # don't ask - house = { - save_scope_as = old_house - house_head = { save_scope_as = old_head } - } - if = { - limit = { domicile.domicile_location.county.holder ?= root } - domicile.domicile_location.barony = { - save_scope_as = domicile_barony - county = { save_scope_as = domicile_county } - } - } - else_if = { - limit = { - is_landed = no - scope:old_head.domicile.domicile_location.county.holder ?= scope:old_head - } - scope:old_head.domicile.domicile_location.barony = { - save_scope_as = domicile_barony - county = { save_scope_as = domicile_county } - } - } - else_if = { - limit = { is_landed = yes } - save_scope_as = land_haver - } - else = { - limit = { house.house_head = { is_landed = yes } } - house.house_head = { save_scope_as = land_haver } - } - scope:land_haver.capital_county ?= { - save_scope_as = primary_county - random_county_province = { - limit = { - NOT = { has_holding_type = church_holding } - } - alternative_limit = { always = yes } - barony = { save_scope_as = random_barony } - } - } - hidden_effect = { - if = { - limit = { - NOT = { has_character_flag = found_cadet_branch } - } - if = { - limit = { domicile.domicile_location.county ?= title:c_yamashiro } - while = { - count = 3 - assign_japanese_house_name_options_kyoto_effect = yes - } - } - else = { - while = { - count = 3 - assign_japanese_house_name_options_effect = yes - } - } - } - else = { - if = { - limit = { domicile.domicile_location.county ?= title:c_yamashiro } - while = { - count = 1 - assign_japanese_house_name_options_kyoto_effect = yes - } - } - else = { - while = { - count = 1 - assign_japanese_house_name_options_effect = yes - } - } - } - } - if = { - limit = { is_ai = yes } - random_list = { - 10 = { - trigger = { has_variable_list = japanese_house_names } - random_in_list = { - variable = japanese_house_names - save_scope_as = house_name - root = { - set_variable = { - name = new_japanese_house_name - value = scope:house_name - } - } - } - } - 1 = { - trigger = { exists = scope:domicile_barony } - set_variable = { - name = new_japanese_house_name - value = flag:japanese_house_domicile_barony - } - } - 1 = { - trigger = { exists = scope:domicile_county } - set_variable = { - name = new_japanese_house_name - value = flag:japanese_house_domicile_county - } - } - 1 = { - trigger = { exists = scope:random_barony } - set_variable = { - name = new_japanese_house_name - value = flag:japanese_house_random_barony - } - } - 1 = { - trigger = { - exists = scope:old_head - has_character_flag = found_cadet_branch - government_allows = administrative - } - set_variable = { - name = new_japanese_house_name - value = flag:japanese_house_first_name - } - } - } - } - switch = { - trigger = has_character_flag - establish_house_fief = { - tgp_establish_house_fief_save_scopes_effect = yes - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_adopting_feudal_government" - } - fallback = { - play_music_cue = "mx_cue_low_key_positive" - } - } - } - - option = { - name = { - trigger = { has_character_flag = establish_house_fief } - text = tgp_japan_decision.9001.a.fief - } - name = { - trigger = { has_character_flag = found_cadet_branch } - text = tgp_japan_decision.9001.a.cadet - } - } - - after = { - clear_variable_list = japanese_house_names - if = { - limit = { - NOT = { has_variable = new_japanese_house_name } - } - if = { - limit = { is_ai = no } - set_variable = { - name = new_japanese_house_name - value = flag:custom - } - } - } - switch = { - trigger = has_character_flag - found_cadet_branch = { - found_cadet_house_decision_effect = { - CHARACTER = root - PRESTIGE = minor_prestige_gain - } - #scope:new_title ?= { set_title_name_dynamic = japanese_noble_family_name } - } - establish_house_fief = { - japan_establish_house_fief_effect = yes - } - fallback = { - found_cadet_house_decision_effect = { - CHARACTER = root - PRESTIGE = major_prestige_gain - } - #scope:new_title ?= { set_title_name_dynamic = japanese_noble_family_name } - } - } - switch = { - trigger = has_character_flag - found_cadet_branch = { remove_character_flag = found_cadet_branch } - establish_house_fief = { remove_character_flag = establish_house_fief } - } - if = { # Help AI with Manors to propogate Soryo - limit = { - is_ai = yes - exists = scope:new_title - exists = domicile - exists = scope:old_head.domicile - } - scope:old_head.domicile = { - if = { - limit = { - has_domicile_building = japanese_manor_main_02 - root.culture ?= { has_innovation = innovation_manorialism } - } - add_domicile_building = japanese_manor_main_03 - } - else_if = { - limit = { - has_domicile_building = japanese_manor_main_03 - root.culture ?= { has_innovation = innovation_development_03 } - } - add_domicile_building = japanese_manor_main_04 - } - else_if = { - limit = { - has_domicile_building = japanese_manor_main_04 - root.culture ?= { has_innovation = innovation_cranes } - } - add_domicile_building = japanese_manor_main_05 - } - else_if = { - limit = { - has_domicile_building = japanese_manor_main_05 - root.culture ?= { has_innovation = innovation_cranes } - } - add_domicile_building = japanese_manor_main_06 - } - } - } - if = { # JOIN BLOC - limit = { exists = scope:old_house.house_confederation } - house = { - tgp_join_house_bloc_effect = { - INVITER = scope:old_house - OPINION = flag:no - } - set_cadet_aspiration_cooldown_effect = yes - } - } - } -} - -tgp_japan_decision.9002 = { # SAME CLAN EVENT - NO WIDGET - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { is_landed = no } - desc = tgp_japan_decision.9002.t.landless - } - desc = tgp_japan_decision.9002.t - } - } - desc = { - desc = tgp_japan_decision.9002.desc - first_valid = { - triggered_desc = { - trigger = { is_landed = no } - desc = tgp_japan_decision.9002.desc.landless - } - desc = tgp_japan_decision.9002.desc.landed - } - first_valid = { - triggered_desc = { - trigger = { - var:petition_liege_house_fief_allowed_flag ?= top_liege - top_liege = { government_allows = administrative } - } - desc = tgp_japan_decision.9001.desc.permission - } - triggered_desc = { - trigger = { - top_liege = { government_allows = administrative } - } - desc = tgp_japan_decision.9001.desc.crime - } - desc = tgp_japan_decision.9001.desc.feudal - } - } - theme = realm - left_portrait = { - character = root - animation = thinking - } - lower_right_portrait = scope:regent - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_adopting_feudal_government" - tgp_establish_house_fief_save_scopes_effect = yes - japan_establish_house_fief_effect = yes - } - - option = { - name = tgp_japan_decision.9002.a - } -} - -tgp_japan_decision.9005 = { # NOTIFICATION FOR OLD HOUSE HEADS - type = character_event - title = { - triggered_desc = { - trigger = { - scope:new_head = { is_landed = no } - } - desc = tgp_japan_decision.9005.t.landless - } - desc = tgp_japan_decision.9005.t - } - desc = tgp_japan_decision.9005.desc - theme = realm - - left_portrait = { - character = scope:new_head - animation = war_over_tie - } - - trigger = { - is_ai = no - NOT = { scope:new_head ?= this } - } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_adopting_feudal_government" - show_as_tooltip = { - scope:new_head = { - set_house = scope:new_head.house - #get_title = scope:new_nf_title - change_government = japan_feudal_government - if = { - limit = { - NOT = { var:petition_liege_house_fief_allowed_flag ?= scope:regent } - } - reverse_add_opinion = { - modifier = admin_soryo_conquest_crime - target = scope:regent - } - } - } - } - } - - option = { - name = tgp_japan_decision.9005.a - } -} - -# tgp_japan_become_shogun_decision - -tgp_japan_decision.9101 = { - type = character_event - window = fullscreen_event - title = tgp_japan_decision.9101.t - desc = tgp_japan_decision.9101.desc - theme = crown - override_background = { reference = tgp_fullscreen_japanese_shogunate } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = devoted } - animation = war_over_win - } - animation = japanese_war_fan - } - right_portrait = { - character = scope:ceremonial_liege - animation = holding_hu - } - - immediate = { - save_scope_as = shogun - tgp_save_realm_ceremonial_liege_effect = yes - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - if = { - limit = { - any_vassal = { - is_landed = yes - has_government = japan_administrative_government - highest_held_title_tier >= tier_county - } - } - custom_tooltip = tgp_japan_become_shogun_decision_vassal_revocation_effect - } - # Inform Vassals - every_vassal_or_below = { - limit = { - is_ruler = yes - } - trigger_event = tgp_japan_decision.9102 - } - # Rewards - japanese_become_shogun_reward_effect = yes - } - - option = { - name = tgp_japan_decision.9101.a - } -} - -tgp_japan_decision.9102 = { - type = character_event - title = tgp_japan_decision.9102.t - desc = { - desc = tgp_japan_decision.9102.desc - first_valid = { - triggered_desc = { - trigger = { exists = scope:title_change } - desc = tgp_japan_decision.9102.admin - } - triggered_desc = { - trigger = { is_landed = yes } - desc = tgp_japan_decision.9102.feudal - } - desc = tgp_japan_decision.9102.fallback - } - } - theme = realm - - left_portrait = { - character = root - animation = war_over_win - } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:title_change } - desc = tgp_japan_decision.9102.a.admin - } - desc = tgp_japan_decision.9101.a - } - } - } - if = { - limit = { - government_has_flag = government_is_japan_administrative - } - change_government = japan_feudal_government - } - } -} - -# tgp_japan_imperial_branch_decision - -tgp_japan_decision.9201 = { - type = character_event - title = tgp_japan_decision.9201.t - desc = { - desc = tgp_japan_decision.9201.desc - first_valid = { - triggered_desc = { - trigger = { - exists = scope:minamoto_house - exists = scope:taira_house - } - desc = tgp_japan_decision.9201.both - } - triggered_desc = { - trigger = { exists = scope:minamoto_house } - desc = tgp_japan_decision.9201.minamoto - } - triggered_desc = { - trigger = { exists = scope:taira_house } - desc = tgp_japan_decision.9201.taira - } - } - } - theme = family - left_portrait = { - character = root - animation = throne_room_bow_1 - } - right_portrait = { - character = scope:ceremonial_liege - animation = holding_hu - } - lower_left_portrait = scope:minamoto_head - lower_center_portrait = { - character = scope:nearest_emperor - trigger = { - NOT = { this = scope:ceremonial_liege } - } - } - lower_right_portrait = scope:taira_head - override_background = { reference = throne_room_scope } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_restoring_japanese_emperor" - tgp_save_realm_ceremonial_liege_effect = yes - scope:ceremonial_liege = { save_scope_as = background_throne_room_scope } - top_liege = { save_scope_as = liege } - house = { - save_scope_as = old_house - house_head = { save_scope_as = old_house_head } - } - } - - option = { # Join Existing Minamoto - name = tgp_japan_decision.9201.a - trigger = { exists = scope:minamoto_house } - highlight_portrait = scope:minamoto_house.house_head - japan_set_house_effect = { NEW_HOUSE = scope:minamoto_house } - reverse_add_opinion = { - target = scope:minamoto_head - modifier = respect_opinion - opinion = 25 - } - ai_chance = { - base = 5 - modifier = { - scope:minamoto_house.house_head = { is_close_family_of = root } - add = 25 - } - } - } - - option = { # Join Existing Taira - name = tgp_japan_decision.9201.b - trigger = { exists = scope:taira_house } - highlight_portrait = scope:taira_house.house_head - japan_set_house_effect = { NEW_HOUSE = scope:taira_house } - reverse_add_opinion = { - target = scope:taira_head - modifier = respect_opinion - opinion = 25 - } - ai_chance = { - base = 5 - modifier = { - scope:taira_house.house_head = { is_close_family_of = root } - add = 25 - } - } - } - - option = { # Found New Minamoto - name = tgp_japan_decision.9201.c - trigger = { - NOT = { exists = scope:minamoto_house } - } - # Prestige cost for not joining existing - if = { - limit = { exists = scope:taira_house } - add_prestige = medium_prestige_loss - } - custom_tooltip = { - text = tgp_japan_decision.9201.c.tt - create_dynasty = { - name = dynn_Minamoto - coat_of_arms = japanese_minamoto_seiwa - spread_to_descendants = yes - save_scope_as = new_dynasty - } - scope:new_dynasty ?= { - set_coa = dynasty:japanese_minamoto_seiwa - set_variable = { name = minamoto_flag } - hidden_effect = { add_dynasty_prestige_level = 4 } - } - house = { - save_scope_as = new_house - set_coa = dynasty:japanese_minamoto_seiwa - set_house_name = new_honsei_house_name - } - } - if = { - limit = { government_allows = noble_families } - create_noble_family_effect = { GOVERNMENT_GIVER = this } - } - ai_chance = { - base = 25 - modifier = { # Avoid AI creating both - exists = scope:taira_house - add = -20 - } - } - } - - option = { # Found New Taira - name = tgp_japan_decision.9201.d - trigger = { - NOT = { exists = scope:taira_house } - } - # Prestige cost for not joining existing - if = { - limit = { exists = scope:minamoto_house } - add_prestige = medium_prestige_loss - } - custom_tooltip = { - text = tgp_japan_decision.9201.d.tt - create_dynasty = { - name = dynn_Taira - coat_of_arms = japanese_taira_kanmu - spread_to_descendants = yes - save_scope_as = new_dynasty - } - scope:new_dynasty ?= { - set_coa = dynasty:japanese_taira_kanmu - set_variable = { name = taira_flag } - hidden_effect = { add_dynasty_prestige_level = 4 } - } - house = { - save_scope_as = new_house - set_coa = dynasty:japanese_taira_kanmu - set_house_name = new_honsei_house_name - } - } - if = { - limit = { government_allows = noble_families } - create_noble_family_effect = { GOVERNMENT_GIVER = this } - } - ai_chance = { - base = 25 - modifier = { # Avoid AI creating both - exists = scope:minamoto_house - add = -20 - } - } - } - - after = { - if = { # JOIN BLOC - limit = { exists = scope:old_house.house_confederation } - house = { - tgp_join_house_bloc_effect = { - INVITER = scope:old_house - OPINION = flag:no - } - } - } - # Move to 'Kingdom' if necessary - if = { - limit = { - is_ruler = no - top_liege != scope:regent - } - scope:regent = { add_courtier = root } - } - # Message - if = { - limit = { exists = scope:new_house } - hidden_effect = { - every_player = { - limit = { top_liege = title:e_japan.holder } - send_interface_message = { - type = event_generic_neutral - title = tgp_japan_decision.9201.message_title - left_icon = root - right_icon = scope:nearest_emperor - show_as_tooltip = { - root = { set_house = scope:new_house } - } - } - } - } - } - # ERROR SUPPRESSION - if = { - limit = { - has_variable = fujiwara_flag - has_variable = minamoto_flag - has_variable = taira_flag - } - } - } -} - -# tgp_japan_emperor_restoration_decision - -tgp_japan_decision.9301 = { - type = character_event - title = tgp_japan_decision.9301.t - desc = tgp_japan_decision.9301.desc - theme = crown - - left_portrait = { - character = root - animation = holding_hu - } - right_portrait = { - character = scope:attacker - animation = war_over_win - trigger = { - NOT = { this = root } - } - } - lower_center_portrait = scope:defender - - override_effect_2d = { reference = legend_glow } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_restoring_japanese_emperor" - save_scope_as = tenno - save_scope_as = bg_override_char - japan_clear_flavour_flags_effect = yes - set_global_variable = { - name = tenno_restored - value = yes - } - add_character_flag = ceremonial_liege_flag - # Inform Vassals - every_player = { - limit = { is_vassal_or_below_of = root } - trigger_event = tgp_japan_decision.9302 - } - restore_ceremonial_liege_faction_reward_effect = yes - } - - option = { - name = tgp_japan_decision.9301.a - } -} - -tgp_japan_decision.9302 = { - type = character_event - title = tgp_japan_decision.9302.t - desc = tgp_japan_decision.9302.desc - theme = crown - - override_effect_2d = { reference = legend_glow } - - left_portrait = { - character = scope:tenno - animation = holding_hu - } - right_portrait = { - character = scope:attacker - animation = war_over_win - trigger = { - NOT = { this = scope:tenno } - } - } - lower_center_portrait = scope:defender - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_restoring_japanese_emperor" - show_as_tooltip = { - scope:tenno = { restore_ceremonial_liege_faction_reward_effect = yes } - } - } - - option = { - name = tgp_japan_decision.9302.a - } -} - -#Become a Poet - Ceremony - House Aspiration -tgp_japan_decision.9401 = { - type = character_event - title = tgp_japan_decision.9401.t - desc = tgp_japan_decision.9401.desc - theme = education - left_portrait = { - character = root - animation = writing - } - - #Study to become a poet - option = { - name = tgp_japan_decision.9401.a - - duel = { - skill = learning - value = high_skill_rating - 50 = { #Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - modifier = { - has_trait = shrewd - add = 10 - } - modifier = { - has_trait = scholar - add = 10 - } - send_interface_toast = { - title = tgp_japan_decision.9401.a.toast.success - left_icon = root - add_trait = lifestyle_poet - add_stress = minor_stress_gain - } - } - - 50 = { #Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - send_interface_toast = { - title = tgp_japan_decision.9401.a.toast.failure - left_icon = root - add_stress = medium_stress_gain - } - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - ai_sociability = 1 - } - } - } - - #Opt out - option = { - name = tgp_japan_decision.9401.b - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_energy = -1 - ai_sociability = -1 - } - } - } -} - -# tgp_japan_become_a_monk_decision - Becoming a Buddhist monk near the end of your life (or when you become seriously ill) -tgp_japan_decision.9500 = { - type = character_event - title = tgp_japan_decision.9500.t - desc = tgp_japan_decision.9500.desc - theme = faith - left_portrait = { - character = root - animation = personality_zealous - } - - option = { - name = tgp_japan_decision.9500.a - add_trait = devoted - tgp_renounce_estate_effect = yes - } -} - -# tgp_japan_establish_soryo_administration_decision - -tgp_japan_decision.9601 = { - type = character_event - hidden = yes - - immediate = { - save_scope_as = daijo_daijin - # Inform Vassals - every_vassal = { - limit = { - highest_held_title_tier >= tier_county - is_landed = yes - # Exclude members of bloc, allies, prisoners - NOR = { - house.house_confederation ?= scope:daijo_daijin.house.house_confederation - is_allied_to = scope:daijo_daijin - is_imprisoned_by = scope:daijo_daijin - } - } - trigger_event = tgp_japan_decision.9602 - } - # After AI decisions - trigger_event = { - id = tgp_japan_decision.9604 - delayed = yes - } - } -} - -tgp_japan_decision.9602 = { # Vassal AI event - type = character_event - hidden = yes - - trigger = { is_ai = yes } - - on_trigger_fail = { # Create player list to handle separately - save_temporary_scope_as = war_joiner_temp - scope:daijo_daijin = { - add_to_variable_list = { - name = war_players - target = scope:war_joiner_temp - months = 1 - } - } - } - - immediate = { - random_list = { - 20 = { # Join war - trigger = { - # Only bloc leaders join - trigger_if = { - limit = { exists = house.house_confederation.leading_house } - is_house_head = yes - house.house_confederation.leading_house ?= house - } - trigger_else = { always = yes } - } - modifier = { - add = 15 - is_house_head = yes - house.house_confederation.leading_house ?= house - } - modifier = { - add = 15 - house = { has_house_aspiration_parameter = unlocks_japanese_manor_archive } - } - modifier = { - add = 15 - house = { has_house_aspiration_parameter = ceremony_cheaper_feasts } - } - modifier = { - add = 30 - has_relation_rival = scope:daijo_daijin - } - modifier = { - add = 30 - house = { - any_house_relation = { - has_house_relation_level = feud - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - modifier = { - add = 20 - house = { - any_house_relation = { - has_house_relation_level = rivalry - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - modifier = { - add = 10 - house = { - any_house_relation = { - has_house_relation_level = quarrel - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - modifier = { - add = 15 - government_allows = administrative - } - save_temporary_scope_as = war_joiner_temp - scope:daijo_daijin = { - add_to_variable_list = { - name = war_joiners - target = scope:war_joiner_temp - months = 1 - } - } - if = { - limit = { - is_house_head = yes - house.house_confederation.leading_house ?= house - } - top_liege = { - every_vassal = { - limit = { - highest_held_title_tier > tier_barony - house.house_confederation ?= root.house.house_confederation - } - save_temporary_scope_as = war_joiner_temp - scope:daijo_daijin = { - add_to_variable_list = { - name = war_joiners - target = scope:war_joiner_temp - months = 1 - } - } - } - } - } - } - 10 = { # Don't join war - opinion_modifier = { - opinion_target = scope:daijo_daijin - multiplier = -0.1 - } - ai_value_modifier = { - ai_boldness = -0.1 - } - modifier = { - add = 30 - house = { - any_house_relation = { - has_house_relation_level = amity - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - modifier = { - add = 20 - house = { - any_house_relation = { - has_house_relation_level = friendly - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - modifier = { - add = 10 - house = { - any_house_relation = { - has_house_relation_level = cordial - any_relation_house = { this = scope:daijo_daijin.house } - } - } - } - } - } - } -} - -tgp_japan_decision.9603 = { # Vassal player event - type = character_event - title = tgp_japan_decision.9603.t - desc = { - desc = tgp_japan_decision.9603.desc - triggered_desc = { - trigger = { exists = scope:leader } - desc = tgp_japan_decision.9603.leader - } - } - theme = war - - left_portrait = { - character = scope:daijo_daijin - animation = japanese_war_fan - } - lower_left_portrait = scope:leader - lower_center_portrait = scope:portrait_1 - lower_right_portrait = scope:portrait_2 - - trigger = { - is_ai = no - } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - show_as_tooltip = { - scope:daijo_daijin = { - custom_description_no_bullet = { text = if_you_win_effect } - show_as_tooltip = { japanese_establish_soryo_administration_reward_effect = yes } - } - } - } - - option = { - name = { - text = tgp_japan_decision.9603.a.bloc - trigger = { house.house_confederation.leading_house ?= house } - } - name = { - text = tgp_japan_decision.9603.a - trigger = { - NOT = { house.house_confederation.leading_house ?= house } - } - } - hidden_effect = { - if = { - limit = { is_defender_in_war = scope:war } - scope:war = { remove_participant = root } - } - } - scope:war = { add_attacker = root } - if = { - limit = { - is_house_head = yes - house.house_confederation.leading_house = root.house - } - custom_tooltip = tgp_japan_decision.9603.a.tt - hidden_effect = { - top_liege = { - every_vassal = { - limit = { - NOT = { this = root } - highest_held_title_tier > tier_barony - house.house_confederation ?= root.house.house_confederation - } - save_temporary_scope_as = war_joiner_temp - if = { - limit = { - exists = scope:war - is_defender_in_war = scope:war - } - scope:war = { remove_participant = scope:war_joiner_temp } - } - scope:war ?= { add_attacker = scope:war_joiner_temp } - } - } - } - } - } - - option = { - name = tgp_japan_decision.9603.b - } -} - -tgp_japan_decision.9604 = { # War setup - type = character_event - hidden = yes - - immediate = { - if = { - limit = { any_in_list = { variable = war_joiners } } - # Find bloc leaders - every_in_list = { - variable = war_joiners - limit = { - is_house_head = yes - house.house_confederation.leading_house ?= house # Prefer Bloc Leaders - } - add_to_list = bloc_leaders - } - # Find bloc leader as war leader, and power portraits - ordered_in_list = { - list = bloc_leaders - order_by = { - value = 0 - # TODO_CD_TGP_JP AWAITING CODE SUPPORT - #add = tgp_confederation_military_power - } - max = 3 - if = { - limit = { exists = scope:portrait_1 } - save_scope_as = portrait_2 - } - else_if = { - limit = { exists = scope:leader } - save_scope_as = portrait_1 - } - else = { save_scope_as = leader } - } - # Find non bloc leader if necessary, or power portraits - ordered_in_list = { - variable = war_joiners - order_by = { - value = 0 - add = military_power - } - max = 3 - if = { - limit = { exists = scope:portrait_1 } - save_scope_as = portrait_2 - } - else_if = { - limit = { exists = scope:leader } - save_scope_as = portrait_1 - } - else_if = { - limit = { - NOT = { exists = scope:leader } - } - save_scope_as = leader - } - } - # Start war - scope:leader ?= { - start_war = { - cb = japan_establish_soryo_administration_cb - target = scope:daijo_daijin - } - random_character_war = { - limit = { - primary_attacker = scope:leader - primary_defender = scope:daijo_daijin - using_cb = japan_establish_soryo_administration_cb - } - save_scope_as = war - } - } - # Counter for other joiners - set_variable = { - name = other_joiners_count - value = 0 - } - # Add other participants - every_in_list = { - variable = war_joiners - limit = { NOT = { this = scope:leader } } - save_temporary_scope_as = war_joiner_temp - if = { - limit = { - exists = scope:war - is_defender_in_war = scope:war - } - scope:war = { remove_participant = scope:war_joiner_temp } - } - scope:war ?= { add_attacker = scope:war_joiner_temp } - if = { - limit = { - is_house_head = yes - house.house_confederation.leading_house ?= house - } - add_to_list = bloc_leaders - } - else_if = { - limit = { NOT = { exists = house.house_confederation } } - add_to_list = other_joiners - root = { - change_variable = { - name = other_joiners_count - add = 1 - } - } - } - } - } - trigger_event = { - id = tgp_japan_decision.9605 - delayed = yes - } - } -} - -tgp_japan_decision.9605 = { # War start event - type = character_event - title = { - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:war } - desc = tgp_japan_decision.9605.t - } - desc = tgp_japan_decision.9606.t - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:war } - desc = tgp_japan_decision.9605.desc - } - desc = tgp_japan_decision.9605.peace - } - } - theme = war - - left_portrait = { - character = scope:daijo_daijin - animation = japanese_war_fan - } - lower_left_portrait = scope:leader - lower_center_portrait = scope:portrait_1 - lower_right_portrait = scope:portrait_2 - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - add_character_flag = wear_armor - if = { - limit = { exists = scope:leader } - # Start war - if = { - limit = { any_in_list = { list = bloc_leaders } } - every_in_list = { - list = bloc_leaders - custom_tooltip = tgp_establish_soryo_administration_bloc_leaders_tt - } - } - # Tooltip - if = { - limit = { any_in_list = { list = other_joiners } } - custom_tooltip = tgp_establish_soryo_administration_other_joiners_tt - } - } - else = { japanese_establish_soryo_administration_reward_effect = yes } - } - - option = { - name = tgp_japan_decision.9605.a - trigger = { exists = scope:war } - show_as_tooltip = { - custom_description_no_bullet = { text = if_you_win_effect } - show_as_tooltip = { japanese_establish_soryo_administration_reward_effect = yes } - } - } - - option = { - name = tgp_japan_decision.9605.b - trigger = { - NOT = { exists = scope:war } - } - japanese_establish_soryo_administration_reward_effect = yes - every_player = { - limit = { - top_liege = scope:daijo_daijin - NOT = { this = scope:daijo_daijin } - } - trigger_event = tgp_japan_decision.9607 - } - } - - after = { - remove_character_flag = wear_armor - if = { - limit = { exists = scope:leader } - every_in_list = { - variable = war_players - trigger_event = tgp_japan_decision.9603 - } - } - remove_variable = other_joiners_count - } -} - -tgp_japan_decision.9606 = { # War won event - type = character_event - title = tgp_japan_decision.9606.t - desc = tgp_japan_decision.9606.desc - theme = war - - left_portrait = { - character = scope:daijo_daijin - animation = japanese_war_fan - } - right_portrait = { - character = scope:leader - triggered_animation = { - trigger = { is_imprisoned = yes } - animation = prisonhouse - } - animation = war_over_loss - override_imprisonment_visuals = yes - } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - japanese_establish_soryo_administration_reward_effect = yes - } - - option = { - name = tgp_japan_decision.9606.a - } - - after = { - every_player = { - limit = { - top_liege = scope:daijo_daijin - NOT = { this = scope:daijo_daijin } - } - trigger_event = tgp_japan_decision.9607 - } - } -} - -tgp_japan_decision.9607 = { # War won vassal event - type = character_event - title = tgp_japan_decision.9606.t - desc = tgp_japan_decision.9607.desc - theme = war - - left_portrait = { - character = scope:daijo_daijin - animation = war_over_win - } - right_portrait = { - character = scope:leader - triggered_animation = { - trigger = { is_imprisoned = yes } - animation = prisonhouse - } - animation = war_over_loss - override_imprisonment_visuals = yes - } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - show_as_tooltip = { japanese_establish_soryo_administration_reward_effect = yes } - } - - option = { - name = tgp_japan_decision.9607.a - } -} - -# tgp_japan_restore_japanese_monarchy_decision - -tgp_japan_decision.9901 = { - type = character_event - title = tgp_japan_decision.9901.t - desc = tgp_japan_decision.9901.desc - theme = realm - left_portrait = { - character = scope:kampaku - triggered_animation = { - trigger = { this = scope:scion } - animation = war_over_tie - } - animation = throne_room_bow_1 - } - right_portrait = { - character = scope:scion - animation = war_over_tie - trigger = { this != scope:kampaku } - } - override_background = { reference = throne_room_scope } - - immediate = { - play_music_cue = "mx_cue_sacredrite" - show_as_tooltip = { tgp_restore_japanese_monarchy_decision_effect = yes } - tgp_restore_japanese_monarchy_yamato_restoration_effect = yes - every_player = { - limit = { is_vassal_or_below_of = root } - trigger_event = tgp_japan_decision.9902 - } - } - - option = { # Rule as Regent - name = { - trigger = { this = scope:scion } - text = tgp_japan_decision.9901.a - } - name = { - trigger = { this != scope:scion } - text = tgp_japan_decision.9901.a.scion - } - } -} - -tgp_japan_decision.9902 = { - type = character_event - title = tgp_japan_decision.9901.t - desc = tgp_japan_decision.9902.desc - theme = family - left_portrait = { - character = scope:kampaku - triggered_animation = { - trigger = { this = scope:scion } - animation = war_over_tie - } - animation = throne_room_bow_1 - } - right_portrait = { - character = scope:scion - animation = war_over_tie - trigger = { this != scope:kampaku } - } - override_background = { reference = throne_room_scope } - - immediate = { - play_music_cue = "mx_cue_sacredrite" - show_as_tooltip = { - scope:kampaku = { - tgp_restore_japanese_monarchy_decision_effect = yes - tgp_restore_japanese_monarchy_yamato_restoration_effect = yes - } - } - } - - option = { # Long live the Emperor - name = tgp_japan_decision.9902.a - } -} - -# tgp_japan_restore_japanese_government_decision - -tgp_japan_decision.9911 = { - type = character_event - title = tgp_japan_decision.9911.t - desc = { - desc = tgp_japan_decision.9911.desc - triggered_desc = { - trigger = { exists = scope:rebel } - desc = tgp_japan_decision.9911.rebel - } - } - theme = crown - left_portrait = { - character = scope:kampaku - animation = chaplain - } - right_portrait = { - character = scope:ceremonial_liege - animation = holding_hu - } - lower_right_portrait = scope:rebel - override_background = { reference = throne_room_scope } - - immediate = { - tgp_save_realm_ceremonial_liege_effect = yes - tgp_restore_japanese_government_decision_effect = yes - } - - option = { # Yay - name = tgp_japan_decision.9911.a - } -} - -tgp_japan_decision.9912 = { - type = character_event - title = tgp_japan_decision.9911.t - desc = { - desc = tgp_japan_decision.9912.desc - triggered_desc = { - trigger = { exists = scope:rebel } - desc = tgp_japan_decision.9912.rebel - } - } - theme = realm - left_portrait = { - character = scope:kampaku - animation = war_over_tie - } - override_background = { reference = throne_room_scope } - - trigger = { - NOT = { is_at_war_with = scope:kampaku } - } - - immediate = { - show_as_tooltip = { - scope:kampaku = { tgp_restore_japanese_government_decision_effect = yes } - } - } - - option = { # Yay - name = tgp_japan_decision.9911.a - if = { - limit = { - NOT = { has_government = japan_administrative_government } - } - change_government = japan_administrative_government - } - } - - option = { # Boo - name = tgp_japan_decision.9912.b - trigger = { - is_ai = no - NOR = { - is_at_war_with = scope:kampaku - has_government = japan_administrative_government - } - } - every_in_list = { - list = war_to_join - limit = { - NOT = { is_defender = root } - } - hidden_effect = { set_called_to = root } - add_attacker = root - } - reverse_add_opinion = { - target = scope:kampaku - modifier = rebellious_vassal_opinion - } - } -} - -#Player called to war by rebellious vassal. (vs imprisonment) -tgp_japan_decision.9913 = { - type = letter_event - opening = { - desc = call_ally.0100.opening - } - desc = tgp_japan_decision.9913.desc - - sender = { - character = scope:recipient - animation = anger - } - - option = { - name = tgp_japan_decision.9913.a - scope:recipient = { - every_character_war = { - limit = { - using_cb = japan_refused_ritsuryo_cb - casus_belli = { - primary_attacker = scope:recipient - primary_defender = scope:actor - } - } - hidden_effect = { set_called_to = root } - add_attacker = root - } - scope:recipient = { - add_opinion = { - target = root - modifier = helped_me_against_tyrant_opinion - } - } - } - } - option = { - name = tgp_japan_decision.9913.b - scope:recipient = { - add_opinion = { - target = root - modifier = sided_with_tyrant_opinion - } - } - } -} -scripted_trigger dominion_fight = { - exists = scope:main_defender - NOT = { - any_in_list = { - list = potential_vassals - } - } -} -scripted_trigger dominion_fight_partial = { - exists = scope:main_defender - any_in_list = { - list = potential_vassals - } -} -#Assert Regional Dominion -#tgp_japan_decision.9960 -tgp_japan_decision.9960 = { - type = character_event - window = big_event_window - title = tgp_japan_decision.9960.t - desc = { - desc = tgp_japan_decision.9960.intro - first_valid = { - #de jure vassals agree to let you be duke - triggered_desc = { - trigger = { - NOT = { exists = scope:main_defender } - } - desc = tgp_japan_decision.9960.agree - } - #some de jure vassals agree to let you be duke, some will fight you - triggered_desc = { - trigger = { dominion_fight_partial = yes } - desc = tgp_japan_decision.9960.partial_war - } - #all jure vassals will fight you - desc = tgp_japan_decision.9960.full_war - } - } - theme = battle - override_icon = { - trigger = { dominion_fight = no } - reference = "gfx/interface/icons/event_types/type_authority.dds" - } - override_icon = { - trigger = { dominion_fight = yes } - reference ="gfx/interface/icons/event_types/type_war.dds" - } - override_header_background = { - trigger = { dominion_fight = yes } - reference = "gfx/interface/window_event/event_header_red.dds" - } - override_sound = { - trigger = { dominion_fight = no } - reference = "event:/SFX/Events/Themes/sfx_event_theme_type_diplomacy" - } - left_portrait = { - character = scope:super_soryo - triggered_animation = { - trigger = { - is_adult = yes - dominion_fight = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - #it's war! - animation = gedan_no_kamae - } - #it's not war! - animation = personality_content - } - right_portrait = { #main defender - character = scope:main_defender - camera = camera_event_right_crowner_crowning - } - override_background = { - trigger = { dominion_fight = yes } - #it's war! - reference = army_camp - } - override_background = { reference = bp1_crossroads_inn } - override_effect_2d = { - trigger = { dominion_fight = no } - reference = legend_glow - } - immediate = { - if = { - limit = { - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - add_character_flag = { - flag = wear_armor - days = 1 - } - } - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - - tgp_japan_assert_regional_dominion_government_decision_effect = yes - } - #fight - option = { - trigger = { dominion_fight = yes } - name = tgp_japan_decision.9960.a - } - #no fight - option = { - trigger = { dominion_fight = no } - name = tgp_japan_decision.9960.b - } - after = { - remove_character_flag = wear_armor - } -} -#winner follow up -tgp_japan_decision.9961 = { - type = character_event - window = big_event_window - title = tgp_japan_decision.9961.t - desc = tgp_japan_decision.9961.desc - theme = battle - override_icon = { - trigger = { dominion_fight = yes } - reference ="gfx/interface/icons/event_types/type_hunt.dds" - } - override_header_background = { reference = "gfx/interface/window_event/header_neutral.dds" } - left_portrait = { - character = scope:winner - triggered_animation = { - trigger = { - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - animation = japanese_war_fan - } - animation = personality_content - } - override_background = { reference = battlefield } - override_effect_2d = { reference = legend_glow } - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_become_japanese_shogun" - if = { - limit = { - is_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - add_character_flag = { - flag = wear_armor - days = 1 - } - } - scope:title_scope = { tgp_japan_assert_regional_dominance_war_outcome_effect = yes } - } - #you won, enjoy - option = { - name = tgp_japan_decision.9961.a - } - after = { - remove_character_flag = wear_armor - } -} -#loser follow up -tgp_japan_decision.9962 = { - type = character_event - window = big_event_window - title = tgp_japan_decision.9962.t - desc = tgp_japan_decision.9962.desc - theme = battle - override_icon = { - trigger = { dominion_fight = yes } - reference ="gfx/interface/icons/event_types/type_hunt.dds" - } - override_header_background = { reference = "gfx/interface/window_event/header_neutral.dds" } - left_portrait = { - character = scope:loser - animation = shame - } - #main defender - right_portrait = { - character = scope:winner - animation = war_over_win - } - override_background = { - reference = battlefield - } - override_effect_2d = { - reference = rain - } - immediate = { - play_music_cue = "mx_cue_general_crusade_event_3" - } - #you lost, enjoy - option = { - name = tgp_japan_decision.9962.a - } -} -#letter event -tgp_japan_decision.9963 = { - type = letter_event - opening = tgp_japan_decision.9963.opening - desc = tgp_japan_decision.9963.desc - sender = scope:super_soryo - #decline war - option = { - name = tgp_japan_decision.9963.a - play_music_cue = mx_cue_combat_stinger - custom_tooltip = tgp_japan_decision.9963.a.tt - } - #join war - option = { - name = tgp_japan_decision.9963.b - scope:super_soryo_war = { - add_defender = root - hidden_effect = { - set_called_to = root - } - } - } -} diff --git a/events/dlc/tgp/tgp_japan_general_events.txt b/events/dlc/tgp/tgp_japan_general_events.txt deleted file mode 100644 index 7a697d635..000000000 --- a/events/dlc/tgp/tgp_japan_general_events.txt +++ /dev/null @@ -1,1626 +0,0 @@ -namespace = tgp_japan_general - -#tgp_japan_general.9001 = { -# type = character_event -# title = tgp_japan_general.9001.t -# desc = tgp_japan_general.9001.desc -# theme = realm -# -# immediate = { -# } -# -# option = { -# name = tgp_japan_general.9001.a -# } -#} -# -#tgp_japan_general.9010 = { -# type = character_event -# title = tgp_japan_general.9010.t -# desc = tgp_japan_general.9010.desc -# theme = realm -# -# immediate = { -# } -# -# option = { -# name = tgp_japan_general.9010.a -# } -#} - - -# INSTALL BLOC OUTCOME -scripted_trigger tgp_japan_general_8800_trigger = { - is_adult = yes - is_ruler = no - is_clergy = no - is_faith_dominant_gender = yes - is_incapable = no - is_lowborn = no - save_temporary_scope_as = potential_temp - root = { - any_held_title = { - count = 0 - place_in_line_of_succession = { - target = scope:potential_temp - value <= 3 - } - } - } - NOR = { - scope:potential_temp = root.player_heir - scope:potential_temp = root.primary_heir - scope:family_1 ?= scope:potential_temp - scope:family_2 ?= scope:potential_temp - scope:family_3 ?= scope:potential_temp - scope:fallback_1 ?= scope:potential_temp - scope:fallback_2 ?= scope:potential_temp - scope:fallback_3 ?= scope:potential_temp - trigger_if = { - limit = { exists = scope:potential_temp.house } - OR = { - scope:fallback_1.house ?= scope:potential_temp.house - scope:fallback_2.house ?= scope:potential_temp.house - } - } - } -} - -scripted_effect tgp_japan_general_8800_scope_effect = { - if = { - limit = { exists = scope:$NAME$_2 } - save_scope_as = $NAME$_3 - } - else_if = { - limit = { exists = scope:$NAME$_1 } - save_scope_as = $NAME$_2 - } - else = { save_scope_as = $NAME$_1 } - tgp_japan_general_8800_portrait_effect = yes -} - -scripted_effect tgp_japan_general_8800_portrait_effect = { - if = { - limit = { exists = scope:portrait_3 } - # early out - } - else_if = { - limit = { exists = scope:portrait_2 } - save_scope_as = portrait_3 - add_to_list = potential_list - } - else_if = { - limit = { exists = scope:portrait_1 } - save_scope_as = portrait_2 - add_to_list = potential_list - } - else = { - save_scope_as = portrait_1 - add_to_list = potential_list - } -} - -scripted_effect tgp_japan_general_8800_grant_effect = { - save_scope_as = recipient - - create_title_and_vassal_change = { - type = conquest - save_scope_as = change - add_claim_on_loss = yes - } - - #As this is just a county conquest, simply grab the designated county. - every_in_list = { - list = target_titles - change_title_holder = { - holder = scope:recipient - change = scope:change - } - } - - if = { - limit = { - root.liege = { is_independent_ruler = no } - } - change_liege = { - liege = root.liege - change = scope:change - } - } - - resolve_title_and_vassal_change = scope:change - - root = { - - if = { - limit = { - can_add_hook = { - target = scope:recipient - type = loyalty_hook - } - } - add_hook = { - target = scope:recipient - type = loyalty_hook - } - } - } - - scope:recipient = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 25 - } - if = { - limit = { - NOT = { government_has_flag = government_is_japan_feudal } - } - change_government = japan_feudal_government - } - if = { - limit = { is_house_head = no } - custom_tooltip = { - text = tgp_japan_general.8800.cadet_tt - add_character_flag = found_cadet_branch - trigger_event = tgp_japan_decision.9001 - } - } - house = { - tgp_join_house_bloc_effect = { - INVITER = root.house - OPINION = flag:yes - } - set_variable = { - name = bloc_expansion_won_forced_membership_var - years = 5 - } - save_scope_as = new_house - } - root.house = { - switch = { - trigger = has_house_aspiration_parameter - ceremony_cheaper_feasts = { #Ceremony - scope:new_house = { - set_house_aspiration = { - type = ceremony - level = 1 - } - } - } - determination_spymaster_task_find_secrets_efficiency = { #Determination - scope:new_house = { - scope:new_house = { - set_house_aspiration = { - type = determination - level = 1 - } - } - } - } - unlocks_japanese_manor_shrine = { #Humility - scope:new_house = { - scope:new_house = { - set_house_aspiration = { - type = humility - level = 1 - } - } - } - } - unlocks_japanese_manor_brewery = { #Prosperity - scope:new_house = { - scope:new_house = { - set_house_aspiration = { - type = prosperity - level = 1 - } - } - } - } - service_house_improved_educator_outcome_chance = { #Service - scope:new_house = { - scope:new_house = { - set_house_aspiration = { - type = service - level = 1 - } - } - } - } - unlocks_japanese_manor_armory = { #Strength - scope:new_house = { - scope:new_house = { - set_house_aspiration = { - type = strength - level = 1 - } - } - } - } - } - } - } - every_in_list = { - list = potential_list - limit = { - NOT = { this = scope:recipient } - } - custom = tgp_japan_general_8800_custom - add_opinion = { - target = scope:recipient - modifier = annoyed_opinion - opinion = -15 - } - } -} - -tgp_japan_general.8800 = { - type = character_event - title = tgp_japan_general.8800.t - desc = tgp_japan_general.8800.desc - theme = war - override_background = { reference = estate } - left_portrait = { - character = root - animation = japanese_war_fan - } - lower_right_portrait = scope:portrait_3 - lower_center_portrait = scope:portrait_2 - lower_left_portrait = scope:portrait_1 - override_background = { reference = throne_room_scope } - - immediate = { - save_scope_as = winner - scope:defender = { save_scope_as = loser } - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_adopting_feudal_government" - house.house_confederation = { - tgp_bloc_change_cohesion_effect = { - VALUE = 5 - ICON = scope:attacker - REASON = install_bloc_member - } - } - every_child = { - limit = { tgp_japan_general_8800_trigger = yes } - add_to_list = potential_family - } - every_sibling = { - limit = { tgp_japan_general_8800_trigger = yes } - add_to_list = potential_family - } - every_close_or_extended_family_member = { - limit = { - OR = { - is_uncle_or_aunt_of = root - is_nibling_of = root - } - tgp_japan_general_8800_trigger = yes - } - add_to_list = potential_family - } - every_close_or_extended_family_member = { - limit = { - is_nibling_of = root - tgp_japan_general_8800_trigger = yes - } - add_to_list = potential_family - } - hidden_effect = { - ordered_in_list = { - list = potential_family - order_by = "opinion(root)" - tgp_japan_general_8800_scope_effect = { NAME = family } - } - } - if = { - limit = { NOT = { exists = scope:portrait_3 } } - every_councillor = { - limit = { - NOT = { is_in_list = potential_family } - tgp_japan_general_8800_trigger = yes - } - add_to_list = potential_fallback - } - every_knight = { - limit = { - NOT = { is_in_list = potential_family } - tgp_japan_general_8800_trigger = yes - } - add_to_list = potential_fallback - } - every_courtier = { - limit = { - NOT = { is_in_list = potential_family } - tgp_japan_general_8800_trigger = yes - } - add_to_list = potential_fallback - } - hidden_effect = { - while = { - count = 3 - random_in_list = { - list = potential_fallback - limit = { - is_house_head = yes - tgp_japan_general_8800_trigger = yes - } - alternative_limit = { - tgp_japan_general_8800_trigger = yes - } - weight = { - base = 1 - modifier = { add = "opinion(root)" } - modifier = { is_councillor = yes add = 50 } - modifier = { is_knight = yes add = 25 } - } - tgp_japan_general_8800_scope_effect = { NAME = fallback } - } - } - if = { - limit = { - NOT = { - exists = scope:fallback_1 - } - } - create_character = { - template = new_warrior_character - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - employer = root - faith = root.faith - culture = root.culture - dynasty = generate - gender_female_chance = root_soldier_female_chance - save_scope_as = fallback_1 - } - } - } - } - if = { - limit = { NOT = { exists = scope:portrait_3 } } - hidden_effect = { - while = { - count = 3 - random_pool_guest = { - limit = { - is_house_head = yes - tgp_japan_general_8800_trigger = yes - } - alternative_limit = { - tgp_japan_general_8800_trigger = yes - } - weight = { - base = 1 - modifier = { add = "opinion(root)" } - } - tgp_japan_general_8800_scope_effect = { NAME = fallback } - } - } - } - } - # EP3 Laamp possibility warning - scope:defender = { ep3_war_loss_adventurer_tt_effect = yes } - } - - option = { - name = tgp_japan_general.8800.a - trigger = { exists = scope:family_1 } - scope:family_1 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:family_1 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.b - trigger = { exists = scope:family_2 } - scope:family_2 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:family_2 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.c - trigger = { exists = scope:family_3 } - scope:family_3 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:family_3 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.e - trigger = { - exists = scope:fallback_1 - calc_true_if = { - amount < 3 - exists = scope:family_1 - exists = scope:family_2 - exists = scope:family_3 - } - } - scope:fallback_1 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:fallback_1 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.f - trigger = { - exists = scope:fallback_2 - calc_true_if = { - amount < 3 - exists = scope:family_1 - exists = scope:family_2 - exists = scope:family_3 - exists = scope:fallback_1 - } - } - scope:fallback_2 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:fallback_2 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.g - trigger = { - exists = scope:fallback_3 - calc_true_if = { - amount < 3 - exists = scope:family_1 - exists = scope:family_2 - exists = scope:family_3 - exists = scope:fallback_1 - exists = scope:fallback_2 - } - } - scope:fallback_3 = { tgp_japan_general_8800_grant_effect = yes } - ai_chance = { - base = 10 - opinion_modifier = { - opinion_target = scope:fallback_3 - multiplier = 1 - } - } - } - - option = { - name = tgp_japan_general.8800.h - - create_title_and_vassal_change = { - type = conquest - save_scope_as = change - add_claim_on_loss = yes - } - - #As this is just a county conquest, simply grab the designated county. - every_in_list = { - list = target_titles - change_title_holder = { - holder = root - change = scope:change - } - } - - resolve_title_and_vassal_change = scope:change - - every_in_list = { - list = potential_list - limit = { is_ai = yes } - custom = tgp_japan_general_8800_custom - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -25 - } - } - ai_chance = { - base = 300 - modifier = { - domain_limit_available <= 0 - factor = 0 - } - } - } -} - -## NEW CEREMONIAL EMPEROR NOTIFICATION - -scripted_effect tgp_new_ceremonial_liege_notification_effect = { - $TITLE$ = { - save_scope_as = ceremonial_title - holder = { save_scope_as = ceremonial_liege } - previous_holder = { save_scope_as = previous_holder } - } - hidden_effect = { - every_player = { - limit = { $TITLE$.var:ceremonial_title.holder.top_liege = top_liege } - send_interface_message = { - type = msg_liege_changed - title = new_ceremonial_liege_message_title - left_icon = scope:ceremonial_liege - right_icon = scope:previous_holder - custom_tooltip = new_ceremonial_liege_message_effect - } - } - } -} - -tgp_japan_general.9100 = { - type = character_event - title = tgp_japan_general.9100.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:murder } - desc = tgp_japan_general.9100.desc_murdered - } - triggered_desc = { - trigger = { - scope:previous_holder = { is_alive = no } - } - desc = tgp_japan_general.9100.desc_dead - } - triggered_desc = { - trigger = { - scope:previous_holder = top_liege - } - desc = tgp_japan_general.9100.desc_joko - } - desc = tgp_japan_general.9100.desc_alive - } - desc = tgp_japan_general.9100.desc - } - theme = crown - left_portrait = { - character = root - animation = war_over_tie - } - right_portrait = { - character = top_liege - animation = chancellor - trigger = { - NOT = { this = root } - } - } - lower_right_portrait = scope:title.previous_holder - override_background = { reference = throne_room } - - trigger = { - exists = scope:previous_holder - scope:title = { exists = var:ceremonial_title } - NOR = { - scope:transfer_type = flag:conquest - scope:transfer_type = flag:conquest_claim - } - } - - immediate = { - show_as_tooltip = { get_title = scope:title } - if = { - limit = { - OR = { - any_secret = { - type = secret_murder - secret_target = scope:previous_holder - } - scope:previous_holder ?= { - is_alive = no - killer ?= root - } - } - } - save_scope_value_as = { - name = murder - value = yes - } - } - assign_quirk_effect = yes - scope:title = { - previous_holder ?= { save_scope_as = previous_holder } - save_scope_as = ceremonial_title - holder = { - house = { save_scope_as = ceremonial_house } - save_scope_as = ceremonial_liege - house = { save_scope_as = ceremonial_house } - if = { - limit = { government_is_japanese_trigger = yes } - ### REVOKE ALL GOVERNORSHIPS IF TENNO NOT RESTORED - if = { - limit = { - is_independent_ruler = no - NOT = { has_global_variable = tenno_restored } - } - every_held_title = { - limit = { - tier >= tier_county - is_landless_type_title = no - is_noble_family_title = no - NOT = { scope:title ?= this } - } - add_to_list = lost_titles - } - create_title_and_vassal_change = { - type = conquest - save_scope_as = title_change - add_claim_on_loss = no - } - every_in_list = { - list = lost_titles - change_title_holder_include_vassals = { - holder = root.top_liege - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - } - } - ### CLEANUP RELEVANT TRAITS - if = { - limit = { has_trait = former_emperor } - remove_trait = former_emperor - } - } - } - tgp_new_ceremonial_liege_notification_effect = { TITLE = scope:title } - } - - option = { - name = tgp_japan_general.9100.a - } -} - -## BECOME CLOISTRED EMPEROR DECISION FOR CEREMONIAL EMPEROR REGENT - -tgp_japan_general.9120 = { - type = character_event - title = tgp_japan_general.9120.t - desc = tgp_japan_general.9120.desc - theme = crown - left_portrait = { - character = root - animation = holding_hu - } - lower_left_portrait = { - character = scope:emperor_player_heir - trigger = { this != title:e_japan.previous_holder } - } - lower_right_portrait = { - character = title:e_japan.previous_holder - } - - trigger = { - has_tgp_dlc_trigger = yes - NOR = { - has_global_variable = tenno_restored - var:ascended_throne_reason ?= flag:conquest_claim - var:ascended_throne_reason ?= flag:conquest - } - } - - on_trigger_fail = { - trigger_event = tgp_japan_general.9100 - } - - immediate = { - player_heir = { save_scope_as = emperor_player_heir } - } - - # Become Cloistered Emperor - option = { - name = tgp_japan_general.9120.a - japan_clear_flavour_flags_effect = yes - add_character_flag = joko_flag - change_influence = major_influence_gain - if = { - limit = { - NOT = { has_trait = devoted } - } - add_trait = devoted - } - if = { - limit = { - NOT = { has_trait = former_emperor } - } - add_trait = former_emperor - } - create_title_and_vassal_change = { - type = appointment - save_scope_as = title_change - add_claim_on_loss = no - } - title:k_chrysanthemum_throne = { - change_title_holder = { - holder = scope:emperor_player_heir - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - scope:emperor_player_heir = { add_character_flag = ceremonial_liege_flag } - tgp_new_ceremonial_liege_notification_effect = { TITLE = title:k_chrysanthemum_throne } - ai_chance = { - base = 50 - } - } - - #Option B - option = { - name = tgp_japan_general.9120.b - japan_clear_flavour_flags_effect = yes - add_character_flag = ceremonial_liege_flag - add_prestige = major_prestige_loss - every_vassal = { - custom = custom.every_vassal - add_opinion = { - target = root - modifier = angry_opinion - opinion = -25 - } - } - custom_tooltip = tgp_japan_emperor_restoration_decision_faction_effect - ai_chance = { - base = 0 - } - } -} - -# IMPERIAL POLICY NOTIFICATION - -tgp_japan_general.9300 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { scope:liege = { has_realm_law = defense_mobilization_law } } - desc = tgp_japan_general.9300.t.defense_mobilization_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = disarmament_law } } - desc = tgp_japan_general.9300.t.disarmament_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = isolation_law } } - desc = tgp_japan_general.9300.t.isolation_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = imperial_expansion_law } } - desc = tgp_japan_general.9300.t.imperial_expansion_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = manor_reform_law } } - desc = tgp_japan_general.9300.t.manor_reform_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = bandit_crackdown_law } } - desc = tgp_japan_general.9300.t.bandit_crackdown_law - } - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:liege ?= root - scope:ceremonial_liege != root - } - desc = tgp_japan_general.9300.restored_emperor - } - triggered_desc = { - trigger = { - scope:ceremonial_liege ?= root - scope:liege != root - } - desc = tgp_japan_general.9300.ceremonial_liege - } - triggered_desc = { - trigger = { - scope:ceremonial_liege ?= root - scope:liege = root - } - desc = tgp_japan_general.9300.restored_emperor - } - triggered_desc = { - trigger = { scope:ceremonial_liege != scope:liege } - desc = tgp_japan_general.9300.vassal_ceremonial - } - desc = tgp_japan_general.9300.vassal - } - desc = tgp_japan_general.9300.outro - first_valid = { - triggered_desc = { - trigger = { scope:liege = { has_realm_law = defense_mobilization_law } } - desc = tgp_japan_general.9300.defense_mobilization_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = disarmament_law } } - desc = tgp_japan_general.9300.disarmament_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = isolation_law } } - desc = tgp_japan_general.9300.isolation_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = imperial_expansion_law } } - desc = tgp_japan_general.9300.imperial_expansion_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = manor_reform_law } } - desc = tgp_japan_general.9300.manor_reform_law - } - triggered_desc = { - trigger = { scope:liege = { has_realm_law = bandit_crackdown_law } } - desc = tgp_japan_general.9300.bandit_crackdown_law - } - } - } - theme = crown - left_portrait = { - character = scope:liege - animation = writing - } - right_portrait = { - character = scope:ceremonial_liege - animation = holding_hu - trigger = { - NOT = { this = scope:liege } - } - } - override_background = { reference = throne_room_scope } - - immediate = { - play_sound_effect = "event:/DLC/EP4/SFX/Stingers/Japan/tgp_mx_sting_restoring_japanese_emperor" - tgp_save_realm_ceremonial_liege_effect = yes - if = { - limit = { tgp_realm_has_ceremonial_liege_trigger = no } - save_scope_as = ceremonial_liege - save_scope_as = liege - } - scope:ceremonial_liege ?= { save_scope_as = background_throne_room_scope } - scope:liege = { - if = { - limit = { NOT = { exists = scope:background_throne_room_scope } } - save_scope_as background_throne_room_scope - } - } - } - - option = { - name = { - trigger = { - scope:liege = { has_realm_law = disarmament_law } - government_has_flag = government_is_japan_feudal - } - text = tgp_japan_general.9300.a.disarmament_soryo - } - name = { - text = tgp_japan_general.9300.a - } - scope:liege = { - show_as_tooltip = { - switch = { - trigger = has_realm_law - defense_mobilization_law = { add_realm_law = defense_mobilization_law } - disarmament_law = { add_realm_law = disarmament_law } - isolation_law = { add_realm_law = isolation_law } - imperial_expansion_law = { add_realm_law = imperial_expansion_law } - manor_reform_law = { add_realm_law = manor_reform_law } - bandit_crackdown_law = { add_realm_law = bandit_crackdown_law } - } - } - } - } -} - -#scripted stuff for Eradicate House cb post war events tgp_japan_general.9550 - -#valid courtiers to kill -scripted_trigger tgp_japan_soryo_eradicate_cb_valid_courtier = { - NOR = { - scope:loser_spouse ?= this - scope:loser_heir ?= this - is_close_family_of = scope:loser - } -} -#valid house members to kill -scripted_trigger tgp_japan_soryo_eradicate_cb_valid_family = { - NOT = { - scope:loser_heir ?= this - } - OR = { - is_close_family_of = scope:loser - is_spouse_of = scope:loser - } -} -#If loser isn't house head (i.e. has no manor), their heir becomes a landless adventurer. If not we move their manor to a friendly lord's land. -scripted_effect tgp_japan_soryo_eradicate_cb_heir_go_to_savior = { - scope:loser_heir ?= { - if = { - limit = { - NOT = { - exists = scope:loser.domicile - } - has_dlc_feature = roads_to_power - } - create_landless_adventurer_title_effect = { - REASON = flag:eradicate - FLAVOR_CHAR = scope:winner - } - } - else = { - custom_tooltip = { - text = tgp_japan_soryo_eradicate_cb_heir_move_manor_to_savior_tt - scope:loser.domicile = { - move_domicile = scope:savior.capital_province - } - } - } - } -} -#If loser successfully flees and isn't house head (i.e. has no manor), they becomes a landless adventurer. If not we move their manor to a friendly lord's land. -scripted_effect tgp_japan_soryo_eradicate_cb_loser_go_to_savior = { - if = { - limit = { - NOT = { - exists = scope:loser.domicile - } - has_dlc_feature = roads_to_power - } - create_landless_adventurer_title_effect = { - REASON = flag:eradicate - FLAVOR_CHAR = scope:winner - } - } - else_if = { - limit = { - exists = scope:savior - } - custom_tooltip = { - text = tgp_japan_soryo_eradicate_cb_heir_move_to_savior_tt - scope:loser.domicile = { - move_domicile = scope:savior.capital_province - } - } - } - else = { - custom_tooltip = { - text = tgp_japan_soryo_eradicate_cb_heir_move_to_cap_tt - scope:loser.domicile = { - move_domicile = scope:loser_heir.top_liege.capital_province - } - } - } -} -#Loser kills loser's family to avoid dishonor -scripted_effect tgp_japan_soryo_eradicate_cb_kill_family = { - scope:loser = { - every_courtier = { - custom = every_close_family_house_member_in_court - custom_tooltip = is_killed_by_you_and_you_kill_self - limit = { - OR = { - AND = { - house = scope:loser.house - is_close_family_of = scope:loser - } - is_spouse_of = scope:loser - } - NOT = { - this = scope:loser_heir - } - } - hidden_effect = { - death = { - death_reason = death_avoid_dishonor - killer = scope:winner - } - } - - } - } -} -#Winner kills loser's family -scripted_effect tgp_japan_soryo_eradicate_cb_kill_house = { - scope:loser = { - every_courtier = { - custom = every_house_member_in_court - limit = { - OR = { - is_spouse_of = scope:loser - house = scope:loser.house - } - NOT = { - scope:loser_heir ?= this - } - } - death = { - death_reason = death_eradicated - killer = scope:winner - } - } - house = { - every_house_member = { - custom = every_house_member_mad - add_opinion = { - modifier = eradicated_my_house_opinion - target = scope:winner - } - } - } - } -} -#You lost Eradicate House cb war tgp_japan_general.9550 -tgp_japan_general.9550 = { - type = character_event - title = tgp_japan_general.9550.t - window = big_event_window - desc = { - first_valid = { - #You started it, but lost - triggered_desc = { - trigger = { - scope:loser = scope:attacker - } - desc = tgp_japan_general.9550.desc.intro.a - } - #You were attacked - desc = tgp_japan_general.9550.desc.intro.b - } - desc = tgp_japan_general.9550.desc - first_valid = { - #You are alone - triggered_desc = { - trigger = { - NOR = { - exists = scope:loser_spouse - exists = scope:loser_heir - } - } - desc = tgp_japan_general.9550.desc.alone - } - #you are with your family - desc = tgp_japan_general.9550.desc.fam - } - desc = tgp_japan_general.9550.desc.end - } - theme = death - override_background = { - reference = corridor_night - } - #war loser - left_portrait = { - character = scope:loser - animation = beg - } - #spouse - center_portrait = { - trigger = { exists = scope:loser_spouse } - character = scope:loser_spouse - animation = crying - } - #heir - right_portrait = { - trigger = { exists = scope:loser_heir } - character = scope:loser_heir - animation = disbelief - } - #killed courtiers - lower_left_portrait = { - trigger = { exists = scope:dead_courtier_1 } - character = scope:dead_courtier_1 - } - lower_center_portrait = { - trigger = { exists = scope:dead_courtier_2 } - character = scope:dead_courtier_2 - } - lower_right_portrait = { - trigger = { exists = scope:dead_courtier_3 } - character = scope:dead_courtier_3 - } - - immediate = { - save_scope_as = loser - if = { - limit = { - scope:loser = scope:attacker - } - scope:defender = { - save_scope_as = winner - } - } - else = { - scope:attacker = { - save_scope_as = winner - } - } - #Find close family if they exist - #spouse - scope:loser.primary_spouse ?= { - save_scope_as = loser_spouse - } - #heir - scope:loser.player_heir ?= { - if = { - limit = { - is_courtier_of = scope:loser - } - save_scope_as = loser_heir - } - } - #Find courtiers to kill - ordered_courtier = { - limit = { - tgp_japan_soryo_eradicate_cb_valid_courtier = yes - } - #the more they like you the more it hurts - order_by = "opinion(root)" - max = 3 - #always put this when there is a max or it will be unhappy who knows why - check_range_bounds = no - if = { - limit = { exists = scope:dead_courtier_2 } - save_scope_as = dead_courtier_3 - } - else_if = { - limit = { exists = scope:dead_courtier_1 } - save_scope_as = dead_courtier_2 - } - else = { save_scope_as = dead_courtier_1 } - death = { - death_reason = death_eradicated - killer = scope:winner - } - } - - #Find savior for you or your heir to flee to the lands of - top_liege = { - ordered_vassal = { - limit = { - NOT = { - this = scope:loser - } - is_landed = yes - highest_held_title_tier > tier_barony - } - order_by = "opinion(root)" - save_scope_as = savior - } - } - } - - #1) kill yourself (and family) to maintain honor - option = { - name = { - text = { - first_valid = { - #alone - triggered_desc = { - trigger = { - NOT = { - exists = scope:loser_spouse - exists = scope:loser_heir - } - } - desc = tgp_japan_general.9550.a.alone - } - #if you have family - desc = tgp_japan_general.9550.a.fam - } - } - } - flavor = { - first_valid = { - #alone - triggered_desc = { - trigger = { - NOT = { - exists = scope:loser_spouse - exists = scope:loser_heir - } - } - desc = tgp_japan_general.9550.a.alone.flavor - } - #fam - desc = tgp_japan_general.9550.a.fam.flavor - } - } - #Heir sets up manor in land of savior - show_as_tooltip = { - tgp_japan_soryo_eradicate_cb_heir_go_to_savior = yes - tgp_japan_soryo_eradicate_cb_kill_family = yes - - #then kill yourself - death = { - death_reason = death_avoid_dishonor - } - } - - house = { - add_house_modifier = { - modifier = house_eradicated_suicide_modifier - years = house_eradicated_duration_value - } - } - save_scope_as = suicide - ai_chance = { base = 0} - } - #2) attempt to flee (lose honor but maybe keep life) - option = { - name = tgp_japan_general.9550.b - flavor = tgp_japan_general.9550.b.flavor - - duel = { - skill = intrigue - value = high_skill_rating - #If you win you escape and move your manor to a friendly lord's land or if you don't have manor you become an adventurer - 5 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 1 - } - modifier = { - add = { - value = prowess - subtract = average_skill_rating - } - } - modifier = { - add = 1.5 - has_character_modifier = childhood_prison_escape - } - desc = tgp_japan_general.9550.b.success - send_interface_toast = { - title = tgp_japan_general.9550.b.success - left_icon = scope:loser - right_icon = scope:winner - tgp_japan_soryo_eradicate_cb_loser_go_to_savior = yes - } - save_scope_as = flee_success - } - 15 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 1 - } - modifier = { - add = 2.5 - OR = { - has_trait = weak - has_trait = craven - has_trait = physique_bad_1 - } - } - modifier = { - add = 5 - OR = { - has_trait = physique_bad_2 - has_trait = physique_bad_3 - } - } - desc = tgp_japan_general.9550.b.failure - show_as_tooltip = { - death = { - death_reason = death_eradicated - killer = scope:winner - } - tgp_japan_soryo_eradicate_cb_kill_house = yes - } - send_interface_toast = { - title = tgp_japan_general.9550.b.failure - left_icon = scope:loser - right_icon = scope:winner - } - } - } - stress_impact = { - brave = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - ai_chance = { base = 0} - house = { - add_house_modifier = { - modifier = house_eradicated_modifier - years = house_eradicated_duration_value - } - } - } - #3) put yourself to the mercy of your captor (AI only option so you can execute them) - option = { - name = tgp_japan_general.9550.c - #only for AI - trigger = { - is_ai = yes - } - ai_chance = { base = 100} - house = { - add_house_modifier = { - modifier = house_eradicated_modifier - years = house_eradicated_duration_value - } - } - } - after = { - scope:winner = { - trigger_event = tgp_japan_general.9551 - } - } -} -#You won eradicate house cb war -tgp_japan_general.9551 = { - type = character_event - window = big_event_window - title = tgp_japan_general.9551.t - desc = { - first_valid = { - #if you capture loser - triggered_desc = { - trigger = { - NOR = { - exists = scope:flee_success - exists = scope:suicide - } - } - desc = tgp_japan_general.9551.desc.intro - } - #intro for alt - desc = tgp_japan_general.9551.desc.alt.intro - } - first_valid = { - #if loser suicides - triggered_desc = { - trigger = { - exists = scope:suicide - } - desc = tgp_japan_general.9551.desc.alt.suicide - } - #if loser escapes - triggered_desc = { - trigger = { - exists = scope:flee_success - } - desc = tgp_japan_general.9551.desc.alt.escape - } - } - #outro for alt - triggered_desc = { - trigger = { - OR = { - exists = scope:flee_success - exists = scope:suicide - } - } - desc = tgp_japan_general.9551.desc.alt.outro - } - } - - theme = battle - override_effect_2d = { reference = flies } - #root winner - left_portrait = { - character = scope:winner - triggered_animation = { - trigger = { - NOR = { - exists = scope:flee_success - exists = scope:suicide - } - } - #off with his head! - animation = chudan_no_kamae - } - #I didn't get to kill him! - animation = anger - camera = camera_event_center_coronation_kneeling - } - #loser - right_portrait = { - trigger = { - NOR = { - exists = scope:flee_success - exists = scope:suicide - } - } - character = scope:loser - animation = anger - camera = camera_event_near_angle_345_close - } - #freshly killed loser house members - lower_left_portrait = { - trigger = { exists = scope:portrait } - character = scope:portrait - } - lower_center_portrait = { - trigger = { exists = scope:dead_loser_family_2 } - character = scope:dead_loser_family_2 - } - lower_right_portrait = { - trigger = { exists = scope:dead_loser_family_3 } - character = scope:dead_loser_family_3 - } - - immediate = { - #find loser's region - scope:loser.capital_county.empire = { - save_scope_as = loser_region - } - if = { - limit = { exists = scope:suicide } - tgp_japan_soryo_eradicate_cb_heir_go_to_savior = yes - tgp_japan_soryo_eradicate_cb_kill_family = yes - } - #take land - tgp_japan_soryo_eradicate_cb_transfer_effect = yes - if = { - limit = { exists = scope:suicide } - scope:loser = { - death = { - death_reason = death_avoid_dishonor - killer = scope:winner - } - } - } - scope:loser_heir ?= { - #make loser_heir and nemesis or rival friends - if = { - limit = { - can_set_relation_nemesis_trigger = { - CHARACTER = scope:winner - } - } - set_relation_nemesis = { - reason = nemesis_killed_family - target = scope:winner - } - } - else_if = { - limit = { - can_set_relation_rival_trigger = { - CHARACTER = scope:winner - } - } - set_relation_rival = { - reason = nemesis_killed_family - target = scope:winner - } - } - #make loser_heir and savior friends - if = { - limit = { - can_set_relation_friend_trigger = { - CHARACTER = scope:winner - } - } - set_relation_friend = { - reason = friend_eradication_save - target = scope:savior - } - } - } - #grab some of the loser's house members to kill right away to help set the mood - scope:loser = { - ordered_courtier = { - limit = { - tgp_japan_soryo_eradicate_cb_valid_family = yes - } - order_by = "opinion(scope:loser)" - max = 3 - check_range_bounds = no - if = { - limit = { exists = scope:dead_loser_family_2 } - save_scope_as = dead_loser_family_3 - } - else_if = { - limit = { exists = scope:dead_loser_family_1 } - save_scope_as = dead_loser_family_2 - } - else = { save_scope_as = dead_loser_family_1 } - death = { - death_reason = death_eradicated - killer = scope:winner - } - } - } - if = { - limit = { - OR = { - exists = scope:suicide - exists = scope:flee_success - } - } - scope:loser = { save_scope_as = portrait } - } - else = { - scope:dead_loser_family_1 ?= { save_scope_as = portrait } - } - } - - #1) Execute loser and eradicate the house! - option = { - name = tgp_japan_general.9551.a - flavor = tgp_japan_general.9551.a.flavor - show_as_tooltip = { - scope:loser = { - death = { - death_reason = death_avoid_dishonor - killer = scope:winner - } - } - } - #kill house - tgp_japan_soryo_eradicate_cb_kill_house = yes - add_dread = medium_dread_gain - house = { - add_house_modifier = { - modifier = rival_eradicated_modifier - years = house_eradicated_duration_value - } - } - #kill loser - if = { - limit = { - NOT = { exists = scope:suicide } - } - scope:loser = { - death = { - death_reason = death_eradicated - killer = scope:winner - } - } - } - } -} - -# Event to force the historical birth of Emperor Antoku for Genpei content -tgp_japan_general.9910 = { - type = character_event - hidden = yes - - trigger = { has_tgp_dlc_trigger = yes } - - immediate = { - add_trait = pregnant - set_variable = { - name = historical_pregnancy - value = flag:antoku - years = 1 # fallback cleanup - } - set_variable = { - name = historical_pregnancy_start - value = 430048 # ~1178.3.15 - } - add_character_flag = { - flag = birth_will_go_smoothly - years = 1 # fallback cleanup - } - trigger_event = { - id = birth.0001 - days = 82 # 1178.12.22 - } - # Error suppression - show_as_tooltip = { trigger_event = tgp_japan_general.9910 } - } -} diff --git a/events/dlc/tgp/tgp_japan_yearly_events.txt b/events/dlc/tgp/tgp_japan_yearly_events.txt deleted file mode 100644 index d56ae41f7..000000000 --- a/events/dlc/tgp/tgp_japan_yearly_events.txt +++ /dev/null @@ -1,4388 +0,0 @@ -namespace = tgp_japan_yearly_events - -########################################################## -# Japan Yearly Events -# tgp_japan_yearly_events - 0001-0999 -# by Anna Johansson and Laurence Kennedy -########################################################## - -########################################################## -# 0001 - Spreading Joy - Furoshiki (gift wrap something for a loved one) -# 0006 - Treasures from the Sea - Ama divers (establish a trade deal with them) -# 0012 - Monkey Business - Onsen -# 0013 - Purifying the Spirit - Onsen -# 0014 - Taking It Easy - Onsen -# 0021 - Among the Blossoms - Hanami (Cherry Blossoms) -# 0026 - Tales of the Tengu - Tengu -# 0027 - Prove Your Worth - Tengu -# 0028 - False Rumors - Tengu -# 0029 - Practice Makes Perfect - Tengu -# 0036 - Green Thumb -# 1200 - Congestion in the Capital -# 1210 - Fit to Lead? -# 1225 - A Poetic Life -######################################################### - -# 0001 - Spreading Joy - Furoshiki (gift wrap something for a loved one) -tgp_japan_yearly_events.0001 = { - type = character_event - title = tgp_japan_yearly_events.0001.t - desc = tgp_japan_yearly_events.0001.desc - theme = love - override_background = market - cooldown = { years = 30 } - left_portrait = { - character = root - animation = japanese_war_fan - } - - #Person we care about - right_portrait = { - character = scope:gift_receiver - animation = disapproval - camera = camera_event_center_close_to_right - } - - artifact = { - target = scope:gift_uchiwa - position = lower_left_portrait - } - - trigger = { - has_tgp_dlc_trigger = yes - is_available_healthy_adult = yes - culture = { - has_cultural_pillar = heritage_japonic - } - location = { - geographical_region = world_asia_japan - } - any_relation = { - type = friend - type = best_friend - type = soulmate - type = lover - type = crush - is_ai = yes - } - any_spouse = { - is_ai = yes - } - } - - immediate = { - every_relation = { - type = friend - type = best_friend - type = soulmate - type = lover - type = crush - limit = { - is_ai = yes - } - add_to_list = potential_gift_receiver - } - random_spouse = { - limit = { - is_ai = yes - } - add_to_list = potential_gift_receiver - } - - ordered_in_list = { - list = potential_gift_receiver - #find the person who likes you the least so improving your relationship is most impactful. - order_by = { - value = "opinion(root)" - multiply = -1 - max = 1 - } - save_scope_as = gift_receiver - } - - #Uchiwa is a type of fan that was popular in China/Japan - hidden_effect_new_object = { - create_artifact = { - name = uchiwa - description = uchiwa_desc - rarity = common - type = miscellaneous - visuals = tapestry - modifier = artifact_attraction_opinion_1_modifier - modifier = artifact_fertility_gain_1_modifier - save_scope_as = gift_uchiwa - } - } - } - - #Option A) Get gift for someone you care about - option = { - name = tgp_japan_yearly_events.0001.a - - scope:gift_uchiwa = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 1 - } - set_owner = { - target = scope:gift_receiver - history = { - actor = root - recipient = scope:gift_receiver - type = given - } - } - } - - send_interface_toast = { - title = tgp_japan_yearly_events.0001.a_spouse_toast - left_icon = root - right_icon = scope:gift_receiver - - if = { - limit = { - can_set_relation_lover_trigger = { CHARACTER = scope:gift_receiver } - } - progress_towards_lover_effect = { - CHARACTER = scope:gift_receiver - REASON = tgp_progress_towards_lover_furoshiki - OPINION = 0 - } - } - - reverse_add_opinion = { - modifier = grateful_opinion - target = scope:gift_receiver - opinion = 30 - } - } - - remove_short_term_gold = minor_gold_value - - stress_impact = { - gregarious = minor_stress_impact_loss - generous = minor_stress_impact_loss - greedy = minor_stress_impact_gain - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = -1 - ai_sociability = 1 - } - } - } - - #Option B) You get artifact for yourself - option = { - name = tgp_japan_yearly_events.0001.b - flavor = tgp_japan_yearly_events.0001.b.flavor - scope:gift_uchiwa = { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 1 - } - set_owner = { - target = root - history = { - recipient = root - type = purchased - } - } - } - remove_short_term_gold = minor_gold_value - stress_impact = { - gregarious = minor_stress_impact_gain - generous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_sociability = -1 - } - } - } - #Option C) You are above these petty merchants and their wares (opt out) - option = { - name = tgp_japan_yearly_events.0001.c - add_piety = minor_piety_gain - stress_impact = { - gregarious = minor_stress_impact_gain - generous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_sociability = -1 - } - } - } -} - -# 0006 - Treasures from the Sea - Ama divers (establish a trade deal with them) -tgp_japan_yearly_events.0006 = { - type = character_event - title = tgp_japan_yearly_events.0006.t - desc = tgp_japan_yearly_events.0006.desc - theme = travel - override_background = bp3_coast - cooldown = { years = 30 } - left_portrait = { - character = root - animation = steward - } - - right_portrait = { - character = scope:pearl_diver - animation = idle - outfit_tags = { no_clothes } - } - - trigger = { - has_tgp_dlc_trigger = yes - is_available_travelling_adult = yes - is_location_valid_for_travel_event_on_land = yes - location = { - geographical_region = world_asia_japan - is_coastal = yes - } - } - - immediate = { - create_character = { - template = tgp_japan_yearly_events_pearl_diver_template - location = root.location - save_scope_as = pearl_diver - } - } - - #Diplomacy Duel - Selling freshly caught fish/seaweed - option = { - name = tgp_japan_yearly_events.0006.a - - duel = { - skill = diplomacy - target = scope:pearl_diver - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.success - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.success - left_icon = root - right_icon = scope:pearl_diver - capital_county.title_province = { - add_province_modifier = { - modifier = tgp_japan_fresh_fish_county_modifier - years = 10 - } - } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - remove_short_term_gold = tiny_gold_value - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.failure - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.failure - left_icon = root - right_icon = scope:pearl_diver - add_prestige = minor_prestige_loss - } - } - } - } - - stress_impact = { - gluttonous = minor_stress_impact_gain - temperate = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_sociability = 1 - } - } - } - - #Stewardship Duel - Selling found pearls - option = { - name = tgp_japan_yearly_events.0006.b - - duel = { - skill = stewardship - target = scope:pearl_diver - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.success - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.success - left_icon = root - right_icon = scope:pearl_diver - capital_county.title_province = { - add_province_modifier = { - modifier = tgp_japan_pearl_county_modifier - years = 10 - } - } - add_stewardship_lifestyle_xp = medium_lifestyle_xp - remove_short_term_gold = tiny_gold_value - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.failure - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.failure - left_icon = root - right_icon = scope:pearl_diver - add_prestige = minor_prestige_loss - } - } - } - } - - stress_impact = { - generous = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_rationality = 1 - ai_sociability = 1 - } - } - } - - #Learning Duel - Giving abalone to temples - option = { - name = tgp_japan_yearly_events.0006.c - - duel = { - skill = learning - target = scope:pearl_diver - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.success - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.success - left_icon = root - right_icon = scope:pearl_diver - capital_county.title_province = { - add_province_modifier = { - modifier = tgp_japan_abalone_temple_offerings_county_modifier - years = 10 - } - } - add_learning_lifestyle_xp = medium_lifestyle_xp - remove_short_term_gold = tiny_gold_value - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0006.tt.failure - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0006.tt.failure - left_icon = root - right_icon = scope:pearl_diver - add_prestige = minor_prestige_loss - } - } - } - } - - stress_impact = { - lazy = minor_stress_impact_gain - diligent = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = 1 - ai_sociability = 1 - } - } - } - - #Opt out - option = { - name = tgp_japan_yearly_events.0006.d - add_prestige = minor_prestige_gain - - stress_impact = { - diligent = minor_stress_impact_gain - lazy = minor_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - } - } - } - - after = { - scope:pearl_diver ?= { - silent_disappearance_ai_effect = yes - } - } -} - -# 0012 - Monkey Business - Onsen -tgp_japan_yearly_events.0012 = { - type = character_event - title = tgp_japan_yearly_events.0012.t - desc = tgp_japan_yearly_events.0012.desc - theme = travel - override_background = bp3_mountain_winter - cooldown = { years = 20 } - override_effect_2d = { reference = fog } - left_portrait = { - character = root - animation = disbelief - } - - widget = { - is_shown = { - current_season_winter = yes - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - trigger = { - has_tgp_dlc_trigger = yes - is_available_travelling_adult = yes - NOT = { - has_character_flag = had_event_tgp_japan_yearly_events.0013 - has_character_flag = had_event_tgp_japan_yearly_events.0014 - } - location = { - geographical_region = world_asia_japan - OR = { - terrain = mountains - terrain = hills - } - } - } - - immediate = { - add_character_flag = { - flag = had_event_tgp_japan_yearly_events.0012 - years = 15 - } - } - - #Martial/Intimidation - scare the monkey away from the hot spring - option = { - name = tgp_japan_yearly_events.0012.a - - current_travel_plan = { - delay_travel_plan = { days = 3 } - } - - duel = { - skill = martial - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = 20 - max = 90 - } - desc = tgp_japan_yearly_events.0012.a.monkey.martial.tt.success - send_interface_toast = { - title = tgp_japan_yearly_events.0012.a.monkey.martial.tt.success - left_icon = root - add_character_modifier = { - modifier = tpg_japan_hot_spring_relaxation_modifier - years = 5 - } - add_martial_lifestyle_xp = medium_lifestyle_xp - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 20 - max = 90 - } - desc = tgp_japan_yearly_events.0012.a.monkey.martial.tt.failure - send_interface_toast = { - title = tgp_japan_yearly_events.0012.a.monkey.martial.tt.failure - left_icon = root - add_prestige = medium_prestige_loss - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - martial >= decent_skill_rating - add = 20 - } - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -1 - ai_vengefulness = 1 - } - } - } - - #Intrigue/Disguise - prove to the monkey that you are no threat - option = { - name = tgp_japan_yearly_events.0012.b - - current_travel_plan = { - delay_travel_plan = { days = 3 } - } - - duel = { - skill = intrigue - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0012.b.monkey.intrigue.tt.success - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0012.b.monkey.intrigue.tt.success - left_icon = root - add_character_modifier = { - modifier = tpg_japan_hot_spring_relaxation_modifier - years = 5 - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0012.b.monkey.intrigue.tt.failure - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0012.b.monkey.intrigue.tt.failure - left_icon = root - add_prestige = medium_prestige_loss - } - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - intrigue >= decent_skill_rating - add = 20 - } - ai_value_modifier = { - ai_boldness = 1 - ai_rationality = -1 - } - } - } - - #Opt out, you don't want to mess with the monkey - option = { - name = tgp_japan_yearly_events.0012.c - - add_stress = minor_stress_loss - - stress_impact = { - brave = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_boldness = -1 - ai_rationality = 1 - } - } - } -} - -# 0013 - Purifying the Spirit - Onsen -tgp_japan_yearly_events.0013 = { - type = character_event - title = tgp_japan_yearly_events.0013.t - desc = tgp_japan_yearly_events.0013.desc - theme = travel - override_background = bp3_hills_winter - cooldown = { years = 20 } - override_effect_2d = { reference = fog } - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:mystic - animation = physician - } - - widget = { - is_shown = { - current_season_winter = yes - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - trigger = { - has_tgp_dlc_trigger = yes - is_available_travelling_adult = yes - NOT = { - has_character_flag = had_event_tgp_japan_yearly_events.0012 - has_character_flag = had_event_tgp_japan_yearly_events.0014 - } - location = { - geographical_region = world_asia_japan - OR = { - terrain = mountains - terrain = hills - } - } - } - - immediate = { - add_character_flag = { - flag = had_event_tgp_japan_yearly_events.0013 - years = 15 - } - - random_pool_character = { - province = root.location - limit = { - has_trait = lifestyle_mystic - is_available_healthy_ai_adult = yes - } - save_scope_as = mystic - } - if = { - limit = { - NOT = { exists = scope:mystic } - } - create_character = { - template = default_mystic_character - culture = root.culture - location = root.location - save_scope_as = mystic - } - add_character_flag = { - flag = fake_mystic - days = 1 - } - } - } - - #Join the mystic in his ritualistic bath, chance of random ailments or buffs - option = { - name = tgp_japan_yearly_events.0013.a - - current_travel_plan = { - delay_travel_plan = { days = 3 } - } - - add_character_modifier = { - modifier = tpg_japan_hot_spring_relaxation_modifier - years = 5 - } - if = { - limit = { - has_trait = ill - } - remove_trait = ill - } - - random_list = { - 33 = { - custom_tooltip = tgp_japan_yearly_mystic_positive.tt - send_interface_toast = { - title = tgp_japan_yearly_mystic_positive.tt - left_icon = root - right_icon = scope:mystic - - add_character_modifier = { - modifier = tgp_japan_hot_spring_mystic_positive_modifier - years = 5 - } - } - } - 33 = { - custom_tooltip = tgp_japan_yearly_mystic_neutral.tt - send_interface_toast = { - title = tgp_japan_yearly_mystic_neutral.tt - left_icon = root - right_icon = scope:mystic - - add_character_modifier = { - modifier = tgp_japan_hot_spring_mystic_neutral_modifier - years = 5 - } - } - } - 33 = { - custom_tooltip = tgp_japan_yearly_mystic_negative.tt - send_interface_toast = { - title = tgp_japan_yearly_mystic_negative.tt - left_icon = root - right_icon = scope:mystic - - add_character_modifier = { - modifier = tgp_japan_hot_spring_mystic_negative_modifier - years = 5 - } - } - } - } - - stress_impact = { - zealous = minor_stress_impact_loss - cynical = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_compassion = 1 - ai_sociability = 1 - } - } - } - - #Ask for guidance/wisdom, but do not join him - option = { - name = tgp_japan_yearly_events.0013.b - - current_travel_plan = { - delay_travel_plan = { days = 3 } - } - - duel = { - skill = learning - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0013.b.mystic.learning.tt.success - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0013.b.mystic.learning.tt.success - left_icon = root - right_icon = scope:mystic - add_learning_lifestyle_xp = medium_lifestyle_xp - - if = { - limit = { - has_trait = lifestyle_mystic - } - add_trait_xp = { - trait = lifestyle_mystic - value = lifestyle_mystic_xp_gain_minor_value - } - } - else = { - random = { - chance = 33 - add_trait = lifestyle_mystic - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0013.b.mystic.learning.tt.failure - min = 20 - max = 90 - root = { - send_interface_toast = { - title = tgp_japan_yearly_events.0013.b.mystic.learning.tt.failure - left_icon = root - right_icon = scope:mystic - add_piety = medium_piety_loss - } - } - } - } - - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - ai_compassion = -1 - ai_rationality = 1 - ai_sociability = 1 - } - } - } - - #Opt out - option = { - name = tgp_japan_yearly_events.0013.c - - stress_impact = { - cynical = minor_stress_impact_loss - zealous = minor_stress_impact_gain - } - - add_stress = minor_stress_loss - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - ai_compassion = -1 - ai_rationality = 1 - ai_sociability = 1 - } - } - } - after = { - if = { - limit = { - has_character_flag = fake_mystic - } - } - scope:mystic ?= { - silent_disappearance_effect = yes - } - } -} - -# 0014 - Taking It Easy - Onsen -tgp_japan_yearly_events.0014 = { - type = character_event - title = tgp_japan_yearly_events.0014.t - desc = tgp_japan_yearly_events.0014.desc - theme = travel - override_background = bp3_mountain_winter - override_effect_2d = { reference = fog } - cooldown = { years = 20 } - left_portrait = { - character = root - animation = admiration - } - - widget = { - is_shown = { - current_season_winter = yes - } - gui = "event_window_widget_vfx_snow" - container = "foreground_shader_vfx_container" - } - - trigger = { - has_tgp_dlc_trigger = yes - is_available_travelling_adult = yes - NOT = { - has_character_flag = had_event_tgp_japan_yearly_events.0012 - has_character_flag = had_event_tgp_japan_yearly_events.0013 - } - location = { - geographical_region = world_asia_japan - OR = { - terrain = mountains - terrain = hills - } - } - } - - immediate = { - add_character_flag = { - flag = had_event_tgp_japan_yearly_events.0014 - years = 15 - } - } - - #Take a relaxing bath, stress reduction - option = { - name = tgp_japan_yearly_events.0014.a - - current_travel_plan = { - delay_travel_plan = { days = 5 } - } - - add_character_modifier = { - modifier = tpg_japan_hot_spring_relaxation_modifier - years = 5 - } - - add_stress = medium_stress_loss - - stress_impact = { - lazy = minor_stress_impact_loss - patient = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - } - } - } - - #Take an extended time off, additional stress reduction - option = { - name = tgp_japan_yearly_events.0014.b - - current_travel_plan = { - delay_travel_plan = { days = 10 } - } - - - add_character_modifier = { - modifier = tpg_japan_hot_spring_relaxation_modifier - years = 10 - } - - add_stress = major_stress_loss - - stress_impact = { - lazy = minor_stress_impact_loss - patient = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = 1 - } - } - } - - #Opt out - option = { - name = tgp_japan_yearly_events.0014.c - - stress_impact = { - lazy = minor_stress_impact_gain - impatient = minor_stress_impact_loss - } - - add_prestige = minor_prestige_gain - - add_stress = minor_stress_loss - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_energy = -1 - } - } - } -} - -# 0021 - Among the Blossoms - Hanami (Cherry Blossoms) -tgp_japan_yearly_events.0021 = { - type = character_event - title = tgp_japan_yearly_events.0021.t - desc = tgp_japan_yearly_events.0021.desc - theme = love - override_background = garden - cooldown = { years = 15 } - left_portrait = { - character = root - animation = toast_goblet - } - right_portrait = { - character = scope:hanami_enjoyer - animation = storyteller - } - - trigger = { - has_tgp_dlc_trigger = yes - drinks_alcohol_trigger = yes - any_courtier = { - NOT = { has_trait = blind } - is_available_healthy_adult = yes - } - location = { - geographical_region = world_asia_japan - } - NOT = { has_trait = blind } - is_available_healthy_adult = yes - is_at_war = no - #The trees are in bloom between the end of March until early May - current_season_spring = yes - } - - immediate = { - random_courtier = { - limit = { - NOT = { has_trait = blind } - is_available_healthy_adult = yes - } - save_scope_as = hanami_enjoyer - } - } - - #Make an offering of sake to appease the gods - option = { - name = tgp_japan_yearly_events.0021.a - random_list = { - #Character modifier - 40 = { - show_chance = no - desc = tgp_japan_yearly_events.0021.a_pleased_deities.tt - send_interface_toast = { - right_icon = root - title = tgp_japan_yearly_events.0021.a_char_modifier.tt - add_character_modifier = { - modifier = tgp_japan_sake_offering_character_modifier - years = 5 - } - } - } - #County modifier - 40 = { - show_chance = no - desc = tgp_japan_yearly_events.0021.a_pleased_deities.tt - send_interface_toast = { - right_icon = root - title = tgp_japan_yearly_events.0021.a_county_modifier.tt - capital_county = { - add_county_modifier = { - modifier = tgp_japan_sake_offering_county_modifier - years = 5 - } - } - } - } - #Nothing happens - 20 = { - show_chance = no - desc = tgp_japan_yearly_events.0021.a_nothing_happens.tt - send_interface_toast = { - right_icon = root - title = tgp_japan_yearly_events.0021.a_nothing_happens.tt - } - } - } - add_piety = minor_piety_gain - - add_stress = minor_stress_loss - - stress_impact = { - calm = minor_stress_impact_loss - humble = minor_stress_impact_loss - cynical = major_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = 1 - ai_energy = 1 - } - } - } - - #Simply take in the view of the celebration - option = { - name = tgp_japan_yearly_events.0021.b - - add_prestige = miniscule_prestige_gain - - add_stress = major_stress_loss - - stress_impact = { - calm = minor_stress_impact_loss - humble = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_zeal = -1 - ai_energy = 1 - } - } - } -} - -# 0026 - Tales of the Tengu - Tengu -tgp_japan_yearly_events.0026 = { - type = character_event - title = tgp_japan_yearly_events.0026.t - desc = tgp_japan_yearly_events.0026.desc - theme = memory_intrigue - override_background = tavern - cooldown = { years = 70 } - left_portrait = { - character = scope:rumormonger - animation = toast_goblet - } - right_portrait = { - character = scope:gossiper - animation = wedding_drunk - } - - trigger = { - has_tgp_dlc_trigger = yes - location = { - geographical_region = world_asia_japan - } - any_courtier_or_guest = { - count >= 2 - is_available_healthy_adult = yes - NOT = { - has_trait = temperate - } - } - is_available_healthy_adult = yes - } - - immediate = { - random_courtier_or_guest = { - limit = { - is_available_healthy_adult = yes - NOT = { - has_trait = temperate - } - } - save_scope_as = rumormonger - } - random_courtier_or_guest = { - limit = { - is_available_healthy_adult = yes - NOR = { - this = scope:rumormonger - has_trait = temperate - } - } - save_scope_as = gossiper - } - } - - #Options A) Intrigued by the rumors, try to find this Tengu - option = { - name = tgp_japan_yearly_events.0026.a - custom_tooltip = tgp_japan_yearly_events.0026.a.tt - add_character_flag = { - flag = tengu_rumors - years = 30 - } - - add_character_modifier = { - modifier = tgp_japan_tengu_rumors_character_modifier - years = 30 - } - - stress_impact = { - trusting = minor_stress_impact_loss - paranoid = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_energy = 1 - } - } - } - - # Option B) Don't bother with the talk of drunks - option = { - name = tgp_japan_yearly_events.0026.b - - add_prestige = minor_prestige_gain - - stress_impact = { - trusting = minor_stress_impact_gain - paranoid = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = -1 - } - } - } -} - -# 0027 - Prove Your Worth - Tengu -tgp_japan_yearly_events.0027 = { - type = character_event - title = tgp_japan_yearly_events.0027.t - desc = tgp_japan_yearly_events.0027.desc - theme = travel - left_portrait = { - character = root - animation = aggressive_sword - } - right_portrait = { - character = scope:tengu_warrior - animation = hasso_no_kamae - camera = camera_event_center_background_crowd_right - } - override_effect_2d = { reference = fog } - trigger = { - has_tgp_dlc_trigger = yes - has_character_flag = tengu_rumors - NOT = { - has_character_flag = had_event_tgp_japan_yearly_events.0028 - } - location = { - geographical_region = world_asia_japan - OR = { - terrain = mountains - terrain = forest - } - } - is_available_travelling_adult = yes - } - - #Create a samurai warrior - immediate = { - hidden_effect = { - remove_character_modifier = tgp_japan_tengu_rumors_character_modifier - } - - create_character = { - template = tgp_japan_yearly_events_tengu_warrior_template - location = root.location - after_creation = { - add_trait = disfigured - add_trait = albino - add_character_flag = no_headgear - } - save_scope_as = tengu_warrior - } - - scope:tengu_warrior = { - random_character_trait = { - limit = { - has_trait_category = commander - } - save_scope_as = commander_trait - } - } - - add_character_flag = { - flag = had_event_tgp_japan_yearly_events.0027 - years = 30 - } - } - - #Prove your worth, fight the warrior - option = { - name = tgp_japan_yearly_events.0027.a - - - duel = { - skill = prowess - target = scope:tengu_warrior - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0027.a.tt.success - min = 20 - max = 90 - send_interface_toast = { - title = tgp_japan_yearly_events.0027.a.tt.success - left_icon = root - right_icon = scope:tengu_warrior - custom_tooltip = tgp_japan_yearly_events.0027.a.tt.success_explanation - current_travel_plan = { - delay_travel_plan = { days = 14 } - } - add_character_flag = { - flag = real_tengu - days = 1 - } - trigger_event = { - id = tgp_japan_yearly_events.0029 - days = 13 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0027.a.tt.failure - min = 20 - max = 90 - send_interface_toast = { - title = tgp_japan_yearly_events.0027.a.tt.failure - left_icon = root - right_icon = scope:tengu_warrior - increase_wounds_no_death_effect = { REASON = battle } - - add_prestige = minor_prestige_loss - } - } - } - - stress_impact = { - brave = minor_stress_impact_loss - craven = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - ai_rationality = -1 - ai_energy = 1 - } - } - } - - #Try to convince the warrior to join you - option = { - name = tgp_japan_yearly_events.0027.b - - duel = { - skill = diplomacy - target = scope:tengu_warrior - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0027.b.tt.success - min = 20 - max = 90 - send_interface_toast = { - title = tgp_japan_yearly_events.0027.b.tt.success - left_icon = root - right_icon = scope:tengu_warrior - current_travel_plan = { - add_companion = scope:tengu_warrior - } - add_character_flag = { - flag = real_tengu - days = 1 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_japan_yearly_events.0027.b.tt.failure - min = 20 - max = 90 - send_interface_toast = { - title = tgp_japan_yearly_events.0027.b.tt.failure - left_icon = root - right_icon = scope:tengu_warrior - increase_wounds_no_death_effect = { REASON = battle } - } - } - } - - stress_impact = { - trusting = minor_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_sociability = 1 - } - } - } - - #Run away - option = { - name = tgp_japan_yearly_events.0027.c - - current_travel_plan = { - delay_travel_plan = { days = 7 } - } - - stress_impact = { - craven = minor_stress_impact_loss - shy = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_sociability = -1 - } - } - } - - after = { - remove_character_flag = tengu_rumors - if = { - limit = { - NOT = { - has_character_flag = real_tengu - } - } - scope:tengu_warrior ?= { - silent_disappearance_effect = yes - } - } - } -} - -# 0028 - False Rumors - Tengu -tgp_japan_yearly_events.0028 = { - type = character_event - title = tgp_japan_yearly_events.0028.t - desc = tgp_japan_yearly_events.0028.desc - theme = travel - left_portrait = { - character = root - animation = anger - camera = camera_body_right - } - widget = { - gui = "event_window_widget_vfx_fog" - container = "foreground_shader_vfx_container" - } - - trigger = { - has_tgp_dlc_trigger = yes - has_character_flag = tengu_rumors - NOT = { - has_character_flag = had_event_tgp_japan_yearly_events.0027 - } - location = { - geographical_region = world_asia_japan - OR = { - terrain = mountains - terrain = forest - } - } - is_available_travelling_adult = yes - } - - immediate = { - hidden_effect = { - remove_character_modifier = tgp_japan_tengu_rumors_character_modifier - } - - add_character_flag = { - flag = had_event_tgp_japan_yearly_events.0028 - years = 20 - } - } - - #Become a bit more cautious for the future - option = { - name = tgp_japan_yearly_events.0028.a - - add_character_modifier = { - modifier = tgp_japan_cautious_curiosity_character_modifier - years = 5 - } - - stress_impact = { - craven = minor_stress_impact_loss - trusting = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_vengefulness = -1 - ai_sociability = -1 - } - } - } - - #Scream to let out some stress/disappointment - option = { - name = tgp_japan_yearly_events.0028.b - - stress_impact = { - base = medium_stress_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = -1 - ai_vengefulness = 1 - } - } - } - - after = { - remove_character_flag = tengu_rumors - } -} - -# 0029 - Practice Makes Perfect - Tengu -tgp_japan_yearly_events.0029 = { - type = character_event - title = tgp_japan_yearly_events.0029.t - desc = tgp_japan_yearly_events.0029.desc - theme = travel - left_portrait = { - character = root - animation = chudan_no_kamae - camera = camera_event_center_mostly_away_right - } - right_portrait = { - character = scope:tengu_warrior - animation = chudan_no_kamae - camera = camera_event_center_pointing_forward_fov35 - } - - trigger = { - has_tgp_dlc_trigger = yes - scope:tengu_warrior ?= { is_alive = yes } - } - - #Gain blademaster combined with a trait your mentor has - option = { - name = tgp_japan_yearly_events.0029.a - - if = { - limit = { - NOT = { - has_trait = lifestyle_blademaster - } - } - add_trait = lifestyle_blademaster - } - else = { - add_trait_xp = { - trait = lifestyle_blademaster - value = 10 - } - } - - add_trait = scope:commander_trait - - stress_impact = { - ambitious = minor_stress_impact_loss - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_rationality = 1 - } - } - } - - option = { - name = tgp_japan_yearly_events.0029.b - - if = { - limit = { - NOT = { - has_trait = lifestyle_blademaster - } - } - add_trait = lifestyle_blademaster - } - else = { - add_trait_xp = { - trait = lifestyle_blademaster - value = 10 - } - } - - add_martial_lifestyle_perk_points = 1 - - stress_impact = { - ambitious = minor_stress_impact_loss - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - add = 100 - has_lifestyle = martial_lifestyle - } - ai_value_modifier = { - ai_honor = 1 - ai_rationality = 1 - } - } - } -} - -# 0036 - Reflection of Pure Land -tgp_japan_yearly_events.0036 = { - type = character_event - title = tgp_japan_yearly_events.0036.t - desc = tgp_japan_yearly_events.0036.desc - theme = memory_positive - override_background = garden - cooldown = { years = 30 } - left_portrait = { - character = root - animation = debating - camera = camera_council - } - right_portrait = { - character = scope:gardener - animation = interested - } - - trigger = { - has_tgp_dlc_trigger = yes - is_valid_for_japan_events_trigger = yes - employs_court_position = court_gardener_court_position - is_available_healthy_adult = yes - } - - immediate = { - random_court_position_holder = { - limit = { - is_available_ai_adult = yes - } - type = court_gardener_court_position - save_scope_as = gardener - } - } - - # Option A) Assist the gardener and get piety and possibly gardener trait. - option = { - name = tgp_japan_yearly_events.0036.a - custom_tooltip = tgp_japan_yearly_events.0036.a.random_chance - add_piety = medium_piety_gain - if = { - limit = { - NOT = { has_trait = lifestyle_gardener } - } - random = { - chance = { - value = 20 - if = { - limit = { - root.stewardship >= monumentally_high_skill_rating - } - add = 20 - } - else_if = { - limit = { - root.stewardship >= extremely_high_skill_rating - } - add = 15 - } - else_if = { - limit = { - root.stewardship >= very_high_skill_rating - } - add = 10 - } - else_if = { - limit = { - root.stewardship >= high_skill_rating - } - add = 5 - } - } - add_trait = lifestyle_gardener - } - } - else_if = { - limit = { - NOT = { has_trait = lifestyle_herbalist } - } - add_trait = lifestyle_herbalist - } - else = { - add_stress = minor_stress_loss - } - - stress_impact = { - compassionate = minor_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 5 - ai_value_modifier = { - ai_compassion = 1 - ai_energy = 1 - } - } - } - - # Option B) More fish to get diplomacy bonus - option = { - name = tgp_japan_yearly_events.0036.b - - add_character_modifier = { - modifier = tpg_japan_add_fish_to_pond_modifier - years = 3 - } - - stress_impact = { - calm = minor_stress_impact_loss - content = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 1 - ai_energy = -1 - } - } - } -} - -# 1200 - Congestion in the Capital -# by Laurence Kennedy -tgp_japan_yearly_events.1200 = { - type = character_event - title = tgp_japan_yearly_events.1200.t - desc = tgp_japan_yearly_events.1200.desc - theme = vassal - cooldown = { years = 20 } - override_background = { - reference = tgp_japanese_city - } - #You, the Kampaku - left_portrait = { - character = scope:kampaku - animation = disbelief - } - - #upstart vassal - right_portrait = { - character = scope:upstart - animation = jockey_walk - camera = camera_event_horse_right - } - trigger = { - has_tgp_dlc_trigger = yes - is_available_adult = yes - location = root.capital_province - has_title = title:e_japan - NOT = { has_title = title:k_chrysanthemum_throne } - government_has_flag = government_is_japan_administrative - any_vassal = { - is_available_ai_adult = yes - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - } - immediate = { - random_vassal = { - limit = { - is_available_ai_adult = yes - OR = { - has_trait = arrogant - has_trait = ambitious - } - } - save_scope_as = upstart - } - - title:k_chrysanthemum_throne.holder ?= { - save_scope_as = emperor - } - - save_scope_as = kampaku - } - #Drag him from his horse! - option = { - name = tgp_japan_yearly_events.1200.a - #Your men hurt the Upstart - scope:upstart = { - increase_wounds_effect = { REASON = horse_riding_accident } - add_opinion = { - target = scope:kampaku - modifier = angry_opinion - opinion = low_negative_opinion - } - } - #You gain influence and prestige - change_influence = medium_influence_gain - add_prestige = medium_prestige_gain - #Upstart loses prestige and influence - scope:upstart = { - add_prestige = minor_prestige_loss - change_influence = medium_influence_loss - #If possible it progresses rivalry - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:kampaku } - } - progress_towards_rival_effect = { - REASON = rival_pulled_me_off_horse - CHARACTER = scope:kampaku - OPINION = default_rival_opinion - } - } - #otherwise it makes them like you less - else = { - add_opinion = { - target = scope:kampaku - modifier = humbled_opinion - opinion = -40 - } - } - } - stress_impact = { - craven = minor_stress_impact_gain - compassionate = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = medium_stress_impact_loss - callous = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = craven - has_trait = compassionate - has_trait = humble - } - } - } - #Let him think he can get away with this - option = { - name = tgp_japan_yearly_events.1200.b - add_intrigue_lifestyle_xp = medium_lifestyle_experience - change_influence = minor_influence_loss - #If we have a scheme, boost it! - if = { - limit = { - NOT = { - any_scheme = { - scheme_type = slander - scheme_target_character = scope:upstart - } - } - } - #If we don't have a scheme, let's scheme with a boost - start_scheme = { - type = slander - target_character = scope:upstart - } - } - custom_tooltip = { - text = tgp_japan_yearly_events.1200.b.tt - random_scheme = { - limit = { - scheme_type = slander - scheme_target_character = scope:upstart - } - add_scheme_modifier = { - type = bided_my_time - } - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - brave = minor_stress_impact_gain - just = minor_stress_impact_gain - vengeful = medium_stress_impact_loss - craven = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = ambitious - has_trait = brave - has_trait = just - } - } - } - #Kill him with kindness - option = { - name = tgp_japan_yearly_events.1200.c - add_diplomacy_lifestyle_xp = medium_lifestyle_experience - add_piety = medium_piety_gain - change_influence = minor_influence_loss - if = { - #If we have a scheme, boost it! - limit = { - NOT = { - any_scheme = { - scheme_type = befriend - scheme_target_character = scope:upstart - } - } - } - #If we don't have a scheme, let's scheme with a boost - start_scheme = { - type = befriend - target_character = scope:upstart - } - } - custom_tooltip = { - text = tgp_japan_yearly_events.1200.c.tt - random_scheme = { - limit = { - scheme_type = befriend - scheme_target_character = scope:upstart - } - add_scheme_modifier = { type = settled_differences_modifier } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - shy = minor_stress_impact_gain - trusting = minor_stress_impact_gain - patient = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = impatient - has_trait = paranoid - has_trait = arrogant - has_trait = shy - } - } - } -} - -scripted_effect create_cadet_house_effect = { - add_character_flag = found_cadet_branch - add_trait = disinherited - trigger_event = tgp_japan_decision.9001 -} - -# 1210 - Fit to Lead? -# by Laurence Kennedy -tgp_japan_yearly_events.1210 = { - type = character_event - title = tgp_japan_yearly_events.1210.t - desc = { - desc = tgp_japan_yearly_events.1210.desc.intro - random_valid = { - #low prowess house head - triggered_desc = { - trigger = { scope:reason ?= flag:weak_prowess } - desc = tgp_japan_yearly_events.1210.desc.reason_weak_prowess - } - #Unhealthy house head - triggered_desc = { - trigger = { scope:reason ?= flag:bad_health } - desc = tgp_japan_yearly_events.1210.desc.reason_bad_health - } - #drunk house head - triggered_desc = { - trigger = { scope:reason ?= flag:drunkard } - desc = tgp_japan_yearly_events.1210.desc.reason_drunkard - } - #bad genetics - triggered_desc = { - trigger = { scope:reason ?= flag:bad_genetic } - desc = tgp_japan_yearly_events.1210.desc.bad_genetic - } - #sinful - triggered_desc = { - trigger = { scope:reason ?= flag:sinful } - desc = tgp_japan_yearly_events.1210.desc.sinful - } - #low legitimacy - triggered_desc = { - trigger = { scope:reason ?= flag:low_legitimacy } - desc = tgp_japan_yearly_events.1210.desc.low_legitimacy - } - #older sibling - triggered_desc = { - trigger = { scope:reason ?= flag:older_sibling } - desc = tgp_japan_yearly_events.1210.desc.older_sibling - } - #illegitimized - triggered_desc = { - trigger = { scope:reason ?= flag:illegitimized } - desc = tgp_japan_yearly_events.1210.desc.illegitimized - } - - #child of a concubine - triggered_desc = { - trigger = { scope:reason ?= flag:concubine_child } - desc = tgp_japan_yearly_events.1210.desc.concubine_child - } - #Wrong Gender - triggered_desc = { - trigger = { scope:reason ?= flag:non_dominant_gender } - desc = tgp_japan_yearly_events.1210.desc.reason_non_dominant_gender - } - #Fallback - triggered_desc = { - trigger = { scope:reason ?= flag:fallback } - desc = tgp_japan_yearly_events.1210.desc.reason_fallback - } - } - desc = tgp_japan_yearly_events.1210.desc.outro - } - theme = dynasty - cooldown = { years = 20 } - override_background = { - reference = throne_room - } - #You, the Contested House Head - left_portrait = { - character = scope:new_house_head - animation = disgust - camera = camera_event_crowd - } - - #The person contesting your place as house head - right_portrait = { - character = scope:contester - animation = debating - } - trigger = { - has_tgp_dlc_trigger = yes - is_available_adult = yes - government_is_japanese_trigger = yes - is_house_head = yes - has_domicile = yes - is_independent_ruler = no - any_close_or_extended_family_member = { - is_available_ai_adult = yes - #make sure they live in japan - top_liege ?= root.top_liege - is_house_head = no - house = root.house - # Dominant gender - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - #if it's your kid, stricter requirements - trigger_if = { - limit = { - is_child_of = root - } - #you're too old, become a monk! - root.age > 60 - #he hates you - opinion = { target = root value <= low_positive_opinion } - #he's a little shit - OR = { - has_trait = ambitious - has_trait = arrogant - } - } - #not a friendly with you - NOR = { - has_trait = loyal - has_friendly_relationship_trigger = { CHARACTER = root } - this = root - has_trait = humble - has_trait = content - has_trait = devoted - } - } - } - immediate = { - #This is root - save_scope_as = new_house_head - #find a contester - random_close_or_extended_family_member = { - limit = { - is_available_ai_adult = yes - #make sure they live in japan - top_liege ?= root.top_liege - is_house_head = no - house = root.house - # Dominant gender - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - #if it's your kid, stricter requirements - trigger_if = { - limit = { - is_child_of = root - } - #you're too old, become a monk! - root.age > 60 - #he hates you - opinion = { target = root value <= low_positive_opinion } - #he's a little shit - OR = { - has_trait = ambitious - has_trait = arrogant - } - } - #not a friendly with you - NOR = { - has_trait = loyal - has_friendly_relationship_trigger = { CHARACTER = root } - this = root - has_trait = humble - has_trait = content - has_trait = devoted - } - } - weight = { - base = 1 - modifier = { - has_trait = ambitious - add = 20 - } - modifier = { - has_trait = arrogant - add = 20 - } - modifier = { - has_trait = lazy - add = -10 - } - modifier = { - is_close_family_of = scope:new_house_head - add = 40 - } - modifier = { - is_child_of = scope:new_house_head - add = -50 - } - } - save_scope_as = contester - } - if = { - limit = { - any_held_county = { - count > 1 - is_landless_type_title = no - } - } - ordered_held_county = { - limit = { - is_landless_type_title = no - NOT = { this = root.capital_county } - } - order_by = { - value = 0 - subtract = root.capital_province.num_buildings - } - save_scope_as = gift_county - } - } - #reason for being challenged as house head - random_list = { - #low prowess - 100 = { - trigger = { - prowess < scope:contester.prowess - } - save_scope_value_as = { - name = reason - value = flag:weak_prowess - } - } - #Unhealthy house head - 100 = { - trigger = { - is_healthy = no - NOT = { - scope:contester = { - is_healthy = no - } - } - } - save_scope_value_as = { - name = reason - value = flag:bad_health - } - } - #drunk house head - 100 = { - trigger = { - has_trait = drunkard - NOT = { - scope:contester = { - has_trait = drunkard - } - } - } - save_scope_value_as = { - name = reason - value = flag:drunkard - } - } - #bad congenital traits - 100 = { - trigger = { - num_of_bad_genetic_traits > scope:contester.num_of_bad_genetic_traits - } - save_scope_value_as = { - name = reason - value = flag:bad_genetic - } - } - #low legitimacy - 100 = { - trigger = { - has_legitimacy = yes - legitimacy < 3 - } - save_scope_value_as = { - name = reason - value = flag:low_legitimacy - } - } - #sinful traits - 100 = { - trigger = { - num_sinful_traits > scope:contester.num_sinful_traits - } - save_scope_value_as = { - name = reason - value = flag:sinful - } - } - 100 = { - trigger = { - OR = { - has_trait = child_of_concubine - has_trait = child_of_concubine_female - } - NOR = { - scope:contester = { - has_trait = child_of_concubine - has_trait = child_of_concubine_female - } - } - } - save_scope_value_as = { - name = reason - value = flag:concubine_child - } - } - #find an older sibling who is the right gender to inherit - 100 = { - trigger = { - scope:contester = { - is_sibling_of = scope:new_house_head - age > scope:new_house_head.age - trigger_if = { - limit = { is_male = yes } - scope:new_house_head = { - OR = { - has_realm_law = male_only_law - has_realm_law = male_preference_law - } - } - } - trigger_else = { - scope:new_house_head = { - OR = { - has_realm_law = female_only_law - has_realm_law = female_preference_law - } - } - } - } - } - save_scope_value_as = { - name = reason - value = flag:older_sibling - } - } - - #house head was illegitimized - 100 = { - trigger = { - OR = { - AND = { - has_trait = bastard - scope:new_house_head = { - faith = { NOT = { has_doctrine = doctrine_bastardry_none } } - } - } - has_trait = denounced - has_trait = disinherited - } - scope:contester = { - NOR = { - AND = { - has_trait = bastard - scope:new_house_head = { - faith = { NOT = { has_doctrine = doctrine_bastardry_none } } - } - } - has_trait = denounced - has_trait = disinherited - } - } - } - save_scope_value_as = { - name = reason - value = flag:illegitimized - } - } - #wrong gender - 100 = { - trigger = { - OR = { - AND = { - is_male = yes - OR = { - has_realm_law = female_only_law - has_realm_law = female_preference_law - } - } - AND = { - is_female = yes - OR = { - has_realm_law = male_only_law - has_realm_law = male_preference_law - } - } - } - scope:contester = { - OR = { - AND = { - is_male = no - OR = { - has_realm_law = female_only_law - has_realm_law = female_preference_law - } - } - AND = { - is_female = no - OR = { - has_realm_law = male_only_law - has_realm_law = male_preference_law - } - } - } - } - } - save_scope_value_as = { - name = reason - value = flag:non_dominant_gender - } - } - #fallback - 1 = { - save_scope_value_as = { - name = reason - value = flag:fallback - } - } - } - } - # a) Rebuke this outrageous claim! - option = { - name = tgp_japan_yearly_events.1210.a - #You gain Prestige and Dread - add_prestige = medium_prestige_gain - add_dread = medium_dread_gain - #Contester doesn't like you - scope:contester = { - #They go to the pool if they're your courtier - if = { - limit = { - is_courtier_of = scope:new_house_head - } - move_to_pool = yes - } - #their family is upset by contester's departure - if = { - limit = { - scope:contester = { - NOT = { is_close_family_of = root } - } - } - every_close_family_member = { - custom = all_family_members - limit = { - scope:new_house_head != this - } - add_opinion = { - modifier = sullied_our_house_opinion - target = scope:new_house_head - } - } - } - #If possible it progresses rivalry - if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:new_house_head } - } - progress_towards_rival_effect = { - REASON = rival_challenged_house_head_status - CHARACTER = scope:new_house_head - OPINION = default_rival_opinion - } - } - #otherwise it makes them like you even less - else = { - add_opinion = { - target = scope:new_house_head - modifier = humbled_opinion - opinion = -60 - } - } - } - stress_impact = { - craven = minor_stress_impact_gain - humble = minor_stress_impact_gain - just = medium_stress_impact_loss - callous = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = craven - has_trait = humble - } - } - } - #b) Compromise by giving them a cadet branch with modifier that has has friendly house relations - option = { - name = tgp_japan_yearly_events.1210.b - flavor = tgp_japan_yearly_events.1210.b.flavor - trigger = { exists = scope:gift_county } - #You gain Piety - add_piety = medium_piety_gain - # Give land - create_title_and_vassal_change = { - type = granted - save_scope_as = change - add_claim_on_loss = no - } - scope:gift_county = { - change_title_holder = { - holder = scope:contester - change = scope:change - } - } - resolve_title_and_vassal_change = scope:change - #Contester gets cadet branch and likes you - scope:contester = { - custom_tooltip = { - text = tgp_japan_yearly_events.1210.b.tt - create_cadet_house_effect = yes - create_noble_family_effect = { GOVERNMENT_GIVER = root } - house = { - set_house_relation = { - target = scope:new_house_head.house - level = friendly - description = house_relation_friendly_reason_cadet_branch_permission_desc - } - } - } - add_opinion = { - target = scope:new_house_head - modifier = respect_opinion - opinion = low_positive_opinion - } - if = { - limit = { - scope:contester = { - NOT = { is_close_family_of = root } - } - } - #their family appreciates your kindness - every_close_family_member = { - custom = all_family_members - limit = { - scope:new_house_head != this - } - add_opinion = { - modifier = kindness_opinion - target = scope:new_house_head - opinion = 35 - } - } - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - content = medium_stress_impact_loss - } - ai_chance = { - base = 25 - modifier = { - factor = 0 - has_trait = ambitious - has_trait = arrogant - } - modifier = { - top_liege = { - any_vassal = { - count >= 100 - is_landed = no - } - } - factor = 0 - } - } - } - #c) Smooth it over - option = { - name = tgp_japan_yearly_events.1210.c - add_diplomacy_lifestyle_xp = medium_lifestyle_experience - - #Diplomacy Challenge - duel = { - skill = diplomacy - value = high_skill_rating - # Good outcome! - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 5 - desc = tgp_japan_yearly_events.1210.c.good - send_interface_toast = { - title = tgp_japan_yearly_events.1210.c.good - change_influence = major_influence_gain - house = { - every_house_member = { - custom = tgp_japan_yearly_events.1210.c.good.tt - limit = { - NOT = { this = root } - } - add_opinion = { - target = root - modifier = respect_opinion - opinion = 20 - } - } - } - scope:contester = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 30 - } - } - } - } - # Mid outcome. - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = tgp_japan_yearly_events.1210.c.bad - send_interface_toast = { - title = tgp_japan_yearly_events.1210.c.bad - pay_short_term_gold = { - target = scope:contester - gold = minor_gold_value - } - scope:contester = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 15 - } - } - } - } - 10 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 5 - desc = tgp_japan_yearly_events.1210.c.ugly - send_interface_toast = { - title = tgp_japan_yearly_events.1210.c.ugly - add_prestige = medium_prestige_loss - scope:contester = { - #You really put your foot in it, nemesis time - if = { - limit = { - can_set_relation_nemesis_trigger = { CHARACTER = scope:new_house_head } - } - set_relation_nemesis = { - target = scope:new_house_head - reason = rival_challenged_house_head_status - } - } - #If you already have a nemesis, it's possible it progresses rivalry - else_if = { - limit = { - can_set_relation_rival_trigger = { CHARACTER = scope:new_house_head } - } - progress_towards_rival_effect = { - REASON = rival_challenged_house_head_status - CHARACTER = scope:new_house_head - OPINION = default_rival_opinion - } - } - #otherwise it makes them like you even less - else = { - add_opinion = { - target = scope:new_house_head - modifier = humbled_opinion - opinion = -60 - } - } - } - } - } - } - stress_impact = { - impatient = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - shy = minor_stress_impact_gain - trusting = minor_stress_impact_gain - patient = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = impatient - has_trait = arrogant - has_trait = shy - } - } - } - #d) Ignore it. - option = { - name = tgp_japan_yearly_events.1210.d - flavor = tgp_japan_yearly_events.1210.d.flavor - #You gain influence and prestige - change_influence = minor_influence_gain - add_prestige = minor_prestige_gain - #Contester gets cadet branch and dislikes you - scope:contester = { - custom_tooltip = { - text = tgp_japan_yearly_events.1210.d.tt - create_cadet_house_effect = yes - create_noble_family_effect = { GOVERNMENT_GIVER = root } - house = { - set_house_relation = { - target = scope:new_house_head.house - level = quarrel - description = house_relation_quarrel_reason_cadet_branch_permission_desc - } - } - } - add_opinion = { - target = scope:new_house_head - modifier = angry_opinion - opinion = low_negative_opinion - } - } - stress_impact = { - ambitious = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - content = minor_stress_impact_loss - lazy = minor_stress_impact_loss - } - ai_chance = { - base = 25 - modifier = { - factor = 0 - has_trait = ambitious - has_trait = arrogant - } - modifier = { - top_liege = { - any_vassal = { - count >= 100 - is_landed = no - } - } - factor = 0 - } - } - } -} -# 1225 - A Poetic Life -# by Laurence Kennedy -tgp_japan_yearly_events.1225 = { - type = character_event - title = tgp_japan_yearly_events.1225.t - desc = { - #if teacher - triggered_desc = { - trigger = { exists = scope:poet_influencer } - desc = tgp_japan_yearly_events.1225.desc.intro.influencer - } - #Fallback - triggered_desc = { - trigger = { - NOT = { exists = scope:poet_influencer } - } - desc = tgp_japan_yearly_events.1225.desc.intro - } - desc = tgp_japan_yearly_events.1225.desc - } - theme = education - cooldown = { years = 100 } - #You, the poet to be - left_portrait = { - character = scope:new_poet - animation = admiration - } - #Your teacher if you have one guardian, elder, tutor etc - right_portrait = { - character = scope:poet_influencer - animation = debating - } - trigger = { - has_tgp_dlc_trigger = yes - NOT = { - has_trait = lifestyle_poet - } - #East Asia values poetry - location = { - geographical_region = world_asia_east - } - government_has_flag = government_is_tribal - age >= 10 - is_lowborn = no - probably_unintelligent_trigger = no - } - immediate = { - #This is root - save_scope_as = new_poet - #find a teacher figure if they exist - every_relation = { - type = guardian - type = elder - type = mentor - add_to_list = potential_poet_influencer - } - every_courtier = { - limit = { - has_trait = lifestyle_poet - } - add_to_list = potential_poet_influencer - } - every_court_position_holder = { - type = court_poet_court_position - type = court_tutor_court_position - type = court_scholar_court_position - add_to_list = potential_poet_influencer - } - - every_parent = { - add_to_list = potential_poet_influencer - } - random_in_list = { - list = potential_poet_influencer - limit = { - has_trait = lifestyle_poet - is_available_ai_adult = yes - probably_unintelligent_trigger = no - } - alternative_limit = { - is_available_ai_adult = yes - probably_unintelligent_trigger = no - } - weight = { - base = 1 - opinion_modifier = { - opinion_target = root - multiplier = 1 - } - is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root } - is_of_major_interest_to_weight_up_modifier = { CHARACTER = root } - } - save_scope_as = poet_influencer - } - } - # a) Poetry is a way of life, start living! - option = { - name = tgp_japan_yearly_events.1225.a - flavor = tgp_japan_yearly_events.1225.a.flavor - add_character_modifier = { - modifier = tgp_japan_a_poetic_life_modifier - } - add_trait = lifestyle_poet - stress_impact = { - impatient = minor_stress_impact_gain - humble = minor_stress_impact_gain - content = minor_stress_impact_gain - ambitious = medium_stress_impact_loss - eccentric = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = impatient - has_trait = content - has_trait = humble - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - } - } - } - - #b) alt no poetry give xp? - option = { - name = tgp_japan_yearly_events.1225.b - add_prestige = minor_prestige_gain - gain_appropriate_lifestyle_major_xp_effect = yes - stress_impact = { - patient = minor_stress_impact_gain - fickle = minor_stress_impact_gain - impatient = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = patient - has_trait = fickle - } - } - } - } -} - -# 1260 - A Poetic Life : Love and Death -# by Laurence Kennedy -tgp_japan_yearly_events.1260 = { - type = character_event - title = tgp_japan_yearly_events.1260.t - desc = { - desc = tgp_japan_yearly_events.1260.desc - } - override_effect_2d = { - reference = legend_glow - } - theme = romance_scheme - override_background = { - reference = garden - } - cooldown = { years = 100 } - #You, the poet ready for inspiration - left_portrait = { - character = scope:inspired_poet - animation = love - } - trigger = { - has_tgp_dlc_trigger = yes - has_trait = lifestyle_poet - is_adult = yes - } - immediate = { - #This is root - save_scope_as = inspired_poet - } - # a) Poetry is a way of life, start living! - option = { - name = tgp_japan_yearly_events.1260.a - flavor = tgp_japan_yearly_events.1260.a.flavor - #If they didn't get the poetry learning event give them a modifier - if = { - limit = { - NOT = { - has_character_modifier = tgp_japan_a_poetic_life_modifier - } - } - add_character_modifier = { - modifier = tgp_japan_a_poetic_life_modifier - years = { 10 20 } - } - } - add_trait = lifestyle_poet - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = minor_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = medium_stress_impact_loss - lustful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - } - } - } - #b) Maybe poetry isn't for me? - option = { - name = tgp_japan_yearly_events.1260.b - add_piety = medium_piety_gain - stress_impact = { - lustful = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - chaste = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = gregarious - } - } - } - } - after = { - trigger_event = { - on_action = tgp_japan_poetry_events - days = 365 - } - } -} - -scripted_effect count_poet_inspiration_events = { - if = { - limit = { - has_variable = count_poet_inspiration - } - change_variable = { - name = count_poet_inspiration - add = 1 - } - } - else = { - set_variable = { - name = count_poet_inspiration - value = 1 - } - } - #trigger next event after a year - if = { - limit = { - has_variable = count_poet_inspiration - var:count_poet_inspiration < 3 - } - trigger_event = { - on_action = tgp_japan_poetry_events - months = { 10 12 } - } - } - #trigger follow up where you get your book of poetry - else = { - trigger_event = { - id = tgp_japan_yearly_events.1270 - days = { 14 29 } - } - } - -} - -scripted_trigger can_have_poet_inspiration_trigger = { - trigger_if = { - limit = { - exists = var:count_poet_inspiration - } - var:count_poet_inspiration < 3 - } -} -# 1261 - A Poetic Life : Imperial Immortality -# by Laurence Kennedy -tgp_japan_yearly_events.1261 = { - type = character_event - title = tgp_japan_yearly_events.1261.t - desc = { - desc = tgp_japan_yearly_events.1261.desc - triggered_desc = { - trigger = { - scope:inspired_poet = { - has_trait = eunuch - } - } - desc = tgp_japan_yearly_events.1261.chop.desc - } - } - override_effect_2d = { - reference = legend_glow - } - theme = romance_scheme - override_background = { - reference = corridor_night - } - cooldown = { years = 100 } - #You, the poet ready for to attend on your topliege's spouse - left_portrait = { - character = scope:inspired_poet - animation = love - } - #A spouse to help with your immortality - right_portrait = { - character = scope:top_liege_spouse - animation = flirtation - } - - lower_center_portrait = { - character = scope:top_cuckold - animation = anger - } - - trigger = { - can_have_poet_inspiration_trigger = yes - has_tgp_dlc_trigger = yes - has_trait = lifestyle_poet - is_adult = yes - is_available = yes - - #find a emperor or top liege to meet the spouse of - OR = { - AND = { - tgp_realm_has_ceremonial_liege_trigger = yes - top_liege.primary_title.var:administrative_ui_special_title.holder = { - this != root - any_spouse = { - this != root - possibly_interested_in_character_trigger = { CHARACTER = root } - might_cheat_on_every_partner_trigger = yes - } - } - } - top_liege = { - this != root - any_spouse = { - this != root - possibly_interested_in_character_trigger = { CHARACTER = root } - might_cheat_on_every_partner_trigger = yes - } - } - } - } - - immediate = { - #This is you - save_scope_as = inspired_poet - #Find spouse of top liege or ceremonial liege - tgp_save_realm_ceremonial_liege_effect = yes - if = { - limit = { - scope:ceremonial_liege ?= { - this != root - any_spouse = { - count > 0 - } - } - } - scope:ceremonial_liege = { - save_scope_as = top_cuckold - random_spouse = { - limit = { - #don't sleep with yourself - this != root - possibly_interested_in_character_trigger = { - CHARACTER = root - } - might_cheat_on_every_partner_trigger = yes - } - save_scope_as = top_liege_spouse - } - } - } - else = { - top_liege = { - save_scope_as = top_cuckold - random_spouse = { - limit = { - #don't sleep with yourself - this != root - possibly_interested_in_character_trigger = { - CHARACTER = root - } - might_cheat_on_every_partner_trigger = yes - } - save_scope_as = top_liege_spouse - } - } - } - } - - # a) Let's be immortal together! - option = { - name = tgp_japan_yearly_events.1261.a - flavor = tgp_japan_yearly_events.1261.a.flavor - trigger = { - NOT = { - scope:inspired_poet = { - has_trait = eunuch - } - } - } - had_sex_with_effect = { - CHARACTER = scope:top_liege_spouse - PREGNANCY_CHANCE = pregnancy_chance - } - scope:top_liege_spouse ?= { - add_opinion = { - target = scope:inspired_poet - modifier = pleased_opinion - opinion = 30 - } - } - add_character_modifier = { - modifier = tgp_japan_made_high_liege_cuckold_modifier - years = { 10 20 } - } - dynasty = { - add_dynasty_prestige = minor_dynasty_prestige_gain - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = medium_stress_impact_gain - loyal = medium_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = minor_stress_impact_loss - lustful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - has_trait = loyal - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - prowess <= high_skill_rating - } - modifier = { - factor = 0 - NOT = { - possibly_interested_in_character_trigger = { - CHARACTER = scope:top_liege_spouse - } - } - might_cheat_on_every_partner_trigger = no - } - modifier = { - factor = 100 - possibly_interested_in_character_trigger = { - CHARACTER = scope:top_liege_spouse - } - might_cheat_on_every_partner_trigger = yes - } - } - } - # d) eunuch sex - option = { - name = tgp_japan_yearly_events.1261.d - trigger = { - scope:inspired_poet = { - has_trait = eunuch - } - } - had_sex_with_effect = { - CHARACTER = scope:top_liege_spouse - PREGNANCY_CHANCE = 0 - } - scope:top_liege_spouse ?= { - add_opinion = { - target = scope:inspired_poet - modifier = pleased_opinion - opinion = 30 - } - } - add_character_modifier = { - modifier = tgp_japan_made_high_liege_cuckold_modifier - years = { 10 20 } - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = minor_stress_impact_gain - loyal = minor_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = minor_stress_impact_loss - lustful = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - has_trait = loyal - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - prowess <= high_skill_rating - } - modifier = { - factor = 0 - NOT = { - possibly_interested_in_character_trigger = { - CHARACTER = scope:top_liege_spouse - } - } - might_cheat_on_every_partner_trigger = no - } - modifier = { - factor = 100 - possibly_interested_in_character_trigger = { - CHARACTER = scope:top_liege_spouse - } - might_cheat_on_every_partner_trigger = yes - } - } - } - #b) Maybe exchanging a poem is enough - option = { - name = tgp_japan_yearly_events.1261.b - add_prestige = medium_prestige_gain - change_influence = medium_influence_gain - add_trait_xp = { - trait = lifestyle_poet - value = { 5 10 } - } - stress_impact = { - lustful = minor_stress_impact_gain - shy = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - chaste = minor_stress_impact_loss - just = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = shy - has_trait = eccentric - } - } - } - } - #c) I don't want to upset the emperor - option = { - name = tgp_japan_yearly_events.1261.c - add_piety = medium_piety_gain - scope:top_liege_spouse ?= { - add_opinion = { - target = scope:inspired_poet - modifier = angry_opinion - opinion = -40 - } - } - if = { - limit = { - NOT = { - has_trait = loyal - } - } - add_trait = loyal - } - stress_impact = { - lustful = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - chaste = minor_stress_impact_loss - shy = minor_stress_impact_loss - craven = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = gregarious - has_trait = eccentric - } - } - } - } - after = { - count_poet_inspiration_events = yes - } -} - -# 1262 - A Poetic Life: An Exchange of Verses -# by Laurence Kennedy -tgp_japan_yearly_events.1262 = { - type = character_event - title = tgp_japan_yearly_events.1262.t - desc = { - desc = tgp_japan_yearly_events.1262.desc.intro - #Inspiration in Japan - triggered_desc = { - trigger = { - location = { - geographical_region = world_asia_japan - } - } - desc = tgp_japan_yearly_events.1262.japan.inspo - } - #Inspiration elsewhere - triggered_desc = { - trigger = { - NOT = { - location = { - geographical_region = world_asia_japan - } - } - } - desc = tgp_japan_yearly_events.1262.inspo - } - #body - desc = tgp_japan_yearly_events.1262.desc - #Outro in Japan - triggered_desc = { - trigger = { - location = { - geographical_region = world_asia_japan - } - } - desc = tgp_japan_yearly_events.1262.japan.outro - } - #Outro elsewhere - triggered_desc = { - trigger = { - NOT = { - location = { - geographical_region = world_asia_japan - } - } - } - desc = tgp_japan_yearly_events.1262.outro - } - desc = tgp_japan_yearly_events.1262.japan.outro.outro - } - theme = intrigue_temptation_focus - #If in Japan - override_background = { - trigger = { - location = { - geographical_region = world_asia_japan - } - } - reference = moon_festival_night_japan - } - #If not in Japan - override_background = { - trigger = { - NOT = { - location = { - geographical_region = world_asia_japan - } - } - } - reference = alley_night - } - - cooldown = { years = 100 } - #You, the poet - left_portrait = { - character = scope:inspired_poet - animation = love - } - #Another poet who wants to exchange verses among other things - right_portrait = { - character = scope:local_poet - triggered_animation = { - trigger = { - location = { - geographical_region = world_asia_japan - } - } - animation = fanning_coyly - } - animation = admiration - } - - trigger = { - can_have_poet_inspiration_trigger = yes - has_tgp_dlc_trigger = yes - has_trait = lifestyle_poet - is_adult = yes - is_available = yes - } - - immediate = { - #This is you - save_scope_as = inspired_poet - #find a local poet who is into you - location = { - random_character_in_location = { - limit = { - #don't sleep with yourself - this != root - #make sure they're into you - possibly_interested_in_character_trigger = { - CHARACTER = scope:inspired_poet - } - #make sure you're into them as well - scope:inspired_poet = { - possibly_interested_in_character_trigger = { - CHARACTER = prev - } - } - might_cheat_on_every_partner_trigger = yes - is_adult = yes - has_trait = lifestyle_poet - } - save_scope_as = local_poet - } - } - #or make a local poet if none are to be found - if = { - limit = { - NOT = { exists = scope:local_poet } - } - create_character = { - template = tgp_poet_lover_template - location = root.location - save_scope_as = local_poet - after_creation = { - add_character_flag = created - } - } - add_character_flag = { - flag = fake_local_poet - days = 1 - } - } - location = { - save_scope_as = local_poet_spot - } - } - - # a) Friendship is fun (friends can exchange lines about love) - option = { - name = tgp_japan_yearly_events.1262.a - flavor = tgp_japan_yearly_events.1262.a.flavor - add_trait_xp = { - trait = lifestyle_poet - value = { 10 15 } - } - add_diplomacy_lifestyle_xp = minor_lifestyle_xp - scope:local_poet = { - #If possible progress friendship - if = { - limit = { - can_set_relation_friend_trigger = { CHARACTER = scope:inspired_poet } - } - progress_towards_friend_effect = { - REASON = friend_renga_poetry - CHARACTER = scope:inspired_poet - OPINION = 30 - } - } - #otherwise it makes them like them more at the very least - else = { - add_opinion = { - target = scope:inspired_poet - modifier = charmed_opinion - opinion = 20 - } - } - } - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - paranoid = minor_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = paranoid - } - } - } - } - #b) Exchange more than poetry (I'll compose a verse while we tumble) - option = { - name = tgp_japan_yearly_events.1262.b - flavor = tgp_japan_yearly_events.1262.b.flavor - had_sex_with_effect = { - CHARACTER = scope:local_poet - PREGNANCY_CHANCE = pregnancy_chance - } - add_character_modifier = { - modifier = tgp_japan_exchanged_verses_modifier - years = { 10 20 } - } - scope:local_poet ?= { - add_opinion = { - target = scope:inspired_poet - modifier = charmed_opinion - opinion = 40 - } - } - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = medium_stress_impact_gain - paranoid = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - factor = 10 - possibly_interested_in_character_trigger = { - CHARACTER = scope:local_poet - } - might_cheat_on_every_partner_trigger = yes - } - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - has_trait = paranoid - } - } - #helps limit poets generated - modifier = { - factor = 0 - diplomacy <= high_skill_rating - prowess <= high_skill_rating - } - modifier = { - factor = 0 - NOT = { - possibly_interested_in_character_trigger = { - CHARACTER = scope:local_poet - } - } - might_cheat_on_every_partner_trigger = no - } - } - } - #c) You think it's an assassin and run thinking about the ephemeral nature of your own life - option = { - name = tgp_japan_yearly_events.1262.c - trigger = { - has_trait = paranoid - } - scope:local_poet ?= { - add_opinion = { - target = scope:inspired_poet - modifier = angry_opinion - opinion = -40 - } - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - add_character_modifier = {# - modifier = more_vigilant_recistance_modifier - days = 1095 - } - add_character_flag = { - flag = no_love - days = 1 - } - - stress_impact = { - lustful = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - chaste = minor_stress_impact_loss - shy = minor_stress_impact_loss - paranoid = medium_stress_impact_loss - - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = gregarious - } - } - } - } - after = { - if = { - limit = { - has_character_flag = fake_local_poet - has_character_flag = no_love - } - scope:local_poet ?= { - silent_disappearance_effect = yes - } - } - count_poet_inspiration_events = yes - scope:local_poet ?= { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# 1263 - A Poetic Life: Ephemeral Beauty in the Wilds -# by Laurence Kennedy -tgp_japan_yearly_events.1263 = { - type = character_event - title = tgp_japan_yearly_events.1263.t - desc = tgp_japan_yearly_events.1263.desc - override_effect_2d = { - reference = rain - } - theme = romance_scheme - override_background = { - reference = wilderness - } - cooldown = { years = 100 } - #You, the poet - left_portrait = { - character = scope:inspired_poet - animation = love - } - #A local beauty - right_portrait = { - character = scope:rural_beauty - animation = dancing - outfit_tags = { no_clothes } - } - artifact = { - position = lower_right_portrait - target = scope:newly_created_artifact - } - - trigger = { - can_have_poet_inspiration_trigger = yes - has_tgp_dlc_trigger = yes - has_trait = lifestyle_poet - is_adult = yes - is_available = yes - } - immediate = { - #This is you - save_scope_as = inspired_poet - #Make artifact - get_pressed_flower_species_effect = { LOCATION = root.location} - hidden_effect = { - create_artifact_pressed_flower_effect = { OWNER = root } - random_list = { - 10 = { # Poisonous Flowers - trigger = { has_personality_benevolent_trigger = no } - modifier = { - factor = 2 - has_trait = schemer - } - modifier = { - factor = 2 - any_scheme = { scheme_type = murder } - } - modifier = { - factor = 2 - has_trait = education_intrigue - } - modifier = { - factor = 2 - has_trait = callous - } - save_scope_as = poisonous_herbs - } - 10 = { # Medicinal Flowers - modifier = { - factor = 2 - has_trait = schemer - } - modifier = { - factor = 2 - has_court_position = court_physician_court_position - } - modifier = { - factor = 2 - has_trait = education_learning - } - modifier = { - factor = 2 - has_trait = compassionate - } - modifier = { - factor = 2 - has_trait = lifestyle_physician - } - } - } - } - hidden_effect_new_object = { - scope:newly_created_artifact = { - flag_as_trash_artifact = yes - } - } - #find a local beauty who is into you - location = { - random_character_in_location = { - limit = { - #don't sleep with yourself - this != root - #make sure they're into you - possibly_interested_in_character_trigger = { - CHARACTER = scope:inspired_poet - } - #make sure you're into them as well - scope:inspired_poet = { - possibly_interested_in_character_trigger = { - CHARACTER = prev - } - } - might_cheat_on_every_partner_trigger = yes - is_adult = yes - is_available = yes - } - save_scope_as = rural_beauty - } - } - #or make a local poet if none are to be found - if = { - limit = { - NOT = { exists = scope:rural_beauty } - } - create_character = { - template = tgp_poet_lover_template - location = root.location - save_scope_as = rural_beauty - after_creation = { - add_character_flag = created - } - } - add_character_flag = { - flag = fake_rural_beauty - days = 1 - } - } - location = { - save_scope_as = rural_beauty_location - } - } - - #a) Let's celebrate our fleeting lives - option = { - name = tgp_japan_yearly_events.1263.a - flavor = tgp_japan_yearly_events.1263.a.flavor - #get rid of the artifact if you don't choose the artifact option - hidden_effect = { - destroy_artifact = scope:newly_created_artifact - } - had_sex_with_effect = { - CHARACTER = scope:rural_beauty - PREGNANCY_CHANCE = pregnancy_chance - } - scope:rural_beauty ?= { - add_opinion = { - target = scope:inspired_poet - modifier = charmed_opinion - opinion = 30 - } - } - add_trait_xp = { - trait = lifestyle_poet - value = { 15 20 } - } - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = medium_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 10 - possibly_interested_in_character_trigger = { - CHARACTER = scope:rural_beauty - } - might_cheat_on_every_partner_trigger = yes - } - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - prowess <= high_skill_rating - } - modifier = { - factor = 0 - NOT = { - possibly_interested_in_character_trigger = { - CHARACTER = scope:rural_beauty - } - } - might_cheat_on_every_partner_trigger = no - } - } - } - # b) Artifact flower - option = { - name = tgp_japan_yearly_events.1263.b - flavor = tgp_japan_yearly_events.1263.b.flavor - show_as_tooltip = { - scope:newly_created_artifact = { set_owner = root } - } - add_prestige = medium_prestige_gain - scope:rural_beauty ?= { - add_opinion = { - target = scope:inspired_poet - modifier = angry_opinion - opinion = -20 - } - } - stress_impact = { - lustful = medium_stress_impact_gain - content = minor_stress_impact_gain - eccentric = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = lustful - has_trait = content - } - } - } - } - #c) Let's make a study of nature (become gardener or herbalist) - option = { - name = tgp_japan_yearly_events.1263.c - flavor = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:poisonous_herbs } - desc = tgp_japan_yearly_events.1263.c.poisonous - } - desc = tgp_japan_yearly_events.1263.c.medicinal - } - } - #get rid of the artifact if you don't choose the artifact option - hidden_effect = { - destroy_artifact = scope:newly_created_artifact - } - add_learning_lifestyle_xp = medium_lifestyle_xp - add_character_flag = { - flag = no_love - days = 1 - } - - if = { - limit = { exists = scope:poisonous_herbs } - add_character_modifier = { - modifier = tgp_japan_poet_poisonous_flowers_modifier - years = 5 - } - stress_impact = { - lustful = minor_stress_impact_gain - schemer = minor_stress_impact_loss - lifestyle_gardener = miniscule_stress_impact_loss - lifestyle_herbalist = minor_stress_impact_loss - } - } - else = { - add_character_modifier = { - modifier = tgp_japan_poet_medicinal_flowers_modifier - years = 5 - } - if = { - limit = { has_trait = lifestyle_physician } - add_trait_xp = { - trait = lifestyle_physician - value = 2 - } - } - stress_impact = { - lustful = minor_stress_impact_gain - lifestyle_physician = minor_stress_impact_loss - lifestyle_gardener = miniscule_stress_impact_loss - lifestyle_herbalist = minor_stress_impact_loss - } - } - stress_impact = { - lustful = minor_stress_impact_gain - gregarious = minor_stress_impact_gain - eccentric = minor_stress_impact_gain - chaste = minor_stress_impact_loss - shy = minor_stress_impact_loss - craven = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR ={ - has_trait = lustful - has_trait = gregarious - has_trait = eccentric - } - } - } - } - - after = { - if = { - limit = { - has_character_flag = fake_rural_beauty - has_character_flag = no_love - } - scope:rural_beauty ?= { - silent_disappearance_effect = yes - } - } - count_poet_inspiration_events = yes - scope:rural_beauty = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -scripted_effect create_poetic_life_artifact_effect = { - $OWNER$ = { save_scope_as = owner } - - hidden_effect_new_object = { - #set rarity based on how love related memories you have - save_scope_value_as = { - name = quality - value = { - value = 15 - multiply = list_size:love_memories - min = 40 - } - - } - save_scope_value_as = { - name = wealth - value = { - value = 10 - multiply = list_size:love_memories - min = 20 - } - } - - scope:owner = { - create_artifact = { - name = poetic_life_artifact_name - creator = scope:owner - description = poetic_life_artifact_description - visuals = scroll - type = miscellaneous - modifier = artifact_monthly_minor_prestige_1_modifier - modifier = artifact_attraction_opinion_1_modifier - save_scope_as = newly_created_artifact - wealth = scope:wealth - quality = scope:quality - } - } - - scope:newly_created_artifact = { - add_scaled_artifact_modifier_minor_prestige_effect = yes - add_scaled_artifact_modifier_majesty_effect = yes - if = { - limit = { - exists = scope:love_memory_1 - } - set_artifact_description = poetic_life_artifact_description.love_memory_1 - } - if = { - limit = { - exists = scope:love_memory_2 - } - set_artifact_description = poetic_life_artifact_description.love_memory_2 - } - if = { - limit = { - exists = scope:love_memory_3 - } - set_artifact_description = poetic_life_artifact_description.love_memory_3 - } - if = { - limit = { - exists = scope:death_memory_1 - } - set_artifact_description = poetic_life_artifact_description.death_memory_1 - } - if = { - limit = { - exists = scope:death_memory_2 - } - set_artifact_description = poetic_life_artifact_description.death_memory_2 - } - if = { - limit = { - exists = scope:death_memory_3 - } - set_artifact_description = poetic_life_artifact_description.death_memory_3 - } - set_artifact_description = poetic_life_artifact_description.end - } - } -} -scripted_effect create_poetic_life_memory_list_effect = { - - every_memory = { - limit = { - OR = { - has_memory_category = lover - has_memory_category = intimate - } - } - add_to_list = love_memories - } - every_memory = { - limit = { - OR = { - has_memory_category = death - has_memory_category = war - } - } - add_to_list = death_memories - } - ordered_in_list = { - list = love_memories - order_by = memory_creation_date - limit = { - OR = { - has_memory_category = lover - has_memory_category = intimate - } - } - max = 3 - check_range_bounds = no - if = { - limit = { exists = scope:love_memory_2 } - save_scope_as = love_memory_3 - } - else_if = { - limit = { exists = scope:love_memory_1 } - save_scope_as = love_memory_2 - } - else = { save_scope_as = love_memory_1 } - } - ordered_in_list = { - list = death_memories - order_by = memory_creation_date - limit = { - OR = { - has_memory_category = death - has_memory_category = war - } - } - max = 3 - check_range_bounds = no - if = { - limit = { exists = scope:death_memory_2 } - save_scope_as = death_memory_3 - } - else_if = { - limit = { exists = scope:death_memory_1 } - save_scope_as = death_memory_2 - } - else = { save_scope_as = death_memory_1 } - } -} -#1270 - A Poetic Life: A Thousand Immortal Leaves -#by Laurence Kennedy -tgp_japan_yearly_events.1270 = { - type = character_event - title = tgp_japan_yearly_events.1270.t - desc = { - desc = tgp_japan_yearly_events.1270.desc - triggered_desc = { - trigger = { - exists = scope:love_memory_1 - } - desc = tgp_japan_yearly_events.1270.desc.love_memory_1 - } - triggered_desc = { - trigger = { - exists = scope:love_memory_2 - } - desc = tgp_japan_yearly_events.1270.desc.love_memory_2 - } - triggered_desc = { - trigger = { - exists = scope:love_memory_3 - } - desc = tgp_japan_yearly_events.1270.desc.love_memory_3 - } - triggered_desc = { - trigger = { - exists = scope:death_memory_1 - } - desc = tgp_japan_yearly_events.1270.desc.death_memory_1 - } - triggered_desc = { - trigger = { - exists = scope:death_memory_2 - } - desc = tgp_japan_yearly_events.1270.desc.death_memory_2 - } - triggered_desc = { - trigger = { - exists = scope:death_memory_3 - } - desc = tgp_japan_yearly_events.1270.desc.death_memory_3 - } - } - override_effect_2d = { - reference = legend_glow - } - theme = romance_scheme - cooldown = { years = 100 } - #You, the poet - left_portrait = { - character = scope:inspired_poet - animation = happy_teacher - } - artifact = { - position = lower_right_portrait - target = scope:newly_created_artifact - } - - trigger = { - has_tgp_dlc_trigger = yes - has_trait = lifestyle_poet - is_adult = yes - is_available = yes - is_ai = no - } - #an insurance policy so the event chain doesn't close without you getting your book - on_trigger_fail = { - trigger_event = { - id = tgp_japan_yearly_events.1270 - days = { 14 29 } - } - } - - immediate = { - #This is you - save_scope_as = inspired_poet - #Get Memories - create_poetic_life_memory_list_effect = yes - #Make artifact - hidden_effect_new_object = { - create_poetic_life_artifact_effect = { OWNER = root } - scope:newly_created_artifact = { - save_scope_as = love_poetry_artifact - } - } - } - - #a) If you have court make it court artifact - option = { - name = tgp_japan_yearly_events.1270.a - trigger = { - has_royal_court = yes - } - hidden_effect_new_object = { - scope:newly_created_artifact = { - add_scaled_artifact_modifier_grandeur_small_effect = yes - - reforge_artifact = { - type = pedestal - } - } - } - add_character_modifier = { - modifier = tgp_japan_made_poetic_life_artifact_modifier - years = { 50 60 } - } - custom_tooltip = tgp_japan_yearly_events.1270.a_effect - remove_short_term_gold = minor_gold_value - stress_impact = { - chaste = 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 - } - } - } - } - #b) Book option 2 - option = { - name = tgp_japan_yearly_events.1270.b - add_character_modifier = { - modifier = tgp_japan_made_poetic_life_artifact_modifier - years = { 50 60 } - } - custom_tooltip = tgp_japan_yearly_events.1270.b_effect - stress_impact = { - shy = minor_stress_impact_gain - humble = minor_stress_impact_gain - chaste = medium_stress_impact_gain - gregarious = medium_stress_impact_loss - eccentric = minor_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = shy - has_trait = humble - has_trait = chaste - } - } - modifier = { - factor = 0 - diplomacy <= high_skill_rating - prowess <= high_skill_rating - } - } - } -} diff --git a/events/dlc/tgp/tgp_japan_yearly_events_ariana.txt b/events/dlc/tgp/tgp_japan_yearly_events_ariana.txt index 344e2c6b5..6d1874fa2 100644 --- a/events/dlc/tgp/tgp_japan_yearly_events_ariana.txt +++ b/events/dlc/tgp/tgp_japan_yearly_events_ariana.txt @@ -136,7 +136,7 @@ tgp_japan_yearly_events.1000 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain craven = minor_stress_impact_gain brave = minor_stress_impact_loss @@ -210,7 +210,7 @@ tgp_japan_yearly_events.1000 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss craven = minor_stress_impact_loss impatient = minor_stress_impact_loss @@ -234,7 +234,7 @@ tgp_japan_yearly_events.1000 = { option = { name = tgp_japan_yearly_events.1000.c - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss craven = minor_stress_impact_loss lazy = minor_stress_impact_loss @@ -369,12 +369,12 @@ tgp_japan_yearly_events.1010 = { scope:buddhist_councillor_2.faith = { change_fervor = { - value = 1 + value = trivial_fervor_gain desc = fervor_gain_persecuted } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain } @@ -437,12 +437,12 @@ tgp_japan_yearly_events.1010 = { scope:buddhist_councillor_1.faith = { change_fervor = { - value = 1 + value = trivial_fervor_gain desc = fervor_gain_persecuted } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_gain } @@ -488,7 +488,7 @@ tgp_japan_yearly_events.1010 = { } } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_gain cynical = minor_stress_impact_loss lazy = minor_stress_impact_loss @@ -720,7 +720,7 @@ tgp_japan_yearly_events.1020 = { modifier = tgp_siren_yokai_love_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { lustful = minor_stress_impact_loss } } @@ -741,7 +741,7 @@ tgp_japan_yearly_events.1020 = { } - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_gardener = minor_stress_impact_loss lifestyle_herbalist = minor_stress_impact_loss lifestyle_mystic = minor_stress_impact_loss @@ -752,7 +752,7 @@ tgp_japan_yearly_events.1020 = { modifier = tgp_shadow_yokai_imitation_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss callous = minor_stress_impact_loss } @@ -855,7 +855,7 @@ tgp_japan_yearly_events.1020 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { architect = minor_stress_impact_loss diligent = minor_stress_impact_loss } @@ -865,7 +865,7 @@ tgp_japan_yearly_events.1020 = { modifier = tgp_shadow_yokai_torch_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss } } @@ -910,7 +910,7 @@ tgp_japan_yearly_events.1020 = { add_piety = major_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_gain paranoid = minor_stress_impact_gain craven = minor_stress_impact_loss @@ -983,7 +983,7 @@ tgp_japan_yearly_events.1030 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss } @@ -999,13 +999,15 @@ tgp_japan_yearly_events.1030 = { # Pray for your heirs/dynasty option = { name = tgp_japan_yearly_events.1030.b - + trigger = { + is_lowborn = no + } add_character_modifier = { modifier = tgp_shrine_heir_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { family_first = minor_stress_impact_loss cynical = minor_stress_impact_gain } @@ -1028,7 +1030,7 @@ tgp_japan_yearly_events.1030 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss cynical = minor_stress_impact_gain } @@ -1056,7 +1058,7 @@ tgp_japan_yearly_events.1030 = { add_piety = minor_piety_gain - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss cynical = minor_stress_impact_gain } @@ -1073,7 +1075,7 @@ tgp_japan_yearly_events.1030 = { name = tgp_japan_yearly_events.1030.e trigger = { has_trait = cynical } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_loss } @@ -1141,7 +1143,7 @@ tgp_japan_yearly_events.1040 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss zealous = minor_stress_impact_loss cynical = minor_stress_impact_gain @@ -1170,7 +1172,7 @@ tgp_japan_yearly_events.1040 = { delay_travel_plan = { days = 14 } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = medium_stress_impact_loss callous = minor_stress_impact_loss } @@ -1197,7 +1199,7 @@ tgp_japan_yearly_events.1040 = { years = 3 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = medium_stress_impact_loss craven = minor_stress_impact_loss } @@ -1284,7 +1286,7 @@ tgp_japan_yearly_events.1050 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = medium_stress_impact_loss greedy = medium_stress_impact_gain craven = minor_stress_impact_loss @@ -1317,7 +1319,7 @@ tgp_japan_yearly_events.1050 = { title = tgp_japan_yearly_events.1050.tt.success left_icon = root right_icon = scope:messenger - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss greedy = minor_stress_impact_loss } @@ -1339,7 +1341,7 @@ tgp_japan_yearly_events.1050 = { target = liege gold = minor_gold_value } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain } } @@ -1380,7 +1382,7 @@ tgp_japan_yearly_events.1050 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss brave = minor_stress_impact_loss } @@ -1504,7 +1506,7 @@ tgp_japan_yearly_events.1060 = { scope:prisoner = { death = { death_reason = death_execution killer = root } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss callous = minor_stress_impact_gain calm = minor_stress_impact_gain @@ -1539,7 +1541,7 @@ tgp_japan_yearly_events.1060 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss forgiving = minor_stress_impact_loss } @@ -1572,7 +1574,7 @@ tgp_japan_yearly_events.1060 = { } } - stress_impact = { + stress_and_fulfillment_impact = { callous = minor_stress_impact_loss sadistic = minor_stress_impact_loss } @@ -1602,7 +1604,7 @@ tgp_japan_yearly_events.1060 = { } } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss lazy = minor_stress_impact_loss } @@ -1678,7 +1680,7 @@ tgp_japan_yearly_events.1070 = { add_piety = minor_piety_gain add_character_modifier = { modifier = tgp_temple_builder_modifier years = 3 } - stress_impact = { + stress_and_fulfillment_impact = { just = minor_stress_impact_loss zealous = medium_stress_impact_loss cynical = minor_stress_impact_gain @@ -1704,7 +1706,7 @@ tgp_japan_yearly_events.1070 = { } add_character_modifier = { modifier = tgp_rebuilder_modifier years = 3 } - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss zealous = medium_stress_impact_gain cynical = medium_stress_impact_loss @@ -1735,7 +1737,7 @@ tgp_japan_yearly_events.1070 = { days = { 25 35 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss } @@ -1830,7 +1832,7 @@ tgp_japan_yearly_events.1071 = { modifier = tgp_burned_yokai_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss } } @@ -1839,7 +1841,7 @@ tgp_japan_yearly_events.1071 = { modifier = tgp_burned_weather_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss } } @@ -1848,7 +1850,7 @@ tgp_japan_yearly_events.1071 = { modifier = tgp_faith_defender_modifier years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { zealous = minor_stress_impact_loss } } @@ -1859,7 +1861,7 @@ tgp_japan_yearly_events.1071 = { value = scope:rival years = 2 } - stress_impact = { + stress_and_fulfillment_impact = { vengeful = minor_stress_impact_loss } } @@ -1891,7 +1893,7 @@ tgp_japan_yearly_events.1071 = { option = { name = tgp_japan_yearly_events.1071.b - stress_impact = { + stress_and_fulfillment_impact = { lazy = minor_stress_impact_loss calm = minor_stress_impact_loss diligent = minor_stress_impact_gain @@ -1981,7 +1983,7 @@ tgp_japan_yearly_events.1080 = { years = 3 } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss gregarious = medium_stress_impact_loss calm = medium_stress_impact_loss @@ -2017,7 +2019,7 @@ tgp_japan_yearly_events.1080 = { title = tgp_japan_yearly_events.1080.tt.success left_icon = root right_icon = scope:fisherman - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss } if = { @@ -2082,7 +2084,7 @@ tgp_japan_yearly_events.1080 = { opinion = -15 } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain } } @@ -2350,7 +2352,7 @@ tgp_japan_yearly_events.1090 = { years = 10 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_loss lazy = minor_stress_impact_loss cynical = minor_stress_impact_loss @@ -2497,7 +2499,7 @@ tgp_japan_yearly_events.1100 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss just = minor_stress_impact_loss honest = minor_stress_impact_loss @@ -2531,7 +2533,7 @@ tgp_japan_yearly_events.1100 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain deceitful = minor_stress_impact_loss paranoid = minor_stress_impact_loss @@ -2590,7 +2592,7 @@ tgp_japan_yearly_events.1110 = { years = 5 } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain zealous = minor_stress_impact_loss cynical = minor_stress_impact_gain @@ -2612,7 +2614,7 @@ tgp_japan_yearly_events.1110 = { option = { name = tgp_japan_yearly_events.1110.b - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss zealous = minor_stress_impact_loss cynical = minor_stress_impact_gain @@ -2628,7 +2630,7 @@ tgp_japan_yearly_events.1110 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss } @@ -2677,7 +2679,7 @@ tgp_japan_yearly_events.1110 = { } } - stress_impact = { + stress_and_fulfillment_impact = { craven = minor_stress_impact_gain zealous = minor_stress_impact_gain compassionate = minor_stress_impact_gain @@ -2787,7 +2789,7 @@ tgp_japan_yearly_events.1120 = { INVALIDATION_EVENT = single_combat.1006 } - stress_impact = { + stress_and_fulfillment_impact = { craven = medium_stress_impact_gain arrogant = minor_stress_impact_loss brave = minor_stress_impact_loss @@ -2843,7 +2845,7 @@ tgp_japan_yearly_events.1120 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_loss compassionate = minor_stress_impact_loss } @@ -2875,7 +2877,7 @@ tgp_japan_yearly_events.1120 = { } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_loss irritable = minor_stress_impact_loss callous = minor_stress_impact_loss @@ -2903,7 +2905,7 @@ tgp_japan_yearly_events.1120 = { delay_travel_plan = { days = 60 } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain } @@ -3101,7 +3103,7 @@ tgp_japan_yearly_events.1130 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss lifestyle_poet = minor_stress_impact_loss } @@ -3157,7 +3159,7 @@ tgp_japan_yearly_events.1130 = { add_diplomacy_skill = 1 } - stress_impact = { + stress_and_fulfillment_impact = { diligent = minor_stress_impact_loss callous = minor_stress_impact_loss } @@ -3255,7 +3257,7 @@ tgp_japan_yearly_events.1140 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_loss honest = minor_stress_impact_loss just = minor_stress_impact_loss @@ -3310,7 +3312,7 @@ tgp_japan_yearly_events.1140 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_loss humble = minor_stress_impact_gain stubborn = minor_stress_impact_loss @@ -3351,7 +3353,7 @@ tgp_japan_yearly_events.1140 = { } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss greedy = minor_stress_impact_loss } @@ -3394,6 +3396,7 @@ tgp_japan_yearly_events.1150 = { title:e_japan.holder = { has_realm_law = japanese_bureaucracy_0 this != root + exists = location.county } any_held_title = { @@ -3426,7 +3429,7 @@ tgp_japan_yearly_events.1150 = { } } - stress_impact = { + stress_and_fulfillment_impact = { generous = minor_stress_impact_loss greedy = minor_stress_impact_gain } @@ -3479,7 +3482,7 @@ tgp_japan_yearly_events.1150 = { } } - stress_impact = { + stress_and_fulfillment_impact = { gregarious = minor_stress_impact_loss generous = minor_stress_impact_loss greedy = minor_stress_impact_gain @@ -3544,7 +3547,7 @@ tgp_japan_yearly_events.1150 = { add_scheme_modifier = { type = bided_my_time } } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain generous = minor_stress_impact_gain patient = minor_stress_impact_loss @@ -3581,7 +3584,7 @@ tgp_japan_yearly_events.1150 = { modifier = tgp_japan_poetic_to_the_powerful_modifier years = { 10 20 } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_loss gregarious = minor_stress_impact_loss lifestyle_poet = minor_stress_impact_loss @@ -3686,7 +3689,7 @@ tgp_japan_yearly_events.1150 = { } } - stress_impact = { + stress_and_fulfillment_impact = { compassionate = minor_stress_impact_gain callous = minor_stress_impact_loss greedy = minor_stress_impact_loss @@ -3858,7 +3861,7 @@ tgp_japan_yearly_events.1151 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_gain callous = minor_stress_impact_gain fickle = minor_stress_impact_gain @@ -3899,7 +3902,7 @@ tgp_japan_yearly_events.1151 = { add_prestige = miniscule_prestige_gain } } - stress_impact = { + stress_and_fulfillment_impact = { arrogant = minor_stress_impact_loss callous = minor_stress_impact_loss fickle = minor_stress_impact_loss @@ -3969,7 +3972,7 @@ tgp_japan_yearly_events.1151 = { } } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_loss vengeful = minor_stress_impact_loss craven = minor_stress_impact_gain @@ -4033,7 +4036,7 @@ tgp_japan_yearly_events.1151 = { } } - stress_impact = { + stress_and_fulfillment_impact = { brave = minor_stress_impact_gain calm = minor_stress_impact_loss craven = minor_stress_impact_loss @@ -4268,7 +4271,7 @@ tgp_japan_yearly_events.1160 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain vengeful = minor_stress_impact_gain calm = minor_stress_impact_loss @@ -4349,7 +4352,7 @@ tgp_japan_yearly_events.1160 = { } } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_loss callous = medium_stress_impact_loss vengeful = major_stress_impact_loss @@ -4387,7 +4390,7 @@ tgp_japan_yearly_events.1160 = { MURDERER = root } - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss paranoid = minor_stress_impact_loss callous = medium_stress_impact_loss @@ -4526,7 +4529,7 @@ tgp_japan_yearly_events.1170 = { } } - stress_impact = { + stress_and_fulfillment_impact = { calm = minor_stress_impact_loss } @@ -4552,7 +4555,7 @@ tgp_japan_yearly_events.1170 = { } } - stress_impact = { + stress_and_fulfillment_impact = { impatient = minor_stress_impact_loss irritable = minor_stress_impact_loss arrogant = minor_stress_impact_loss @@ -4586,7 +4589,7 @@ tgp_japan_yearly_events.1170 = { add_learning_lifestyle_xp = minor_lifestyle_xp - stress_impact = { + stress_and_fulfillment_impact = { lifestyle_poet = minor_stress_impact_loss calm = minor_stress_impact_loss } @@ -4670,6 +4673,10 @@ tgp_japan_yearly_events.1180 = { years = 10 } + stress_and_fulfillment_impact = { + zealous = minor_stress_impact_loss + } + ai_chance = { base = 100 ai_value_modifier = { ai_zeal = 1 } @@ -4779,7 +4786,7 @@ tgp_japan_yearly_events.1190 = { option = { name = tgp_japan_yearly_events.1190.a - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_gain lazy = minor_stress_impact_gain } @@ -4815,7 +4822,7 @@ tgp_japan_yearly_events.1190 = { option = { name = tgp_japan_yearly_events.1190.b - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss arrogant = minor_stress_impact_gain lazy = minor_stress_impact_loss @@ -4857,7 +4864,7 @@ tgp_japan_yearly_events.1190 = { option = { name = tgp_japan_yearly_events.1190.c - stress_impact = { + stress_and_fulfillment_impact = { base = major_stress_impact_loss lazy = minor_stress_impact_loss } @@ -5130,7 +5137,7 @@ tgp_japan_yearly_events.1220 = { } } - stress_impact = { + stress_and_fulfillment_impact = { cynical = medium_stress_impact_loss zealous = minor_stress_impact_gain } @@ -5145,7 +5152,7 @@ tgp_japan_yearly_events.1220 = { option = { name = tgp_japan_yearly_events.1220.c - stress_impact = { + stress_and_fulfillment_impact = { cynical = minor_stress_impact_loss zealous = minor_stress_impact_gain } @@ -5179,6 +5186,7 @@ tgp_japan_yearly_events.1220 = { title = tgp_japan_yearly_events.1220.tt_lose left_icon = root right_icon = scope:monk + add_learning_lifestyle_xp = 150 } } @@ -5245,7 +5253,7 @@ tgp_japan_yearly_events.1230 = { } show_as_unavailable = { always = yes } - stress_impact = { + stress_and_fulfillment_impact = { paranoid = minor_stress_impact_gain zealous = minor_stress_impact_loss } @@ -5280,7 +5288,7 @@ tgp_japan_yearly_events.1230 = { destroy_artifact = scope:cursed_artifact - stress_impact = { + stress_and_fulfillment_impact = { base = miniscule_stress_impact_loss paranoid = minor_stress_impact_loss lifestyle_mystic = minor_stress_impact_loss @@ -5309,7 +5317,7 @@ tgp_japan_yearly_events.1230 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = minor_stress_impact_gain paranoid = medium_stress_impact_gain cynical = minor_stress_impact_loss @@ -5385,6 +5393,7 @@ tgp_japan_yearly_events.1240 = { template = travel_messenger culture = scope:ref_ruler.culture faith = scope:ref_ruler.faith + rite = scope:ref_ruler.rite location = root.location save_scope_as = traveler after_creation = { add_trait = lifestyle_poet } @@ -5411,7 +5420,7 @@ tgp_japan_yearly_events.1240 = { } } - stress_impact = { + stress_and_fulfillment_impact = { greedy = minor_stress_impact_gain lifestyle_poet = minor_stress_impact_loss compassionate = minor_stress_impact_loss @@ -5436,7 +5445,7 @@ tgp_japan_yearly_events.1240 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_loss compassionate = minor_stress_impact_gain callous = minor_stress_impact_loss @@ -5478,7 +5487,7 @@ tgp_japan_yearly_events.1240 = { } } - stress_impact = { + stress_and_fulfillment_impact = { base = medium_stress_impact_gain lifestyle_poet = minor_stress_impact_loss patient = minor_stress_impact_loss diff --git a/events/dlc/tgp/tgp_korea_decision_events.txt b/events/dlc/tgp/tgp_korea_decision_events.txt deleted file mode 100644 index 41f0270bf..000000000 --- a/events/dlc/tgp/tgp_korea_decision_events.txt +++ /dev/null @@ -1,180 +0,0 @@ -namespace = tgp_korea_decision - -# unify_goryeo_decision - -tgp_korea_decision.9101 = { # Ruler - type = character_event - title = tgp_korea_decision.9101.t - desc = { - desc = tgp_korea_decision.9101.intro - desc = tgp_korea_decision.9101.desc - } - theme = realm - override_effect_2d = { reference = legend_glow } - override_background = { reference = throne_room_scope } - left_portrait = { - character = scope:king_of_goryeo - animation = holding_hu - } - - immediate = { - play_music_cue = "mx_cue_epic_sacral_moment" - save_scope_as = background_throne_room_scope - korea_unify_goryeo_reward_effect = yes - } - - option = { # Samhan - name = tgp_korea_decision.9101.a - # Rename Goryeo culture - hidden_effect = { - culture:goryeo = { - set_culture_name = { - noun = samhan_hybrid_name - collective_noun = samhan_hybrid_collective_noun - prefix = samhan_hybrid_prefix - } - } - } - ai_chance = { - base = 10 - } - } - - option = { # Goryeo - name = tgp_korea_decision.9101.b - trigger = { culture = culture:goguryeo } - custom_tooltip = { - text = tgp_korea_decision.9101.b.reason - title:e_goryeo = { set_title_name = "cn_goryeo" } - } - ai_chance = { - base = 100 - } - } - - after = { - # Inform Vassals - every_player = { - limit = { is_vassal_or_below_of = root } - trigger_event = tgp_korea_decision.9102 - } - } -} - -tgp_korea_decision.9102 = { # Vassal - type = character_event - title = tgp_korea_decision.9102.t - desc = { - desc = tgp_korea_decision.9101.intro - desc = tgp_korea_decision.9102.desc - } - theme = realm - override_effect_2d = { reference = legend_glow } - override_background = { reference = throne_room_scope } - left_portrait = { - character = scope:king_of_goryeo - animation = war_over_tie - } - - immediate = { - show_as_tooltip = { - scope:king_of_goryeo = { korea_unify_goryeo_reward_effect = yes } - } - } - - option = { - name = tgp_korea_decision.9101.a - } -} - -# NEW CEREMONIAL REGENCY EVENT - -#tgp_korea_decision.9201 = { -# orphan = yes # DEPRECATED -# type = character_event -# title = tgp_korea_decision.9201.t -# desc = tgp_korea_decision.9201.desc -# theme = crown -# left_portrait = { -# character = root -# animation = holding_hu -# } -# override_background = { reference = throne_room_scope } -# -# trigger = { -# OR = { -# exists = primary_title.previous_holder -# NOT = { primary_title = title:e_viet } -# } -# } -# -# immediate = { -# show_as_tooltip = { -# scope:founder = { get_title = scope:new_title } -# scope:regent_title.holder = { add_realm_law_skip_effects = single_heir_succession_law } # Regency inherited separately -# scope:new_title = { add_title_law = single_heir_succession_law } -# } -# every_player = { -# limit = { -# top_liege = root -# NOT = { this = root } -# } -# trigger_event = { -# id = tgp_korea_decision.9202 -# delayed = yes -# } -# } -# } -# option = { -# name = tgp_korea_decision.9201.a -# ai_chance = { -# base = 100 -# } -# } -#} - -#tgp_korea_decision.9202 = { -# orphan = yes # DEPRECATED -# type = character_event -# title = tgp_korea_decision.9201.t -# desc = tgp_korea_decision.9202.desc -# theme = crown -# left_portrait = { -# character = root -# animation = throne_room_bow_1 -# } -# right_portrait = { -# character = scope:founder -# animation = holding_hu -# } -# override_background = { reference = throne_room_scope } -# immediate = { -# show_as_tooltip = { -# scope:founder = { get_title = scope:new_title } -# scope:regent_title.holder = { add_realm_law_skip_effects = single_heir_succession_law } # Regency inherited separately -# scope:new_title = { add_title_law = single_heir_succession_law } -# } -# } -# option = { name = tgp_korea_decision.9202.a } -#} - -#tgp_korea_decision.9203 = { -# orphan = yes # DEPRECATED -# hidden = yes -# type = character_event -# trigger = { -# government_has_flag = government_is_meritocratic -# is_independent_ruler = yes -# highest_held_title_tier >= tier_empire -# tgp_realm_has_ceremonial_liege_trigger = no -# } -# immediate = { -# save_scope_as = founder -# save_scope_as = background_throne_room_scope -# #tgp_create_ceremonial_regent_title_effect = { FOUNDER = root } -# trigger_event = { -# id = tgp_korea_decision.9201 -# delayed = yes -# } -# } -#} diff --git a/events/dlc/tgp/tgp_maintenance_events.txt b/events/dlc/tgp/tgp_maintenance_events.txt deleted file mode 100644 index 2856a87d4..000000000 --- a/events/dlc/tgp/tgp_maintenance_events.txt +++ /dev/null @@ -1 +0,0 @@ -# \ No newline at end of file diff --git a/events/dlc/tgp/tgp_mandala_capital_events.txt b/events/dlc/tgp/tgp_mandala_capital_events.txt deleted file mode 100644 index 0deafea4a..000000000 --- a/events/dlc/tgp/tgp_mandala_capital_events.txt +++ /dev/null @@ -1,278 +0,0 @@ -#Mandala Capital Events - -namespace = tgp_east_asia_mandala_capital_events - -tgp_east_asia_mandala_capital_events.1000 = { - type = character_event - window = big_event_window - title = { - first_valid = { - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_05 } - } - desc = tgp_east_asia_mandala_capital_events.1000.t.final - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_04 } - } - desc = tgp_east_asia_mandala_capital_events.1000.t.fourth - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_03 } - } - desc = tgp_east_asia_mandala_capital_events.1000.t.third - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_02 } - } - desc = tgp_east_asia_mandala_capital_events.1000.t.second - } - desc = tgp_east_asia_mandala_capital_events.1000.t - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_05 } - } - desc = tgp_east_asia_mandala_capital_events.1000.desc.final - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_04 } - } - desc = tgp_east_asia_mandala_capital_events.1000.desc.fourth - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_03 } - } - desc = tgp_east_asia_mandala_capital_events.1000.desc.third - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_02 } - } - desc = tgp_east_asia_mandala_capital_events.1000.desc.second - } - desc = tgp_east_asia_mandala_capital_events.1000.desc - } - } - theme = mandala - left_portrait = { - character = scope:onlooker - animation = admiration - } - center_portrait = { - character = root - animation = personality_zealous - } - right_portrait = { - character = scope:onlooker_2 - camera = camera_event_scheme_vs_center_positioned_left - animation = ecstasy - } - override_effect_2d = { reference = legend_glow } - immediate = { - mandala_owner_reward_01_effect = yes - scope:province = { save_scope_as = project_location } - #Grab some characters who are celebrating and excited - random_courtier = { - limit = { - is_available_adult = yes - this != root - } - save_scope_as = onlooker - } - if = { - limit = { - NOT = { exists = scope:onlooker } - } - random_pool_character = { - province = root.capital_province - limit = { is_available_adult = yes } - save_scope_as = onlooker - } - } - random_courtier = { - limit = { - is_available_adult = yes - this != root - this != scope:onlooker - } - save_scope_as = onlooker_2 - } - if = { - limit = { - NOT = { exists = scope:onlooker_2 } - } - random_pool_character = { - province = root.capital_province - limit = { is_available_adult = yes } - save_scope_as = onlooker_2 - } - } - } - #Run effects - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_05 } - } - desc = tgp_east_asia_mandala_capital_events.1000.a.final - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_04 } - } - desc = tgp_east_asia_mandala_capital_events.1000.a.fourth - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_03 } - } - desc = tgp_east_asia_mandala_capital_events.1000.a.third - } - triggered_desc = { - trigger = { - scope:great_project = { great_project_type = mandala_capital_02 } - } - desc = tgp_east_asia_mandala_capital_events.1000.a.second - } - desc = tgp_east_asia_mandala_capital_events.1000.a - } - } - } - #Did you contribute something? - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_01 } - } - check_and_reward_contributions_01_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_02 } - } - check_and_reward_contributions_02_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_03 } - } - check_and_reward_contributions_03_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_04 } - } - check_and_reward_contributions_04_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_05 } - } - check_and_reward_contributions_05_effect = yes - } - } -} - -tgp_east_asia_mandala_capital_events.1010 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_capital_events.1010.t - desc = tgp_east_asia_mandala_capital_events.1010.desc - theme = mandala - left_portrait = { - character = root - triggered_animation = { - trigger = { ai_honor <= 0 } - animation = scheme - } - animation = personality_compassionate - } - right_portrait = { - character = scope:envoy - animation = obsequious_bow - } - lower_right_portrait = { - character = scope:overlord_scope - } - immediate = { - scope:owner = { - save_scope_as = overlord_scope - save_scope_as = value_target - } - scope:province = { save_scope_as = project_location } - create_character = { - template = travel_messenger - location = root.location - culture = scope:overlord_scope.location.culture - faith = scope:overlord_scope.location.faith - gender_female_chance = scope_value_target_soldier_female_chance - save_scope_as = envoy - } - } - #Run effects - option = { - name = tgp_east_asia_mandala_capital_events.1010.a - #Did you contribute something? - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_01 } - } - check_and_reward_contributions_01_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_02 } - } - check_and_reward_contributions_02_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_03 } - } - check_and_reward_contributions_03_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_04 } - } - check_and_reward_contributions_04_effect = yes - } - if = { - limit = { - scope:great_project = { great_project_type = mandala_capital_05 } - } - check_and_reward_contributions_05_effect = yes - } - #Get some opinion - if = { - limit = { - scope:overlord_scope = { is_ai = yes } - } - mandala_contributor_opinion_reward_effect = { OVERLORD = scope:overlord_scope } - } - } - #Sweep, sweep - after = { - scope:envoy = { - if = { # Cleanup - limit = { - root = { is_ai = yes } - is_courtier = no - } - silent_disappearance_effect = yes - } - } - } -} diff --git a/events/dlc/tgp/tgp_mandala_devaraja_events.txt b/events/dlc/tgp/tgp_mandala_devaraja_events.txt deleted file mode 100644 index e609f0a4e..000000000 --- a/events/dlc/tgp/tgp_mandala_devaraja_events.txt +++ /dev/null @@ -1,1716 +0,0 @@ -namespace = devaraja - -# Healthy Charity -devaraja.0001 = { - type = character_event - title = devaraja.0001.title - desc = devaraja.0001.desc - - theme = travel_tour - cooldown = { years = 2 } - left_portrait = { - character = root - animation = fear - } - right_portrait = { - character = scope:diseased_peasant - animation = beg - outfit_tags = { beggar_rags } - } - trigger = { - AND = { - primary_title.tier >= tier_duchy - is_independent_ruler = yes - } - is_location_valid_for_travel_event_on_land = yes - has_activity_intent = altruism_intent - government_has_flag = government_is_mandala - } - - weight_multiplier = { - base = 1 - modifier = { - factor = 2 - has_trait = compassionate - } - modifier = { - factor = 2 - has_trait = zealous - } - } - - immediate = { - location = { - county = { - save_scope_as = diseased_county_scope - save_scope_as = background_wilderness_scope # For theme - } - } - create_character = { - location = scope:diseased_county_scope.title_province - template = diseased_peasant_character - culture = scope:diseased_county_scope.culture - faith = scope:diseased_county_scope.faith - gender_female_chance = 50 - save_scope_as = diseased_peasant - } - if = { - limit = { - cp:councillor_steward ?= { - is_available_ai = yes - } - } - cp:councillor_steward = { - save_scope_as = steward - } - } - } - - # I must be among my people - option = { - name = devaraja.0001.a - - add_prestige = minor_prestige_gain - add_piety = medium_piety_gain - random = { - chance = 5 - show_as_tooltip = { add_trait = ill } - hidden_effect = { - trigger_event = { - id = health.1001 - days = { 3 10 } - } - } - } - scope:diseased_county_scope = { - change_county_control = 5 - add_county_modifier = { - modifier = healed_by_the_devaraja - years = 10 - } - } - stress_impact = { - base = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - callous = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - OR = { - has_trait = callous - has_trait = arrogant - } - } - } - } - - # I leave this work to my steward - option = { - name = devaraja.0001.b - trigger= { - exists = scope:steward - } - - stress_impact = { - compassionate = minor_stress_impact_gain - callous = minor_stress_impact_loss - arrogant = minor_stress_impact_loss - } - - scope:steward = { - add_piety = minor_piety_gain - random = { - chance = 10 - show_as_tooltip = { add_trait = ill } - hidden_effect = { - trigger_event = { - id = health.1001 - days = { 3 10 } - } - } - } - scope:diseased_county_scope = { - change_county_control = 2 - add_county_modifier = { - modifier = healed_by_the_devaraja - years = 2 - } - } - stress_impact = { - compassionate = minor_stress_impact_loss - callous = minor_stress_impact_gain - arrogant = minor_stress_impact_gain - } - } - ai_chance = { - base = 50 - modifier = { - factor = 2 - OR = { - has_trait = callous - has_trait = arrogant - } - } - modifier = { - factor = 0.5 - OR = { - has_trait = diligent - has_trait = compassionate - has_trait = zealous - } - } - } - } - - # This place is gross and icky - option = { - name = devaraja.0001.c - - add_piety = medium_piety_loss - stress_impact = { - forgiving = minor_stress_impact_gain - humble = minor_stress_impact_gain - compassionate = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 50 - modifier = { - factor = 0 - OR = { - has_trait = humble - has_trait = compassionate - has_trait = zealous - } - } - } - } - - after = { - if = { - limit = { - scope:diseased_peasant = { - is_alive = yes - employer != root - } - } - scope:diseased_peasant = { silent_disappearance_effect = yes } - } - } -} - -# Prayers for the God-King -devaraja.0002 = { - type = character_event - title = devaraja.0002.title - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:brahmin_or_chaplain = { - has_court_position = court_brahmin_court_position - } - } - desc = devaraja.0002.desc.brahmin - } - desc = devaraja.0002.desc.chaplain - } - } - - theme = mandala - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:brahmin_or_chaplain - animation = prayer - } - - trigger = { - is_available_for_activity_trigger = yes # is not currently rollicking around - primary_title.tier >= tier_duchy - top_liege = this - government_has_flag = government_is_mandala - - OR = { - any_court_position_holder = { - type = court_brahmin_court_position - is_available_ai = yes - } - cp:councillor_court_chaplain ?= { - is_available_ai = yes - } - } - } - - immediate = { - if = { - limit = { - any_court_position_holder = { - type = court_brahmin_court_position - } - } - random_court_position_holder = { - type = court_brahmin_court_position - save_scope_as = brahmin_or_chaplain - } - } - else = { - cp:councillor_court_chaplain = { - save_scope_as = brahmin_or_chaplain - } - } - } - - option = { - name = devaraja.0002.a - - duel = { - skill = diplomacy - value = high_skill_rating - - 50 = { - desc = devaraja.0002.a.tt.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - # Always give _some_ chance. - min = -39 - } - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0002.a.tt.success - left_icon = root - right_icon = scope:brahmin_or_chaplain - - add_prestige = minor_prestige_gain - add_opinion = { - modifier = pleased_opinion - target = scope:brahmin_or_chaplain - opinion = 10 - } - reverse_add_opinion = { - modifier = respect_opinion - target = scope:brahmin_or_chaplain - opinion = 10 - } - } - } - # Everybody stares at you. "Dude, what?" someone in the audience murmurs. - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - # Limit how low the off-chance can go. - min = -19 - } - desc = devaraja.0002.a.tt.failure - - send_interface_toast = { - type = event_toast_effect_bad - title = devaraja.0002.a.tt.failure - left_icon = root - right_icon = scope:brahmin_or_chaplain - - add_prestige = minor_prestige_loss - add_opinion = { - modifier = insult_opinion - target = scope:brahmin_or_chaplain - opinion = -10 - } - reverse_add_opinion = { - modifier = disrespect_opinion - target = scope:brahmin_or_chaplain - opinion = -10 - } - } - } - } - - stress_impact = { - arrogant = miniscule_stress_impact_loss - eccentric = minor_stress_impact_loss - shy = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = patient - } - modifier = { - factor = 2 - OR = { - has_trait = eccentric - has_trait = brave - has_trait = gregarious - } - } - } - } - - option = { - name = devaraja.0002.b - - add_prestige = miniscule_prestige_gain - - custom_tooltip = devaraja.0002.b.tt - scope:brahmin_or_chaplain = { - add_stress = minor_stress_loss - } - - stress_impact = { - arbitrary = minor_stress_impact_gain - eccentric = medium_stress_impact_gain - } - - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = eccentric - } - modifier = { - factor = 2 - OR = { - has_trait = patient - has_trait = shy - } - } - } - } - - option = { - name = devaraja.0002.c - - duel = { - skill = learning - value = very_high_skill_rating - - 50 = { - desc = devaraja.0002.c.tt.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - # Always give _some_ chance. - min = -39 - } - - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0002.c.quote.success - left_icon = root - right_icon = scope:brahmin_or_chaplain - - add_prestige = minor_prestige_gain - add_piety = minor_piety_gain - add_opinion = { - modifier = pleased_opinion - target = scope:brahmin_or_chaplain - opinion = 25 - } - reverse_add_opinion = { - modifier = impressed_opinion - target = scope:brahmin_or_chaplain - opinion = 25 - } - } - } - # You fumble it - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - # Limit how low the off-chance can go. - min = -19 - } - desc = devaraja.0002.b.tt.failure - - send_interface_toast = { - type = event_toast_effect_bad - title = devaraja.0002.b.tt.failure - left_icon = root - right_icon = scope:brahmin_or_chaplain - - add_prestige = minor_prestige_loss - add_piety = minor_piety_loss - add_opinion = { - modifier = upset_opinion - target = scope:brahmin_or_chaplain - opinion = -25 - } - reverse_add_opinion = { - modifier = disrespect_opinion - target = scope:brahmin_or_chaplain - opinion = -25 - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = cynical - } - modifier = { - factor = 2 - OR = { - has_lifestyle = learning_lifestyle - has_trait = zealous - } - } - } - } -} - -# A Special Dharma Talk -devaraja.0003 = { - type = character_event - title = devaraja.0003.title - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:guru_or_chaplain = { - has_court_position = court_guru_court_position - } - } - desc = devaraja.0003.desc.guru - } - desc = devaraja.0003.desc.chaplain - } - } - theme = mandala - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = admiration - } - right_portrait = { - character = scope:guru_or_chaplain - animation = debating - } - - trigger = { - government_has_flag = government_is_mandala - is_available_for_activity_trigger = yes - OR = { - any_court_position_holder = { - type = court_guru_court_position - is_available_ai = yes - } - cp:councillor_court_chaplain ?= { - is_available_ai = yes - } - } - } - - immediate = { - if = { - limit = { - any_court_position_holder = { - type = court_guru_court_position - } - } - random_court_position_holder = { - type = court_guru_court_position - save_scope_as = guru_or_chaplain - } - } - else = { - cp:councillor_court_chaplain = { - save_scope_as = guru_or_chaplain - } - } - } - - - option = { - name = devaraja.0003.a - - add_prestige = minor_piety_gain - - pay_short_term_gold = { - target = scope:guru_or_chaplain - gold = minor_gold_value - } - - add_opinion = { - modifier = impressed_opinion - target = scope:guru_or_chaplain - opinion = 15 - } - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:guru_or_chaplain - opinion = 15 - } - - stress_impact = { - greedy = minor_stress_impact_gain - generous = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = greedy - has_trait = wrathful - } - } - } - } - - option = { - name = devaraja.0003.b - - add_piety = miniscule_piety_gain - - add_opinion = { - modifier = disappointed_opinion - target = scope:guru_or_chaplain - opinion = -5 - } - reverse_add_opinion = { - modifier = disappointed_opinion - target = scope:guru_or_chaplain - opinion = -5 - } - - stress_impact = { - greedy = minor_stress_impact_loss - diligent = minor_stress_impact_loss - generous = minor_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = gregarious - } - } - } - } - - option = { - name = devaraja.0003.c - - rightfully_imprison_character_effect = { - TARGET = scope:guru_or_chaplain - IMPRISONER = root - } - - stress_impact = { - arbitrary = medium_stress_impact_loss - wrathful = medium_stress_impact_loss - compassionate = medium_stress_impact_gain - forgiving = massive_stress_impact_gain - generous = major_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = generous - has_trait = compassionate - has_trait = forgiving - } - } - } - } - - - option = { - name = devaraja.0003.d - trigger = { - has_lifestyle = learning_lifestyle - } - - duel = { - skill = learning - target = scope:guru_or_chaplain - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 2.5 - } - send_interface_toast = { - title = devaraja.0003.d.tt.success - left_icon = root - right_icon = scope:guru_or_chaplain - - add_piety = major_piety_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -2.5 - } - send_interface_toast = { - title = devaraja.0003.d.tt.failure - left_icon = root - right_icon = scope:guru_or_chaplain - - add_piety = major_piety_loss - } - } - } - ai_chance = { - base = 100 - modifier = { - factor = 0 - OR = { - has_trait = craven - has_trait = shy - } - } - modifier = { - factor = 2 - OR = { - has_trait = zealous - has_trait = ambitious - } - } - } - } -} - -# I Love A Parade -# Actual tale about a King of Siam, combined with a little Music Man -devaraja.0004 = { - type = character_event - title = devaraja.0004.title - desc = devaraja.0004.desc - theme = mandala - cooldown = { years = 15 } - - left_portrait = { - character = root - animation = ecstasy - } - - trigger = { - government_has_flag = government_is_mandala - is_available_for_activity_trigger = yes - capital_county.county_control < full_county_control - cp:councillor_court_chaplain ?= { - is_available_ai = yes - } - } - - immediate = { - cp:councillor_court_chaplain = { - save_scope_as = chaplain - } - capital_county = { - save_scope_as = capital_county - } - } - - option = { - name = devaraja.0004.a - - add_prestige = minor_prestige_gain - capital_county = { - change_county_control = major_county_control_gain - add_county_modifier = { - modifier = devaraja_hosts_parade - years = 5 - } - } - - scope:chaplain = { - add_opinion = { - modifier = requested_money_opinion - target = root - opinion = -25 - } - remove_short_term_gold = minor_gold_value - } - every_powerful_vassal = { - limit = { - faith = root.faith - OR = { - government_has_flag = government_is_theocracy - has_trait = zealous - } - } - add_opinion = { - modifier = disrespect_opinion - target = root - opinion = -15 - } - } - - stress_impact = { - zealous = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - - modifier = { - factor = 0 - has_trait = zealous - } - } - } - - option = { - name = devaraja.0004.b - - custom_tooltip = devaraja.0004.b.tt - add_piety = miniscule_piety_gain - - stress_impact = { - humble = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = humble - } - } - } -} - -# The Wall With Two Faces -# triggered by on_building_completed on_action -devaraja.0005 = { - type = character_event - title = devaraja.0005.title - desc = devaraja.0005.desc - theme = mandala - cooldown = { years = 15 } - - left_portrait = { - character = root - animation = thinking - } - - # triggered by on_building_completed on_action - - trigger = { - government_has_flag = government_is_mandala - has_mandala_aspect_trigger = yes - } - - option = { - name = devaraja.0005.a - - add_piety = medium_piety_gain - - ai_chance = { - base = 100 - - modifier = { - factor = 2 - OR = { - has_trait = zealous - has_trait = humble - } - } - } - } - - option = { - name = devaraja.0005.b - - add_prestige = medium_prestige_gain - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = arrogant - } - } - } -} - -# Wisdom of the Paddle -devaraja.0006 = { - type = character_event - title = devaraja.0006.title - desc = { - first_valid = { - triggered_desc = { - trigger = { - scope:guru_or_chaplain = { - has_court_position = court_guru_court_position - } - } - desc = devaraja.0006.desc.guru - } - desc = devaraja.0006.desc.chaplain - } - } - theme = mandala - cooldown = { years = 10 } - - left_portrait = { - character = root - animation = shame - } - right_portrait = { - character = scope:guru_or_chaplain - animation = chaplain - } - - trigger = { - government_has_flag = government_is_mandala - is_available_for_activity_trigger = yes - OR = { - any_court_position_holder = { - type = court_guru_court_position - is_available_ai = yes - } - cp:councillor_court_chaplain ?= { - is_available_ai = yes - } - } - } - - immediate = { - if = { - limit = { - any_court_position_holder = { - type = court_guru_court_position - } - } - random_court_position_holder = { - type = court_guru_court_position - save_scope_as = guru_or_chaplain - } - } - else = { - cp:councillor_court_chaplain = { - save_scope_as = guru_or_chaplain - } - } - } - - option = { - name = devaraja.0006.a - if = { - limit = { - has_trait = lifestyle_reveler - } - add_trait_xp = { - trait = lifestyle_reveler - value = -15 - } - - add_piety = medium_piety_gain - add_stress = medium_stress_gain - } - else = { - add_piety = medium_piety_gain - - stress_impact = { - base = miniscule_stress_impact_gain - gluttonous = medium_stress_impact_gain - drunkard = major_stress_impact_gain - temperate = minor_stress_impact_loss - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = temperate - } - modifier = { - factor = 2 - OR = { - has_trait = lifestyle_reveler - has_trait = gluttonous - } - } - } - } - option = { - name = devaraja.0006.b - if = { - limit = { - has_trait = lifestyle_reveler - } - add_trait_xp = { - trait = lifestyle_reveler - value = 15 - } - - add_piety = minor_piety_loss - add_stress = minor_stress_loss - } - else = { - random = { - chance = 40 - add_trait = lifestyle_reveler - } - - add_piety = minor_piety_loss - - stress_impact = { - base = miniscule_stress_impact_loss - gluttonous = minor_stress_impact_loss - drunkard = medium_stress_impact_loss - temperate = major_stress_impact_gain - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = temperate - } - modifier = { - factor = 2 - OR = { - has_trait = lifestyle_reveler - has_trait = gluttonous - } - } - } - } - option = { - name = devaraja.0006.c - add_piety = medium_piety_loss - - if = { - limit = { - scope:guru_or_chaplain = { - has_court_position = court_guru_court_position - } - } - revoke_court_position = { - court_position = court_guru_court_position - recipient = scope:guru_or_chaplain - } - } - else = { - fire_councillor = scope:guru_or_chaplain - } - - stress_impact = { - zealous = minor_stress_impact_gain - temperate = medium_stress_impact_gain - compassionate = minor_stress_impact_gain - wrathful = minor_stress_impact_loss - arbitrary = minor_stress_impact_loss - forgiving = minor_stress_impact_gain - } - } - option = { - name = devaraja.0006.d - trigger = { - has_trait = drunkard - } - - # 1 in 3 chance of getting rid of drunkard - random_list = { - 1 = { - remove_trait = drunkard - add_stress = minor_stress_gain - add_piety = medium_piety_gain - } - 2 = { - add_stress = medium_stress_gain - add_piety = minor_piety_gain # hey, at least you took it seriously - } - } - - ai_chance = { - base = 50 - modifier = { - factor = 0 - NOR = { - has_trait = diligent - has_trait = temperate - has_trait = zealous - } - } - } - } -} - -# Unambiguous Ambiguity -devaraja.0007 = { - type = character_event - title = devaraja.0007.title - desc = devaraja.0007.desc - theme = mandala - cooldown = { years = 15 } - - left_portrait = { - character = root - animation = debating - } - - trigger = { - government_has_flag = government_is_mandala - is_available_for_activity_trigger = yes - has_mandala_aspect_trigger = yes - } - - option = { - name = devaraja.0007.a - add_prestige = minor_piety_gain - - add_character_modifier = { - modifier = devaraja_as_god - years = 10 - } - - ai_chance = { - base = 100 - - modifier = { - factor = 2 - OR = { - has_trait = zealous - has_trait = humble - } - } - } - } - - option = { - name = devaraja.0007.b - add_prestige = minor_prestige_gain - - add_character_modifier = { - modifier = devaraja_as_king - years = 10 - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = cynical - has_trait = arrogant - } - } - } - - option = { - name = devaraja.0007.c - trigger = { - has_lifestyle = learning_lifestyle - } - - duel = { - skill = learning - value = high_skill_rating - - 50 = { - desc = devaraja.0007.c.tt.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - # Always give _some_ chance. - min = -39 - } - - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0007.c.tt.success - left_icon = root - - add_piety = medium_piety_gain - add_learning_lifestyle_xp = major_lifestyle_experience - add_character_modifier = { - modifier = devaraja_as_hypostatic_union - years = 10 - } - - every_courtier_or_guest = { - add_opinion = { - modifier = impressed_opinion - target = root - opinion = 20 - } - } - } - } - - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - # Limit how low the off-chance can go. - min = -19 - } - desc = devaraja.0007.c.tt.failure - - send_interface_toast = { - type = event_toast_effect_bad - title = devaraja.0007.c.tt.failure - left_icon = root - - add_prestige = minor_prestige_loss - add_piety = minor_piety_loss - - every_courtier_or_guest = { - add_opinion = { - modifier = confusion_opinion - target = root - opinion = -10 - } - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_lifestyle = learning_lifestyle - } - } - } -} - -# Alleged deathbed conversion -devaraja.0008 = { - type = character_event - title = devaraja.0008.title - desc = devaraja.0008.desc - - theme = mandala - cooldown = { years = 5 } - - left_portrait = { - character = root - animation = personality_cynical - } - right_portrait = { - character = scope:suzerains_missionary - animation = admiration - } - lower_center_portrait = { - character = scope:deathbed_conversion_ancestor - animation = dead - } - - trigger = { - any_ancestor = { - even_if_dead = yes - highest_held_title_tier >= tier_county - is_alive = no - faith != root.suzerain.faith - } - is_available_for_activity_trigger = yes - is_tributary = yes - suzerain = { - faith != root.faith - } - any_courtier = { - has_character_flag = suzerains_missionary - faith = root.suzerain.faith - } - } - - immediate = { - random_courtier = { - limit = { - has_character_flag = suzerains_missionary - faith = root.suzerain.faith - } - save_scope_as = suzerains_missionary - } - - random_ancestor = { - even_if_dead = yes - limit = { - highest_held_title_tier >= tier_county - is_alive = no - faith != root.suzerain.faith - } - save_scope_as = deathbed_conversion_ancestor - } - - suzerain = { - save_scope_as = suzerain - } - } - - option = { - name = devaraja.0008.a - - scope:deathbed_conversion_ancestor = { - set_character_faith_history = scope:suzerain.faith - } - - add_prestige = minor_prestige_gain - - add_opinion = { - modifier = respect_opinion - target = scope:suzerain - opinion = 10 - } - reverse_add_opinion = { - modifier = pious_opinion - target = scope:suzerain - opinion = 10 - } - reverse_add_opinion = { - modifier = pious_opinion - target = scope:suzerains_missionary - opinion = 10 - } - - scope:suzerain = { - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0008.a.tt.conversion - left_icon = root - right_icon = scope:deathbed_conversion_ancestor - - add_piety = minor_piety_gain - - # Deceased character converts in ROOT's effects, but we want to show it happening to the suzerain - show_as_tooltip = { - scope:deathbed_conversion_ancestor = { - set_character_faith_history = scope:suzerain.faith - } - } - faith = { - change_fervor = { - value = 5 - desc = fervor_gain_deathbed_conversion_discovered - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - has_trait = zealous - } - modifier = { - factor = 2 - has_lifestyle = diplomacy_lifestyle - } - } - } - - option = { - name = devaraja.0008.b - - faith = { - change_fervor = { - value = 1 - desc = fervor_gain_faith_reaffirmed - } - } - - reverse_add_opinion = { - modifier = impious_opinion - target = scope:suzerains_missionary - opinion = -10 - } - - ai_chance = { - base = 100 - modifier = { - factor = 0.5 - has_trait = cynical - } - modifier = { - factor = 2 - OR = { - has_lifestyle = learning_lifestyle - has_trait = zealous - } - } - } - } -} - -# Has converted to the same faith as the missionary -devaraja.0009 = { - type = character_event - title = devaraja.0009.title - desc = devaraja.0009.desc - - theme = mandala - - left_portrait = { - character = root - animation = personality_compassionate - } - right_portrait = { - character = scope:suzerains_missionary - animation = boredom - } - - trigger = { - is_available_for_activity_trigger = yes - is_tributary = yes - suzerain = { - faith = root.faith - } - any_courtier = { - has_character_flag = suzerains_missionary - has_faith = suzerain.faith - NOT = { - has_council_position = councillor_court_chaplain - } - } - } - - immediate = { - random_courtier = { - limit = { - has_character_flag = suzerains_missionary - has_faith = suzerain.faith - } - save_scope_as = suzerains_missionary - } - - suzerain = { - save_scope_as = suzerain - } - } - - # Invite the missionary to become your chaplain - option = { - name = devaraja.0009.a - - assign_councillor_type = { - type = councillor_court_chaplain - target = scope:suzerains_missionary - remove_existing_councillor = yes - } - - reverse_add_opinion = { - modifier = pleased_opinion - target = scope:suzerain - opinion = 10 - } - reverse_add_opinion = { - modifier = respect_opinion - target = scope:suzerains_missionary - opinion = 25 - } - - scope:suzerain = { - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0009.a.tt.missionary_now_chaplain - left_icon = root - right_icon = scope:suzerains_missionary - - add_piety = minor_piety_gain - } - } - - scope:suzerains_missionary = { - remove_character_flag = suzerains_missionary - remove_character_flag = blocked_from_leaving - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = compassionate - } - modifier = { - factor = 2 - has_trait = zealous - } - } - } - - # PLEASE LEAVE - option = { - name = devaraja.0009.b - - remove_courtier_or_guest = scope:suzerains_missionary - - add_opinion = { - modifier = dismissive_opinion - target = scope:suzerains_missionary - opinion = -20 - } - reverse_add_opinion = { - modifier = disrespect_opinion - target = scope:suzerains_missionary - opinion = -20 - } - - - scope:suzerains_missionary = { - remove_character_flag = suzerains_missionary - remove_character_flag = blocked_from_leaving - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = shy - } - modifier = { - factor = 2 - has_trait = arbitrary - } - } - } -} - -# Suzerain no longer has the same faith as the missionary -devaraja.0010 = { - type = character_event - title = devaraja.0010.title - desc = devaraja.0010.desc - - theme = mandala - - left_portrait = { - character = scope:suzerains_missionary - animation = disappointed - } - right_portrait = { - character = scope:suzerain - animation = personality_zealous - } - - trigger = { - is_available_for_activity_trigger = yes - is_tributary = yes - suzerain = { - faith != root.faith - } - any_courtier = { - has_character_flag = suzerains_missionary - NOT = { has_faith = suzerain.faith } - } - } - - immediate = { - random_courtier = { - limit = { - has_character_flag = suzerains_missionary - has_faith = suzerain.faith - } - save_scope_as = suzerains_missionary - } - - suzerain = { - save_scope_as = suzerain - } - } - - # Let the missionary figure things out on their own - option = { - name = devaraja.0010.a - - random_list = { - - # The missionary just becomes a sad lonely lump, abandoned by his suzerain and his community - 50 = { - # more likely to stay their own faith if the missionary doesn't really like the suzerain - modifier = { - factor = 25 - scope:suzerains_missionary = { - opinion = { - target = scope:suzerain - value < low_positive_opinion - } - } - } - modifier = { - factor = -25 - scope:suzerains_missionary = { - has_trait = zealous - } - } - modifier = { - factor = -10 - scope:suzerains_missionary = { - has_trait = depressed # either gained depression or genetic depression - } - } - - send_interface_toast = { - type = event_toast_effect_neutral - title = devaraja.0010.a.tt.unconverted - left_icon = root - right_icon = scope:suzerains_missionary - - scope:suzerains_missionary = { - if = { - limit = { - NOT = { has_trait = depressed } - } - add_trait = depressed_1 - } - else = { - add_stress = major_stress_impact_gain - } - remove_character_flag = suzerains_missionary - remove_character_flag = blocked_from_leaving - } - } - } - - # The missionary converts to the suzerain's new faith and remains a proselytizer, missionary events can continue - 50 = { - # more likely to convert to the suzerain's new faith if the missionary actually likes the suzerain - modifier = { - factor = 25 - scope:suzerains_missionary = { - opinion = { - target = scope:suzerain - value >= low_positive_opinion - } - } - } - - send_interface_toast = { - type = event_toast_effect_neutral - title = devaraja.0010.a.tt.converts - left_icon = root - right_icon = scope:suzerains_missionary - - scope:suzerains_missionary = { - set_character_faith = scope:suzerain.faith - } - - scope:suzerain = { - add_piety = minor_piety_gain - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = shy - } - modifier = { - factor = 2 - has_trait = cynical - } - modifier = { - factor = 2 - has_trait = lazy - } - } - } - - # The missionary converts to your faith and no longer can be a proselytizer because you both share the same faith now - option = { - name = devaraja.0010.b - - duel = { - skill = learning - target = scope:suzerains_missionary - - 50 = { - desc = devaraja.0010.b.tt.success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - # Always give _some_ chance. - min = -39 - } - send_interface_toast = { - type = event_toast_effect_good - title = devaraja.0010.b.tt.success - left_icon = root - right_icon = scope:suzerains_missionary - - add_piety = minor_piety_gain - - scope:suzerains_missionary = { - set_character_faith = root.faith - remove_character_flag = suzerains_missionary - remove_character_flag = blocked_from_leaving - } - - stress_impact = { - zealous = minor_stress_impact_loss - } - } - } - # - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - # Limit how low the off-chance can go. - min = -19 - } - desc = devaraja.0010.b.tt.failure - - send_interface_toast = { - type = event_toast_effect_bad - title = devaraja.0010.b.tt.failure - left_icon = root - right_icon = scope:suzerains_missionary - - add_piety = minor_piety_loss - - scope:suzerains_missionary = { - remove_character_flag = suzerains_missionary - remove_character_flag = blocked_from_leaving - } - - stress_impact = { - base = minor_stress_impact_gain - zealous = medium_stress_impact_gain - } - } - } - } - - ai_chance = { - base = 100 - modifier = { - factor = 2 - has_trait = zealous - } - modifier = { - factor = 2 - has_trait = diligent - } - modifier = { - factor = 2 - has_lifestyle = learning_lifestyle - } - } - } -} diff --git a/events/dlc/tgp/tgp_mandala_events.txt b/events/dlc/tgp/tgp_mandala_events.txt deleted file mode 100644 index 440041568..000000000 --- a/events/dlc/tgp/tgp_mandala_events.txt +++ /dev/null @@ -1,2724 +0,0 @@ - -namespace = tgp_east_asia_mandala_events - -tgp_east_asia_mandala_events.0010 = { - hidden = yes - - trigger = { - house = { has_house_head_parameter = aspect_of_creation } - NOT = { - has_variable = mandala_house_power_accumulated_creator - } - } - - immediate = { - #We set this here to not bug out the modifier - set_variable = { - name = mandala_house_power_accumulated_creator - value = 1 - } - #Notify the player - send_interface_message = { - type = event_tribute_bad_with_text - title = mandala_creator_streak_broken - desc = mandala_creator_streak_broken_desc - left_icon = root - if = { - limit = { - house = { has_house_head_parameter = creator_30_year_modifier } - } - show_as_tooltip = { - add_character_modifier = { - modifier = mandala_creator_modifier - years = 30 - } - } - #Re-check again in 30 years (the trigger at the top should stop recursive shenanigans) - trigger_event = { - id = tgp_east_asia_mandala_events.0010 - days = 10951 # 30 years and 1 day - } - } - else_if = { - limit = { - house = { house_has_creator_20_years_trigger = yes } - } - show_as_tooltip = { - add_character_modifier = { - modifier = mandala_creator_modifier - years = 20 - } - } - #Re-check again in 20 years - trigger_event = { - id = tgp_east_asia_mandala_events.0010 - days = 7301 # 20 years and 1 day - } - } - else = { - show_as_tooltip = { - add_character_modifier = { - modifier = mandala_creator_modifier - years = 10 - } - } - #Re-check again in 10 years - trigger_event = { - id = tgp_east_asia_mandala_events.0010 - days = 3651 # 10 years and 1 day - } - } - } - #Then remove it again because you didn't earn it by constructing - remove_variable = mandala_house_power_accumulated_creator - } -} - -scripted_trigger natural_causes_death_reason_trigger = { - OR = { - death_reason = death_peaceful - death_reason = death_natural_causes - death_reason = death_old_age - death_reason = death_laughter - death_reason = death_heart_attack - death_reason = death_giant - death_reason = death_spindly - death_reason = death_wheezing - death_reason = death_bleeder - death_reason = death_depressed - death_reason = death_lunatic - death_reason = death_possessed - death_reason = death_incapable - death_reason = death_physique_bad_1 - death_reason = death_physique_bad_2 - death_reason = death_physique_bad_3 - death_reason = death_weak - death_reason = death_malnourishment - death_reason = death_obesity - death_reason = blind - death_reason = death_inbred - death_reason = death_apoplexy - death_reason = death_euthanasia - death_reason = death_euthanasia_killer - death_reason = death_choked - death_reason = death_roof_tile - death_reason = death_stress - death_reason = death_childbirth - death_reason = death_thirst - death_reason = death_feast_accident - death_reason = death_hypothermia - death_reason = death_heatstroke - death_reason = death_struck_by_lightning - } -} - -scripted_trigger religious_death_reasons_trigger = { - OR = { - death_reason = death_martyrdom - death_reason = death_martyrdom_killer - death_reason = death_sacrificed_to_gods - death_reason = death_crucified - death_reason = death_crucified_by_mob - death_reason = death_by_buddhists - death_reason = death_ritual_suicide - } -} - -#Notify the heir that their Piety game may level up -tgp_east_asia_mandala_events.0100 = { - hidden = yes - - trigger = { - government_has_flag = government_is_mandala - exists = house - has_mandala_aspect_trigger = yes - } - - immediate = { - #Acceptable deaths for each Aspect type - if = { - limit = { - #They were due for a level-up - OR = { - exists = scope:apply_godlike - exists = scope:apply_budding_deity - exists = scope:apply_budding_divinity - } - #And died an appropriate death - OR = { - AND = { - house = { has_house_aspiration_parameter = aspect_of_creation } - scope:deceased_mandala_ruler = { - OR = { - natural_causes_death_reason_trigger = yes - religious_death_reasons_trigger = yes - } - } - } - AND = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - scope:deceased_mandala_ruler = { - OR = { - natural_causes_death_reason_trigger = yes - religious_death_reasons_trigger = yes - } - } - } - AND = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - scope:deceased_mandala_ruler = { - OR = { - natural_causes_death_reason_trigger = yes - religious_death_reasons_trigger = yes - death_reason = death_contest_melee_accident - death_reason = death_contest_joust_accident - death_reason = death_contest_wrestling_accident - death_reason = death_contest_duel_accident - death_reason = death_contest_horse_sport_accident - death_reason = death_tournament_pas_darmes_defend - death_reason = death_tournament_pas_darmes_challenge - death_reason = death_tournament_piledriver - death_reason = death_tournament_melee_throat - death_reason = death_tournament_roundhouse - death_reason = death_duel - death_reason = death_wounds - death_reason = death_fight - death_reason = death_fight_killer - death_reason = death_battle - death_reason = death_sun_trial - death_reason = death_martyrdom - } - } - } - AND = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - scope:deceased_mandala_ruler = { - OR = { - natural_causes_death_reason_trigger = yes - religious_death_reasons_trigger = yes - death_reason = death_murder - death_reason = death_plotting - death_reason = death_poison - death_reason = death_snake - death_reason = death_mysterious - death_reason = death_snakes - } - } - } - } - } - send_interface_message = { - type = msg_mandala_good_with_text - title = budding_divinity_msg - desc = budding_divinity_msg_desc - left_icon = root - #If we're not already capped - if = { - limit = { exists = scope:apply_godlike } - add_character_modifier = budding_godhood_modifier - } - else_if = { - limit = { exists = scope:apply_budding_deity } - add_character_modifier = budding_deity_modifier - } - else = { add_character_modifier = budding_divinity_modifier } - #Piety level/piety inheritance - if = { - limit = { exists = scope:deceased_mandala_ruler_piety } - add_piety = scope:deceased_mandala_ruler_piety - } - else = { - add_piety_level = { - value = { - add = scope:deceased_mandala_ruler_piety_level - subtract = piety_level - min = 1 - } - } - } - } - } - else_if = { - limit = { - #They were due for a level-up - OR = { - exists = scope:apply_godlike - exists = scope:apply_budding_deity - exists = scope:apply_budding_divinity - } - #But died incorrectly - } - send_interface_message = { - type = msg_mandala_neutral_with_text - title = not_budding_divinity_msg - desc = not_budding_divinity_msg_desc - left_icon = root - #Piety level/piety inheritance - if = { - limit = { exists = scope:deceased_mandala_ruler_piety } - add_piety = scope:deceased_mandala_ruler_piety - } - else = { - add_piety_level = { - value = { - add = scope:deceased_mandala_ruler_piety_level - subtract = piety_level - min = 1 - } - } - } - } - } - else = { - send_interface_message = { - type = msg_mandala_good_with_text - title = piety_inherited_msg - desc = piety_inherited_msg_desc - left_icon = root - #Piety level/piety inheritance - if = { - limit = { exists = scope:deceased_mandala_ruler_piety } - add_piety = scope:deceased_mandala_ruler_piety - } - else = { - add_piety_level = { - value = { - add = scope:deceased_mandala_ruler_piety_level - subtract = piety_level - min = 1 - } - } - } - } - } - if = { - limit = { is_adult = yes } - trigger_event = { - id = tgp_east_asia_mandala_events.0101 - delayed = yes - } - } - #Get marked for your 16th birthday - else = { - set_variable = { - name = mandala_succession_waiting_on_adulthood - value = scope:deceased_mandala_ruler - } - send_interface_message = { - type = msg_mandala_neutral_text - title = mandala_succession_awaiting_adulthood_msg - desc = mandala_succession_awaiting_adulthood_msg_desc - left_icon = root - } - } - #SEA LEgacy - if = { - limit = { - dynasty ?= { has_dynasty_perk = tgp_sea_legacy_4 } - } - add_character_modifier = { - modifier = tgp_sea_legacy_heir_modifier - years = 10 - } - } - } -} - -#The lead up to the initiation event. Are you Traveling? -tgp_east_asia_mandala_events.0101 = { - hidden = yes - - trigger = { - government_has_flag = government_is_mandala - exists = house - has_mandala_aspect_trigger = yes - is_adult = yes - } - - #You dun' messed up, kid. Lose some devotion. - on_trigger_fail = { - if = { - limit = { government_has_flag = government_is_mandala } - trigger_event = { - id = tgp_east_asia_mandala_events.8497 - delayed = yes - } - } - } - - immediate = { - #Travel gets a delayed Succession - if = { - limit = { exists = current_travel_plan } - set_variable = { - name = mandala_succession_waiting_on_travel_finish - value = scope:deceased_mandala_ruler - } - send_interface_message = { - type = msg_mandala_neutral_text - title = pending_mandala_succession_msg - desc = pending_mandala_succession_msg_desc - left_icon = root - } - } - #Otherwise we kick it off - else = { - trigger_event = { - id = tgp_east_asia_mandala_events.8499 - delayed = yes - } - } - } -} - -#You're a kid Mandala who inherited a kid Mandala who inherited an adult but didn't manage to turn 16 -tgp_east_asia_mandala_events.0102 = { - hidden = yes - - trigger = { - government_has_flag = government_is_mandala - exists = house - has_mandala_aspect_trigger = yes - } - - immediate = { - send_interface_message = { - type = msg_mandala_neutral_with_text - title = kid_piety_inherited_msg - desc = kid_piety_inherited_msg_desc - left_icon = root - add_piety = scope:deceased_kid_mandala_ruler_piety - if = { - limit = { scope:deceased_kid_mandala_ruler_piety_level > 0 } - add_piety_level = { - value = { - add = scope:deceased_kid_mandala_ruler_piety_level - subtract = piety_level - min = 1 - } - } - } - } - set_variable = { - name = mandala_succession_waiting_on_adulthood - value = scope:deceased_mandala_ruler - } - send_interface_message = { - type = msg_mandala_neutral_text - title = mandala_succession_awaiting_adulthood_msg - desc = mandala_succession_awaiting_adulthood_msg_desc - left_icon = root - } - } -} - -#Keep track of the Aspect modifiers -tgp_east_asia_mandala_events.0200 = { - hidden = yes - - trigger = { - government_has_flag = government_is_mandala - has_variable = mandala_house_power_accumulated_increments_of_peace - } - - immediate = { - #No more boon for you - if = { - limit = { - OR = { - is_house_head = no - NOT = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - } - } - mandala_remove_increment_of_peace_effect = yes - } - #Otherwise proceed as per usual - else = { - if = { - limit = { - any_character_war = { - primary_attacker = prev #The character in question - } - } - mandala_reset_increment_of_peace_effect = yes - } - else = { - mandala_upgrade_increment_of_peace_effect = yes - } - #Then set up the next one - if = { - limit = { - house = { has_house_head_parameter = peaceful_rule_yearly_modifier } - } - trigger_event = { - id = tgp_east_asia_mandala_events.0200 - years = 1 - } - } - else_if = { - limit = { - house = { house_has_peaceful_rule_3_year_trigger = yes } - } - trigger_event = { - id = tgp_east_asia_mandala_events.0200 - years = 3 - } - } - else = { - trigger_event = { - id = tgp_east_asia_mandala_events.0200 - years = 5 - } - } - } - - } -} - -#Track years of peace for Serenity -tgp_east_asia_mandala_events.0205 = { - hidden = yes - - trigger = { - government_has_flag = government_is_mandala - house ?= { has_house_aspiration_parameter = aspect_of_serenity } - is_house_head = yes - has_variable = serenity_mandala_years_of_non_aggression_war - } - - immediate = { - if = { - limit = { - any_character_war = { - primary_attacker = prev #The character in question - } - } - remove_variable = serenity_mandala_years_of_non_aggression_war - set_variable = { - name = serenity_mandala_years_of_non_aggression_war - value = 0 - } - } - else = { - increment_variable_effect = { - VAR = serenity_mandala_years_of_non_aggression_war - VAL = 1 - } - } - trigger_event = { - id = tgp_east_asia_mandala_events.0205 - years = 1 - } - } -} - - -scripted_effect mandala_events_1000_random_onlooker_effect = { - random_courtier = { - limit = { - is_available_adult = yes - this != root - } - save_scope_as = onlooker - } - if = { - limit = { - NOT = { exists = scope:onlooker } - } - random_pool_character = { - province = root.capital_province - limit = { is_available_adult = yes } - save_scope_as = onlooker - } - } - random_courtier = { - limit = { - is_available_adult = yes - this != root - this != scope:onlooker - } - save_scope_as = onlooker_2 - } - if = { - limit = { - NOT = { exists = scope:onlooker_2 } - } - random_pool_character = { - province = root.capital_province - limit = { is_available_adult = yes } - save_scope_as = onlooker_2 - } - } -} - -##ASPECT LEVEL UP -tgp_east_asia_mandala_events.1000 = { - type = character_event - window = big_event_window - title = { - first_valid = { - triggered_desc = { - trigger = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_05 - has_house_aspiration_parameter = aspect_of_serenity_05 - has_house_aspiration_parameter = aspect_of_destruction_05 - has_house_aspiration_parameter = aspect_of_trickery_05 - } - } - } - desc = tgp_east_asia_mandala_events.1000.t.final - } - desc = tgp_east_asia_mandala_events.1000.t - } - } - desc = { - first_valid = { - #Level 02 - triggered_desc = { - trigger = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_02 - has_house_aspiration_parameter = aspect_of_serenity_02 - has_house_aspiration_parameter = aspect_of_destruction_02 - has_house_aspiration_parameter = aspect_of_trickery_02 - } - } - } - desc = tgp_east_asia_mandala_events.1000.desc.02 - } - #Creation - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation_03 } - } - desc = tgp_east_asia_mandala_events.1000.desc.creation_03 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation_04 } - } - desc = tgp_east_asia_mandala_events.1000.desc.creation_04 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation_05 } - } - desc = tgp_east_asia_mandala_events.1000.desc.creation_05 - } - #Serenity - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity_03 } - } - desc = tgp_east_asia_mandala_events.1000.desc.serenity_03 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity_04 } - } - desc = tgp_east_asia_mandala_events.1000.desc.serenity_04 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity_05 } - } - desc = tgp_east_asia_mandala_events.1000.desc.serenity_05 - } - #Destruction - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction_03 } - } - desc = tgp_east_asia_mandala_events.1000.desc.destruction_03 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction_04 } - } - desc = tgp_east_asia_mandala_events.1000.desc.destruction_04 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction_05 } - } - desc = tgp_east_asia_mandala_events.1000.desc.destruction_05 - } - #Trickery - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery_03 } - } - desc = tgp_east_asia_mandala_events.1000.desc.trickery_03 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery_04 } - } - desc = tgp_east_asia_mandala_events.1000.desc.trickery_04 - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery_05 } - } - desc = tgp_east_asia_mandala_events.1000.desc.trickery_05 - } - } - } - theme = mandala - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - reference = courtyard - } - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - reference = ep2_wedding_ceremony - } - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - reference = ep2_tournament - } - override_background = { reference = feast } - left_portrait = { - character = scope:onlooker - camera = camera_event_scheme_center_look_semi_right - triggered_animation = { - trigger = { - root = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - animation = random_weapon_celebrate - } - animation = toast - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - animation = flirtation - } - triggered_animation = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - animation = personality_zealous - } - triggered_animation = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - animation = war_over_win - } - camera = camera_event_scheme_center - animation = scheme - } - right_portrait = { - character = scope:onlooker_2 - camera = camera_event_scheme_vs_extra_right_look_left - triggered_animation = { - trigger = { - root = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - animation = random_weapon_coup_degrace - } - animation = ecstasy - } - override_effect_2d = { - trigger = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_05 - has_house_aspiration_parameter = aspect_of_serenity_05 - has_house_aspiration_parameter = aspect_of_destruction_05 - has_house_aspiration_parameter = aspect_of_trickery_05 - } - } - } - reference = legend_glow - } - immediate = { - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - random_courtier = { - limit = { - is_available_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - this != root - } - save_scope_as = onlooker - } - if = { - limit = { - NOT = { exists = scope:onlooker } - } - random_pool_character = { - province = root.capital_province - limit = { - is_available_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - save_scope_as = onlooker - } - } - scope:onlooker = { add_character_flag = need_military_outfit } - random_courtier = { - limit = { - is_available_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - this != root - this != scope:onlooker - } - save_scope_as = onlooker_2 - } - if = { - limit = { - NOT = { exists = scope:onlooker_2 } - } - random_pool_character = { - province = root.capital_province - limit = { - is_available_adult = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - save_scope_as = onlooker_2 - } - } - scope:onlooker_2 = { add_character_flag = need_military_outfit } - } - else = { - mandala_events_1000_random_onlooker_effect = yes - } - #Spice up the tooltip. What just happened? - show_as_tooltip = { - house = { - #Creation - if = { - limit = { has_house_aspiration_parameter = aspect_of_creation_02 } - set_house_aspiration = { - type = aspect_of_creation - level = 2 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_creation_03 } - set_house_aspiration = { - type = aspect_of_creation - level = 3 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_creation_04 } - set_house_aspiration = { - type = aspect_of_creation - level = 4 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_creation_05 } - set_house_aspiration = { - type = aspect_of_creation - level = 5 - } - } - #Serenity - if = { - limit = { has_house_aspiration_parameter = aspect_of_serenity_02 } - set_house_aspiration = { - type = aspect_of_serenity - level = 2 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_serenity_03 } - set_house_aspiration = { - type = aspect_of_serenity - level = 3 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_serenity_04 } - set_house_aspiration = { - type = aspect_of_serenity - level = 4 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_serenity_05 } - set_house_aspiration = { - type = aspect_of_serenity - level = 5 - } - } - #Destruction - if = { - limit = { has_house_aspiration_parameter = aspect_of_destruction_02 } - set_house_aspiration = { - type = aspect_of_destruction - level = 2 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_destruction_03 } - set_house_aspiration = { - type = aspect_of_destruction - level = 3 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_destruction_04 } - set_house_aspiration = { - type = aspect_of_destruction - level = 4 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_destruction_05 } - set_house_aspiration = { - type = aspect_of_destruction - level = 5 - } - } - #Trickery - if = { - limit = { has_house_aspiration_parameter = aspect_of_trickery_02 } - set_house_aspiration = { - type = aspect_of_trickery - level = 2 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_trickery_03 } - set_house_aspiration = { - type = aspect_of_trickery - level = 3 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_trickery_04 } - set_house_aspiration = { - type = aspect_of_trickery - level = 4 - } - } - if = { - limit = { has_house_aspiration_parameter = aspect_of_trickery_05 } - set_house_aspiration = { - type = aspect_of_trickery - level = 5 - } - } - } - } - } - #Cool! - option = { - name = tgp_east_asia_mandala_events.1000.a - #Some boons for your hard work - if = { - limit = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_05 - has_house_aspiration_parameter = aspect_of_serenity_05 - has_house_aspiration_parameter = aspect_of_destruction_05 - has_house_aspiration_parameter = aspect_of_trickery_05 - } - } - } - add_piety_experience = major_piety_gain - dynasty = { - add_dynasty_prestige = major_piety_gain - } - } - else_if = { - limit = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_04 - has_house_aspiration_parameter = aspect_of_serenity_04 - has_house_aspiration_parameter = aspect_of_destruction_04 - has_house_aspiration_parameter = aspect_of_trickery_04 - } - } - } - add_piety_experience = { - value = { - add = major_piety_gain - multiply = 0.6 - } - } - dynasty = { - add_dynasty_prestige = { - value = { - add = major_piety_gain - multiply = 0.6 - } - } - } - } - else_if = { - limit = { - house = { - OR = { - has_house_aspiration_parameter = aspect_of_creation_03 - has_house_aspiration_parameter = aspect_of_serenity_03 - has_house_aspiration_parameter = aspect_of_destruction_03 - has_house_aspiration_parameter = aspect_of_trickery_03 - } - } - } - add_piety_experience = { - value = { - add = minor_piety_gain - multiply = 2 - } - } - dynasty = { - add_dynasty_prestige = { - value = { - add = minor_dynasty_prestige_value - multiply = 2 - } - } - } - } - else = { - add_piety_experience = { - value = { - add = miniscule_piety_gain - multiply = 2 - } - } - dynasty = { - add_dynasty_prestige = { - value = { - add = miniscule_dynasty_prestige_value - multiply = 2 - } - } - } - } - #Creation boon - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - every_child = { - custom = mandala_descendant_from_aspect_of_creation.tt - limit = { - NOT = { has_character_modifier = mandala_descendant_from_aspect_of_creation_modifier } - } - add_character_modifier = { modifier = mandala_descendant_from_aspect_of_creation_modifier } - } - } - #Serenity boon - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - custom_tooltip = { - text = mandala_aspect_of_serenity_devotion.tt - add_piety_experience = num_years_of_peace_devotion_payout - } - } - #Destruction boon - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - every_knight = { - custom = mandala_forged_from_aspect_of_destruction.tt - limit = { - NOT = { has_character_modifier = mandala_forged_from_aspect_of_destruction_modifier } - } - add_character_modifier = { modifier = mandala_forged_from_aspect_of_destruction_modifier } - } - } - #Trickery boon - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - if = { - limit = { - NOT = { has_character_modifier = mandala_ascended_in_aspect_of_trickery_modifier } - } - add_character_modifier = { modifier = mandala_ascended_in_aspect_of_trickery_modifier } - } - else = { - custom_tooltip = { - text = mandala_aspect_of_trickery_devotion.tt - add_piety_experience = num_successful_schemes_devotion_payout - } - } - } - - ai_chance = { - base = 100 - } - } - after = { - scope:onlooker = { remove_character_flag = need_military_outfit } - scope:onlooker_2 = { remove_character_flag = need_military_outfit } - } -} - - -##SKILL CHALLENGES -#Maintenance -tgp_east_asia_mandala_events.8495 = { - hidden = yes - - immediate = { - if = { - limit = { var:mandala_skill_challenges = 3 } - trigger_event = { - id = tgp_east_asia_mandala_events.8550 - delayed = yes - } - } - else = { - random_list = { - 3 = { - trigger = { - NOT = { has_variable = had_creation_skill_challenge } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8500 - delayed = yes - } - } - 3 = { - trigger = { - NOT = { has_variable = had_serenity_skill_challenge } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8510 - delayed = yes - } - } - 3 = { - trigger = { - NOT = { has_variable = had_destruction_skill_challenge } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8520 - delayed = yes - } - } - 3 = { - trigger = { - NOT = { has_variable = had_trickery_skill_challenge } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8530 - delayed = yes - } - } - } - } - } -} - -#Finished travel, do you have a succession queued? -tgp_east_asia_mandala_events.8496 = { - hidden = yes - trigger = { - location = capital_province - has_variable = mandala_succession_waiting_on_travel_finish - is_landed = yes - government_has_flag = government_is_mandala - } - on_trigger_fail = { - trigger_event = { - id = tgp_east_asia_mandala_events.8497 - delayed = yes - } - } - immediate = { - if = { - limit = { has_variable = mandala_succession_waiting_on_travel_finish } - var:mandala_succession_waiting_on_travel_finish = { save_scope_as = deceased_mandala_ruler } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8499 - delayed = yes - } - } -} - -#INVALID: Something's gone awry. Lose some Devotion. -tgp_east_asia_mandala_events.8497 = { - hidden = yes - trigger = { - has_variable = mandala_succession_waiting_on_travel_finish - } - immediate = { - send_interface_message = { - type = msg_mandala_bad_with_text - title = tgp_east_asia_mandala_events.8497.t.lose_by_default - desc = tgp_east_asia_mandala_events.8497.tt.lose_by_default - left_icon = root - right_icon = scope:deceased_mandala_ruler - add_piety_level = -3 - } - #And _remember_ it - create_character_memory = { - type = invalid_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - remove_variable = mandala_succession_waiting_on_travel_finish - remove_variable = mandala_succession_waiting_on_adulthood - } -} - -#Initiating event -tgp_east_asia_mandala_events.8499 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_events.8499.t - desc = { - first_valid = { - #We inherited while being a child, but were imprisoned before our 16th birthday - triggered_desc = { - trigger = { - is_imprisoned = yes - has_variable = mandala_succession_waiting_on_adulthood - } - desc = tgp_east_asia_mandala_events.8499.intro.recent_adult.imprisoned - } - #We inherited while being imprisoned - triggered_desc = { - trigger = { is_imprisoned = yes } - desc = tgp_east_asia_mandala_events.8499.intro.imprisoned - } - } - first_valid = { - #Both imprisonment intros work with this text body - triggered_desc = { - trigger = { is_imprisoned = yes } - desc = tgp_east_asia_mandala_events.8499.desc.imprisoned - } - #We inherited while being a child and waited for our 16th birthday - triggered_desc = { - trigger = { - is_imprisoned = no - has_variable = mandala_succession_waiting_on_adulthood - } - desc = tgp_east_asia_mandala_events.8499.desc.recent_adult - } - #We inherited, or came of age, while out traveling - triggered_desc = { - trigger = { has_variable = mandala_succession_waiting_on_travel_finish } - desc = tgp_east_asia_mandala_events.8499.desc.was_traveling - } - #Default - desc = tgp_east_asia_mandala_events.8499.desc - } - } - theme = mandala - override_background = { - trigger = { is_imprisoned = yes } - reference = dungeon - } - override_background = { reference = study } - center_portrait = { - character = root - triggered_animation = { - trigger = { is_imprisoned = yes } - animation = prisondungeon - } - override_imprisonment_visuals = yes - animation = personality_bold - } - immediate = { - } - #Let's go - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { is_imprisoned = yes } - desc = tgp_east_asia_mandala_events.8499.a.imprisoned - } - desc = tgp_east_asia_mandala_events.8499.a - } - } - } - flavor = { - first_valid = { - triggered_desc = { - trigger = { is_imprisoned = yes } - desc = tgp_east_asia_mandala_events.8499.a.flavor.imprisoned - } - } - } - #If we're imprisoned, insta-lose - if = { - limit = { is_imprisoned = yes } - custom_tooltip = tgp_east_asia_mandala_events.8499.a.tt.imprisoned - add_piety_level = -3 - if = { - limit = { - NOT = { has_character_modifier = mandala_divine_retribution_modifier } - } - add_character_modifier = mandala_divine_retribution_modifier - } - #And _remember_ it - create_character_memory = { - type = imprisoned_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - } - else = { - custom_tooltip = tgp_east_asia_mandala_events.8499.a.tt.trials - set_variable = busy_in_mandala_succession - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8500 - delayed = yes - } - } - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8510 - delayed = yes - } - } - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8520 - delayed = yes - } - } - if = { - limit = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - trigger_event = { - id = tgp_east_asia_mandala_events.8530 - delayed = yes - } - } - } - } - after = { - #Clean up peripheral variables - remove_variable = mandala_succession_waiting_on_travel_finish - remove_variable = mandala_succession_waiting_on_adulthood - } -} - - -scripted_effect mandala_events_8500_instawin_trial_effect = { - if = { - limit = { $SKILL$ = 01 } - custom_tooltip = tgp_east_asia_mandala_events.8500.success.tt - } - if = { - limit = { $SKILL$ = 02 } - custom_tooltip = tgp_east_asia_mandala_events.8510.success.tt - } - if = { - limit = { $SKILL$ = 03 } - custom_tooltip = tgp_east_asia_mandala_events.8520.success.tt - } - if = { - limit = { $SKILL$ = 04 } - custom_tooltip = tgp_east_asia_mandala_events.8530.success.tt - } - increment_variable_effect = { - VAR = mandala_skill_challenge_success - VAL = 1 - } -} - -scripted_effect mandala_events_8500_succeeded_trial_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = tgp_east_asia_mandala_events.8500.b.t.success - left_icon = root - right_icon = scope:deceased_mandala_ruler - increment_variable_effect = { - VAR = mandala_skill_challenge_success - VAL = 1 - } - if = { - limit = { $SKILL$ = 01 } - custom_tooltip = tgp_east_asia_mandala_events.8500.success.tt - add_stewardship_skill = 1 - } - else_if = { - limit = { $SKILL$ = 02 } - custom_tooltip = tgp_east_asia_mandala_events.8510.success.tt - add_diplomacy_skill = 1 - } - else_if = { - limit = { $SKILL$ = 03 } - custom_tooltip = tgp_east_asia_mandala_events.8520.success.tt - add_martial_skill = 1 - } - else_if = { - limit = { $SKILL$ = 04 } - custom_tooltip = tgp_east_asia_mandala_events.8530.success.tt - add_intrigue_skill = 1 - } - } -} - -scripted_effect mandala_events_8500_failed_trial_effect = { - send_interface_toast = { - type = event_toast_effect_bad - title = tgp_east_asia_mandala_events.8500.b.t.failure - left_icon = root - right_icon = scope:deceased_mandala_ruler - add_piety_level = -1 - } -} - -scripted_effect mandala_events_8500_next_trial_effect = { - increment_variable_effect = { - VAR = mandala_skill_challenges - VAL = 1 - } - trigger_event = tgp_east_asia_mandala_events.8495 -} - -#Creation / Stewardship -tgp_east_asia_mandala_events.8500 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_events.8500.t - desc = tgp_east_asia_mandala_events.8500.desc - theme = mandala - override_background = { reference = throne_room } - left_portrait = { - trigger = { exists = scope:onlooker } - character = scope:onlooker - animation = fear - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - house = { has_house_head_parameter = may_override_stewardship_succession_trial } - } - animation = personality_zealous - } - animation = storyteller - } - right_portrait = { - trigger = { exists = scope:onlooker_2 } - character = scope:onlooker_2 - triggered_animation = { - trigger = { - root.house = { has_house_head_parameter = may_override_stewardship_succession_trial } - } - animation = admiration - } - animation = interested_left - } - override_effect_2d = { - trigger = { - house = { has_house_head_parameter = may_override_stewardship_succession_trial } - } - reference = legend_glow - } - immediate = { - mandala_events_1000_random_onlooker_effect = yes - random_dummy_gender_effect = yes - } - #Dynasty Override? - option = { - name = tgp_east_asia_mandala_events.8500.dynasty.override - trigger = { - dynasty ?= { has_dynasty_perk = tgp_sea_legacy_5 } - NOT = { has_character_flag = spent_sea_legacy_succession_bypass } - } - reason = mandala_legacy_unlock - mandala_events_8500_instawin_trial_effect = { SKILL = 01 } - custom_description_no_bullet = { text = sea_succession_legacy_spent } - add_character_flag = spent_sea_legacy_succession_bypass - ai_chance = { - base = 100 - } - } - #Override? - option = { - name = tgp_east_asia_mandala_events.8500.a - trigger = { - custom_tooltip = { - text = tgp_east_asia_mandala_events.8500.a.final_aspect - house = { has_house_head_parameter = may_override_stewardship_succession_trial } - } - } - show_as_unavailable = { - house = { - has_house_aspiration_parameter = aspect_of_creation - NOT = { has_house_head_parameter = may_override_stewardship_succession_trial } - } - } - reason = creation_aspect - mandala_events_8500_instawin_trial_effect = { SKILL = 01 } - ai_chance = { - base = 100 - } - } - #DUEL! - option = { - name = tgp_east_asia_mandala_events.8500.b - flavor = tgp_east_asia_mandala_events.8500.b.flavor - duel = { - skill = stewardship - target = scope:deceased_mandala_ruler - #Success! - 90 = { - trigger = { highest_held_title_tier < tier_empire } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 01 } - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 01 } - } - #Failure - 5 = { - trigger = { highest_held_title_tier = tier_county } - max = 5 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 10 = { - trigger = { highest_held_title_tier = tier_duchy } - max = 10 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 40 = { - trigger = { highest_held_title_tier = tier_kingdom } - max = 40 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - is_ai = yes - add = -45 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - } - ai_chance = { - base = 100 - modifier = { - house = { has_house_head_parameter = may_override_stewardship_succession_trial } - factor = 0 - } - } - } - after = { - set_variable = had_creation_skill_challenge - mandala_events_8500_next_trial_effect = yes - } -} - -#Serenity / Diplomacy -tgp_east_asia_mandala_events.8510 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_events.8510.t - desc = tgp_east_asia_mandala_events.8510.desc - theme = mandala - override_background = { reference = corridor_day } - left_portrait = { - character = root - triggered_animation = { - trigger = { - house = { has_house_head_parameter = may_override_diplomacy_succession_trial } - } - animation = personality_zealous - } - camera = camera_event_scheme_center_look_semi_right - animation = stress - } - center_portrait = { - character = scope:arguer - camera = camera_event_scheme_vs_extra_right_look_right - animation = dismissal - hide_info = yes - } - right_portrait = { - character = scope:arguer_2 - camera = camera_event_scheme_vs_extra_right_look_left - animation = disapproval - hide_info = yes - } - override_effect_2d = { - trigger = { - house = { has_house_head_parameter = may_override_diplomacy_succession_trial } - } - reference = legend_glow - } - immediate = { - hidden_effect = { - random_list = { - 1 = { - dummy_female = { save_scope_as = dummy_gender } - save_scope_value_as = { - name = female_gender - value = flag:yes - } - } - 1 = { - dummy_male = { save_scope_as = dummy_gender } - save_scope_value_as = { - name = male_gender - value = flag:yes - } - } - } - } - random_pool_character = { - province = root.capital_province - limit = { - is_available_healthy_adult = yes - trigger_if = { - limit = { exists = scope:female_gender } - is_female = yes - } - } - save_scope_as = arguer - } - random_pool_character = { - province = root.capital_province - limit = { - is_available_healthy_adult = yes - trigger_if = { - limit = { exists = scope:female_gender } - is_female = yes - } - NOT = { this = scope:arguer } - } - save_scope_as = arguer_2 - } - if = { - limit = { - NOT = { exists = scope:arguer } - } - create_character = { - location = root.capital_province - template = pool_repopulate_local_flavor - save_scope_as = arguer - after_creation = { save_scope_as = created_character } - } - } - if = { - limit = { - NOT = { exists = scope:arguer_2 } - } - create_character = { - location = root.capital_province - template = pool_repopulate_local_flavor - save_scope_as = arguer_2 - after_creation = { save_scope_as = created_character } - } - } - } - #Dynasty Override? - option = { - name = tgp_east_asia_mandala_events.8510.dynasty.override - trigger = { - dynasty ?= { has_dynasty_perk = tgp_sea_legacy_5 } - NOT = { has_character_flag = spent_sea_legacy_succession_bypass } - } - reason = mandala_legacy_unlock - mandala_events_8500_instawin_trial_effect = { SKILL = 02 } - custom_description_no_bullet = { text = sea_succession_legacy_spent } - add_character_flag = spent_sea_legacy_succession_bypass - ai_chance = { - base = 100 - } - } - #Override? - option = { - name = tgp_east_asia_mandala_events.8510.a - trigger = { - custom_tooltip = { - text = tgp_east_asia_mandala_events.8510.a.final_aspect - house = { has_house_head_parameter = may_override_diplomacy_succession_trial } - } - } - show_as_unavailable = { - house = { - has_house_aspiration_parameter = aspect_of_serenity - NOT = { has_house_head_parameter = may_override_diplomacy_succession_trial } - } - } - reason = serenity_aspect - mandala_events_8500_instawin_trial_effect = { SKILL = 02 } - ai_chance = { - base = 100 - } - } - #DUEL! - option = { - name = tgp_east_asia_mandala_events.8510.b - flavor = tgp_east_asia_mandala_events.8510.b.flavor - duel = { - skill = diplomacy - target = scope:deceased_mandala_ruler - #Success! - 90 = { - trigger = { highest_held_title_tier < tier_empire } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 02 } - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 02 } - } - #Failure - 5 = { - trigger = { highest_held_title_tier = tier_county } - max = 5 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 10 = { - trigger = { highest_held_title_tier = tier_duchy } - max = 10 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 40 = { - trigger = { highest_held_title_tier = tier_kingdom } - max = 40 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - is_ai = yes - add = -45 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - } - ai_chance = { - base = 100 - modifier = { - house = { has_house_head_parameter = may_override_diplomacy_succession_trial } - factor = 0 - } - } - } - after = { - set_variable = had_serenity_skill_challenge - mandala_events_8500_next_trial_effect = yes - scope:arguer = { - if = { - limit = { has_variable = created_character } - silent_disappearance_effect = yes - } - } - scope:arguer_2 = { - if = { - limit = { has_variable = created_character } - silent_disappearance_effect = yes - } - } - } -} - -#Destruction / Martial -tgp_east_asia_mandala_events.8520 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_events.8520.t - desc = tgp_east_asia_mandala_events.8520.desc - theme = mandala - left_portrait = { - trigger = { exists = scope:onlooker } - character = scope:onlooker - triggered_animation = { - trigger = { - root.house = { has_house_head_parameter = may_override_martial_succession_trial } - } - animation = wrestling_victory - } - animation = interested - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - house = { has_house_head_parameter = may_override_martial_succession_trial } - } - camera = camera_body_right - animation = relaxed_spear - } - camera = camera_event_scheme_center_forward - animation = aggressive_spear - } - right_portrait = { - trigger = { exists = scope:onlooker_2 } - character = scope:onlooker_2 - triggered_animation = { - trigger = { - root.house = { has_house_head_parameter = may_override_martial_succession_trial } - } - animation = admiration - } - camera = camera_event_scheme_far_right - animation = interested_left - } - override_effect_2d = { - trigger = { - house = { has_house_head_parameter = may_override_martial_succession_trial } - } - reference = legend_glow - } - immediate = { - mandala_events_1000_random_onlooker_effect = yes - } - #Dynasty Override? - option = { - name = tgp_east_asia_mandala_events.8520.dynasty.override - trigger = { - dynasty ?= { has_dynasty_perk = tgp_sea_legacy_5 } - NOT = { has_character_flag = spent_sea_legacy_succession_bypass } - } - reason = mandala_legacy_unlock - mandala_events_8500_instawin_trial_effect = { SKILL = 03 } - custom_description_no_bullet = { text = sea_succession_legacy_spent } - add_character_flag = spent_sea_legacy_succession_bypass - ai_chance = { - base = 100 - } - } - #Override? - option = { - name = tgp_east_asia_mandala_events.8520.a - trigger = { - custom_tooltip = { - text = tgp_east_asia_mandala_events.8520.a.final_aspect - house = { has_house_head_parameter = may_override_martial_succession_trial } - } - } - show_as_unavailable = { - house = { - has_house_aspiration_parameter = aspect_of_destruction - NOT = { has_house_head_parameter = may_override_martial_succession_trial } - } - } - reason = destruction_aspect - mandala_events_8500_instawin_trial_effect = { SKILL = 03 } - ai_chance = { - base = 100 - } - } - #DUEL! - option = { - name = tgp_east_asia_mandala_events.8520.b - flavor = tgp_east_asia_mandala_events.8520.b.flavor - duel = { - skill = martial - target = scope:deceased_mandala_ruler - #Success! - 90 = { - trigger = { highest_held_title_tier < tier_empire } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 03 } - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 03 } - } - #Failure - 5 = { - trigger = { highest_held_title_tier = tier_county } - max = 5 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 10 = { - trigger = { highest_held_title_tier = tier_duchy } - max = 10 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 40 = { - trigger = { highest_held_title_tier = tier_kingdom } - max = 40 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - is_ai = yes - add = -45 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - } - ai_chance = { - base = 100 - modifier = { - house = { has_house_head_parameter = may_override_martial_succession_trial } - factor = 0 - } - } - } - after = { - set_variable = had_destruction_skill_challenge - mandala_events_8500_next_trial_effect = yes - } -} - -#Trickery / Intrigue -tgp_east_asia_mandala_events.8530 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_events.8530.t - desc = tgp_east_asia_mandala_events.8530.desc - theme = mandala - left_portrait = { - trigger = { exists = scope:onlooker } - character = scope:onlooker - triggered_animation = { - trigger = { - root.house = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - animation = admiration - } - animation = interested - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - house = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - animation = scheme - } - animation = storyteller - } - right_portrait = { - trigger = { exists = scope:onlooker_2 } - character = scope:onlooker_2 - triggered_animation = { - trigger = { - root.house = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - animation = happiness - } - camera = camera_event_scheme_far_right - animation = interested_left - } - override_effect_2d = { - trigger = { - house = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - reference = legend_glow - } - immediate = { - mandala_events_1000_random_onlooker_effect = yes - } - #Dynasty Override? - option = { - name = tgp_east_asia_mandala_events.8530.dynasty.override - trigger = { - dynasty ?= { has_dynasty_perk = tgp_sea_legacy_5 } - NOT = { has_character_flag = spent_sea_legacy_succession_bypass } - } - reason = mandala_legacy_unlock - mandala_events_8500_instawin_trial_effect = { SKILL = 04 } - custom_description_no_bullet = { text = sea_succession_legacy_spent } - add_character_flag = spent_sea_legacy_succession_bypass - ai_chance = { - base = 100 - } - } - #Override? - option = { - name = tgp_east_asia_mandala_events.8530.a - trigger = { - custom_tooltip = { - text = tgp_east_asia_mandala_events.8530.a.final_aspect - house = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - } - show_as_unavailable = { - house = { - has_house_aspiration_parameter = aspect_of_trickery - NOT = { has_house_head_parameter = may_override_intrigue_succession_trial } - } - } - reason = trickery_aspect - mandala_events_8500_instawin_trial_effect = { SKILL = 04 } - ai_chance = { - base = 100 - } - } - #DUEL! - option = { - name = tgp_east_asia_mandala_events.8530.b - flavor = tgp_east_asia_mandala_events.8530.b.flavor - duel = { - skill = intrigue - target = scope:deceased_mandala_ruler - #Success! - 90 = { - trigger = { highest_held_title_tier < tier_empire } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 04 } - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.success - mandala_events_8500_succeeded_trial_effect = { SKILL = 04 } - } - #Failure - 5 = { - trigger = { highest_held_title_tier = tier_county } - max = 5 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 10 = { - trigger = { highest_held_title_tier = tier_duchy } - max = 10 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 40 = { - trigger = { highest_held_title_tier = tier_kingdom } - max = 40 - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - 50 = { - trigger = { highest_held_title_tier >= tier_empire } - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - modifier = { - is_ai = yes - add = -45 - } - desc = tgp_east_asia_mandala_events.8500.b.tt.failure - mandala_events_8500_failed_trial_effect = yes - } - } - ai_chance = { - base = 100 - modifier = { - house = { has_house_head_parameter = may_override_intrigue_succession_trial } - factor = 0 - } - } - } - after = { - set_variable = had_trickery_skill_challenge - mandala_events_8500_next_trial_effect = yes - } -} - - -#Conclusion -tgp_east_asia_mandala_events.8550 = { - type = character_event - window = big_event_window - title = { - first_valid = { - triggered_desc = { - trigger = { exists = var:mandala_skill_challenge_success } - desc = tgp_east_asia_mandala_events.8550.t - } - desc = tgp_east_asia_mandala_events.8550.t.failed - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { var:mandala_skill_challenge_success ?= 3 } - desc = tgp_east_asia_mandala_events.8550.desc.critical_success - } - triggered_desc = { - trigger = { var:mandala_skill_challenge_success ?= 2 } - desc = tgp_east_asia_mandala_events.8550.desc.success - } - triggered_desc = { - trigger = { var:mandala_skill_challenge_success ?= 1 } - desc = tgp_east_asia_mandala_events.8550.desc - } - desc = tgp_east_asia_mandala_events.8550.desc.failed - } - } - theme = mandala - left_portrait = { - trigger = { - exists = scope:onlooker - root = { has_variable = mandala_skill_challenge_success } - } - character = scope:onlooker - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 3 } - animation = happiness - } - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 2 } - animation = wrestling_victory - } - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 1 } - animation = dismissal - } - animation = dismissal - } - center_portrait = { - character = root - triggered_animation = { - trigger = { - NOT = { has_variable = mandala_skill_challenge_success } - } - camera = shop_camera_baby_closeup_angle_45 - animation = prostration - } - triggered_animation = { - trigger = { var:mandala_skill_challenge_success ?= 3 } - animation = wrestling_victory - } - triggered_animation = { - trigger = { var:mandala_skill_challenge_success ?= 2 } - animation = happiness - } - animation = stress - } - right_portrait = { - trigger = { - exists = scope:onlooker_2 - root = { has_variable = mandala_skill_challenge_success } - } - character = scope:onlooker_2 - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 3 } - animation = ecstasy - } - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 2 } - animation = happiness - } - triggered_animation = { - trigger = { root.var:mandala_skill_challenge_success ?= 1 } - animation = disgust - } - camera = camera_event_scheme_vs_center_positioned_left - animation = disgust - } - override_effect_2d = { - trigger = { var:mandala_skill_challenge_success ?= 3 } - reference = legend_glow - } - override_effect_2d = { - trigger = { - NOT = { has_variable = mandala_skill_challenge_success } - } - reference = rain - } - immediate = { - mandala_events_1000_random_onlooker_effect = yes - show_as_tooltip = { - if = { - limit = { - NOT = { has_variable = mandala_skill_challenge_success } - } - add_piety_level = -3 - } - else_if = { - limit = { var:mandala_skill_challenge_success ?= 1 } - add_piety_level = -2 - if = { - limit = { - any_tributary = { - is_physically_able_ai_adult = yes - NOR = { - has_relation_friend = root - has_relation_lover = root - } - } - } - #Max 3 - every_tributary = { - limit = { - is_physically_able_ai_adult = yes - NOR = { - has_relation_friend = root - has_relation_lover = root - } - } - add_to_list = potential_departing_tributaries - } - ordered_in_list = { - list = potential_departing_tributaries - order_by = { - value = "opinion(root)" - multiply = -1 - } - check_range_bounds = no - save_scope_as = first_leaving_tributary - } - if = { - limit = { - list_size = { - name = potential_departing_tributaries - value > 1 - } - } - ordered_in_list = { - list = potential_departing_tributaries - order_by = { - value = "opinion(root)" - multiply = -1 - } - limit = { - this != scope:first_leaving_tributary - } - save_scope_as = second_leaving_tributary - } - } - if = { - limit = { - list_size = { - name = potential_departing_tributaries - value > 2 - } - } - ordered_in_list = { - list = potential_departing_tributaries - order_by = { - value = "opinion(root)" - multiply = -1 - } - limit = { - NOR = { - this = scope:first_leaving_tributary - this = scope:second_leaving_tributary - } - } - save_scope_as = third_leaving_tributary - } - } - } - } - else_if = { - limit = { var:mandala_skill_challenge_success ?= 2 } - add_piety_level = -1 - } - } - set_variable = { - name = not_subject_to_succession_trials - value = flag:completed_trials - } - if = { - limit = { var:not_subject_to_succession_trials ?= flag:completed_trials } - #To prevent 'unused except in loc' errors :catto: - } - } - #Roger, roger - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - NOT = { has_variable = mandala_skill_challenge_success } - } - desc = tgp_east_asia_mandala_events.8550.a.failed - } - desc = tgp_east_asia_mandala_events.8550.a - } - } - } - if = { - limit = { var:mandala_skill_challenge_success ?= 3 } - dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_value } - } - if = { - limit = { var:mandala_skill_challenge_success ?= 2 } - dynasty = { - add_dynasty_prestige = { - value = minor_dynasty_prestige_value - divide = 2 - } - } - } - ai_chance = { - base = 100 - } - } - after = { - #Levels of Success - if = { - limit = { var:mandala_skill_challenge_success ?= 3 } - create_character_memory = { - type = flawless_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - if = { - limit = { - NOT = { has_character_flag = devaraja_flag } - } - add_character_flag = devaraja_flag - } - } - else_if = { - limit = { has_variable = mandala_skill_challenge_success } - if = { - limit = { var:mandala_skill_challenge_success ?= 2 } - if = { - limit = { exists = scope:first_leaving_tributary } - custom_tooltip = { - text = tgp_east_asia_mandala_events.lose_3_tributaries.tt - scope:first_leaving_tributary = { end_tributary = yes } - scope:second_leaving_tributary ?= { end_tributary = yes } - scope:third_leaving_tributary ?= { end_tributary = yes } - } - } - else = { - if = { - limit = { - has_legitimacy = yes - legitimacy > 0 - } - add_legitimacy = -100 - } - } - #And remember it - create_character_memory = { - type = successful_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - if = { - limit = { - NOT = { has_character_flag = devaraja_flag } - } - add_character_flag = devaraja_flag - } - } - else_if = { - limit = { var:mandala_skill_challenge_success ?= 1 } - if = { - limit = { number_of_tributaries > 0 } - custom_tooltip = { - text = tgp_east_asia_mandala_events.lose_all_tributaries.tt - every_tributary = { end_tributary = yes } - } - } - else = { - if = { - limit = { - has_legitimacy = yes - legitimacy > 0 - } - add_legitimacy = -200 - } - } - #And remember it - create_character_memory = { - type = adequate_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - if = { - limit = { - NOT = { has_character_flag = devaraja_flag } - } - add_character_flag = devaraja_flag - } - } - } - #Failure - else = { - stress_impact = { base = medium_stress_impact_gain } - if = { - limit = { - has_legitimacy = yes - legitimacy > 0 - } - add_legitimacy = -500 - } - custom_tooltip = tgp_east_asia_mandala_events.8550.a.failed.tt - hidden_effect = { - create_title_and_vassal_change = { - type = independency - save_scope_as = change - add_claim_on_loss = no - } - every_vassal = { - change_liege_or_become_independent = { - CHANGE = scope:change - VASSAL = this - } - } - every_vassal = { - limit = { is_ai = no } - send_interface_toast = { - type = event_faction_neutral_text - title = mandala_liege_primary_title_succession_dissolution - desc = mandala_liege_primary_title_succession_dissolution_desc - left_icon = root - } - } - resolve_title_and_vassal_change = scope:change - every_held_title = { - limit = { tier >= tier_kingdom } - add_to_temporary_list = titles_to_destroy - } - } - #MAKE IT CLEAR in the text :evilblob: - every_in_list = { - list = titles_to_destroy - holder = { destroy_title = prev } - } - #And remember it - create_character_memory = { - type = failed_mandala_trials_memory - participants = { previous_mandala_ruler = scope:deceased_mandala_ruler } - } - } - remove_variable = had_creation_skill_challenge - remove_variable = had_serenity_skill_challenge - remove_variable = had_destruction_skill_challenge - remove_variable = had_trickery_skill_challenge - remove_variable = mandala_skill_challenges - remove_variable = mandala_skill_challenge_success - remove_variable = busy_in_mandala_succession - } -} - -#Find our close relationship character -scripted_trigger mandala_events_9000_appropriate_relationship_character_trigger = { - is_available_ai_adult = yes - location = root.location - OR = { - faith = faith:vaishnavism - faith = faith:shaivism - } -} - -#Find our bystander -scripted_effect mandala_events_9000_find_local_bystander_effect = { - random_pool_character = { - province = root.location - limit = { - is_lowborn = yes - age > 10 - is_available = yes - OR = { - faith = faith:vaishnavism - faith = faith:shaivism - } - has_mandala_faith_trigger = yes - NOT = { - is_of_major_or_minor_interest_trigger = { CHARACTER = root } - } - } - save_scope_as = bystander - } - if = { - limit = { - NOT = { exists = scope:bystander } - } - create_character = { - location = root.location - template = generic_peasant_character - random_culture = { - culture:khmer = { trigger = { always = yes } } - culture:cham = { trigger = { always = yes } } - culture:mon = { trigger = { always = yes } } - culture:tai = { trigger = { always = yes } } - culture:malay = { trigger = { always = yes } } - culture:burmese = { trigger = { always = yes } } - culture:dayak = { trigger = { always = yes } } - culture:bai = { trigger = { always = yes } } - } - faith = faith:shaivism - after_creation = { - random_list = { - 10 = { - set_character_faith = faith:vaishnavism - } - 10 = { - set_character_faith = faith:shaivism - } - } - remove_character_flag = peasant_outfit - add_character_flag = created - } - save_scope_as = bystander - } - } -} - -#Guess you're a divine now, Harry! -tgp_east_asia_mandala_events.9000 = { - type = character_event - title = tgp_east_asia_mandala_events.9000.t - desc = { - first_valid = { - triggered_desc = { - trigger = { scope:divine_circumstance = flag:scar } - desc = tgp_east_asia_mandala_events.9000.desc.scar - } - desc = tgp_east_asia_mandala_events.9000.desc.lightning_strike - } - first_valid = { - triggered_desc = { - trigger = { - scope:divine_circumstance = flag:lightning_strike - has_mandala_faith_trigger = no - } - desc = tgp_east_asia_mandala_events.9000.outro.diff_faith.lightning_strike - } - triggered_desc = { - trigger = { scope:divine_circumstance = flag:lightning_strike } - desc = tgp_east_asia_mandala_events.9000.outro.lightning_strike - } - } - } - theme = faith - override_background = { - trigger = { scope:divine_circumstance = flag:lightning_strike } - reference = market - } - left_portrait = { - character = root - triggered_animation = { - trigger = { scope:divine_circumstance = flag:lightning_strike } - animation = delirium - } - animation = disbelief - } - right_portrait = { - character = scope:bystander - triggered_animation = { - trigger = { scope:divine_circumstance = flag:lightning_strike } - animation = thinking - } - animation = shock - } - trigger = { - government_has_flag = government_is_wanua - is_independent_ruler = yes - is_available_adult = yes - location = { is_sea_province = no } - NOT = { has_character_modifier = divine_happenstance_modifier } - has_mandala_culture_trigger = yes - #We have a special decision for Mandala subjects... - trigger_if = { - limit = { is_tributary = yes } - NOT = { - overlord = { government_has_flag = government_is_mandala } - } - } - } - weight_multiplier = { - base = 1 - modifier = { - add = 1 - is_ai = no - } - modifier = { - add = 1 - has_realm_law = tribal_authority_2 - } - modifier = { - add = 1 - has_trait = scarred - } - } - immediate = { - #What was the random happenstance? - random_list = { - 10 = { - save_scope_value_as = { - name = divine_circumstance - value = flag:lightning_strike - } - #Find our bystander - mandala_events_9000_find_local_bystander_effect = yes - } - 20 = { - trigger = { - has_trait = scarred - OR = { - any_relation = { - type = friend - mandala_events_9000_appropriate_relationship_character_trigger = yes - } - any_relation = { - type = lover - mandala_events_9000_appropriate_relationship_character_trigger = yes - } - } - } - save_scope_value_as = { - name = divine_circumstance - value = flag:scar - } - #Find our bystander - random_list = { - 10 = { - random_relation = { - type = friend - limit = { mandala_events_9000_appropriate_relationship_character_trigger = yes } - save_scope_as = bystander - } - } - 10 = { - random_relation = { - type = lover - limit = { mandala_events_9000_appropriate_relationship_character_trigger = yes } - save_scope_as = bystander - } - } - } - } - } - #To make the tooltip look neat - custom_tooltip = cheaper_mandala_government_conversion_tt - add_character_modifier = { - modifier = divine_happenstance_modifier - years = cheaper_mandala_government_conversion_years - } - } - #Yes please! - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { has_mandala_faith_trigger = no } - desc = tgp_east_asia_mandala_events.9000.a.diff_faith - } - desc = tgp_east_asia_mandala_events.9000.a - } - } - } - if = { - limit = { has_mandala_faith_trigger = no } - set_character_faith = scope:bystander.faith - } - custom_description_no_bullet = { text = divine_happenstance_tt } - #The boons - show_as_tooltip = { divine_happenstance_adopt_mandala_effect = yes } - set_variable = { - name = vying_for_mandala_divinity - years = cheaper_mandala_government_conversion_years - } - ai_chance = { - base = 100 - } - } - #Eh... naah, maybe later - option = { - name = tgp_east_asia_mandala_events.9000.b - #Some lesser boons - add_prestige = { - value = major_prestige_value - multiply = 1.5 - } - scope:bystander = { - if = { - limit = { this = root.cp:councillor_court_chaplain } - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -5 - } - } - } - - ai_chance = { - base = 100 - } - } - after = { - scope:bystander = { - silent_disappearance_ai_if_created_effect = yes - } - } -} diff --git a/events/dlc/tgp/tgp_mandala_task_contract_events.txt b/events/dlc/tgp/tgp_mandala_task_contract_events.txt deleted file mode 100644 index ece9fe8d1..000000000 --- a/events/dlc/tgp/tgp_mandala_task_contract_events.txt +++ /dev/null @@ -1,8919 +0,0 @@ -#Mandala Task Contract Events - -namespace = tgp_east_asia_mandala_task_contract_events - - -#Cancel travel plan confirmation -tgp_east_asia_mandala_task_contract_events.0990 = { - type = character_event - title = tgp_east_asia_mandala_task_contract_events.0990.t - desc = tgp_east_asia_mandala_task_contract_events.0990.desc - theme = mandala - left_portrait = { - character = root - animation = pondering - } - immediate = { - # Save the contract - random_character_active_contract = { - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - - # Save the employer - task_contract_employer ?= { - save_scope_as = contract_employer - } - # Save your character - task_contract_taker = { - save_scope_as = contract_taker - } - } - } - # On second thought, let's go! - option = { - name = tgp_east_asia_mandala_task_contract_events.0990.a - custom_tooltip = tgp_east_asia_mandala_task_contract_events.0990.a_tt - if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0001 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1000 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0002 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1100 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0003 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1200 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0004 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1300 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0005 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1400 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0006 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1500 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0007 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1600 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0008 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1700 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0009 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1800 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0010 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.1900 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0011 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2000 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0012 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2100 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0013 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2200 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0014 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2300 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0015 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2400 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0016 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2500 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0017 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2600 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0018 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2700 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0019 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2800 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0020 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.2900 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0021 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3000 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0022 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3100 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0023 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3200 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0024 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3300 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0025 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3400 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0026 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3500 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0027 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3600 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0028 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3700 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0029 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3800 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0030 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.3900 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0031 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4000 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0032 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4100 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0033 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4200 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0034 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4300 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0035 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4400 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0036 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4500 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0037 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4600 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0038 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4700 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0039 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4800 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0040 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.4900 - } - } - else_if = { - limit = { - scope:ongoing_contract = { has_task_contract_type = mandala_realm_contract_0041 } - } - mandala_travel_to_contract_location_effect = { - DESTINATION = scope:ongoing_destination - ARRIVAL_EVENT = tgp_east_asia_mandala_task_contract_events.5000 - } - } - } - # I have more important matters to deal with. - option = { - name = tgp_east_asia_mandala_task_contract_events.0990.b - scope:ongoing_contract = { complete_task_contract = failure_standard } - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - custom_tooltip = tgp_east_asia_mandala_task_contract_events.0990.b_tt - } -} - - -scripted_trigger default_local_character_1000_trigger = { - is_available_adult = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - NOR = { - has_any_bad_relationship_with_character_trigger = { CHARACTER = root } - has_any_good_relationship_with_character_trigger = { CHARACTER = root } - } - trigger_if = { - limit = { - faith = { has_doctrine_parameter = clergy_must_be_female } - } - is_female = yes - } - trigger_if = { - limit = { - faith = { has_doctrine_parameter = clergy_must_be_male } - } - is_male = yes - } -} - -tgp_east_asia_mandala_task_contract_events.1000 = { - type = character_event - window = big_event_window - title = { - first_valid = { - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.t.creation - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.t.serenity - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.t.destruction - } - desc = tgp_east_asia_mandala_task_contract_events.1000.t.trickery - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.desc.creation - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.desc.serenity - } - triggered_desc = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - desc = tgp_east_asia_mandala_task_contract_events.1000.desc.destruction - } - desc = tgp_east_asia_mandala_task_contract_events.1000.desc.trickery - } - } - theme = mandala - #Indenting background overrides for easier overview - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - reference = holy_site_generic - } - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - reference = garden - } - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - reference = ep2_tournament - } - override_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - reference = temple - } - override_header_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - reference = "gfx/interface/window_event/event_header_green.dds" - } - override_header_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - reference = "gfx/interface/window_event/event_header_red.dds" - } - override_header_background = { - trigger = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - reference = "gfx/interface/window_event/event_header_purple.dds" - } - left_portrait = { - character = root - animation = personality_compassionate - } - right_portrait = { - character = scope:local_character - triggered_animation = { - trigger = { - root.house = { has_house_aspiration_parameter = aspect_of_destruction } - } - animation = marshal_random_weapon - } - animation = obsequious_bow - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { save_scope_as = ritual_location } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - default_local_character_1000_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { default_local_character_1000_trigger = yes } - save_scope_as = local_character - } - } - else = { - hidden_effect_new_object = { - random_list = { - 90 = { - create_character = { - template = pool_repopulate_learning - faith = scope:ritual_location.faith - culture = scope:ritual_location.culture - location = scope:ritual_location - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - 5 = { - create_character = { - template = default_mystic_character - faith = scope:ritual_location.faith - culture = scope:ritual_location.culture - location = scope:ritual_location - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - 5 = { - trigger = { - OR = { - AND = { - is_attracted_to_women = yes - scope:ritual_location.faith = { - OR = { - has_doctrine_parameter = clergy_must_be_female - has_doctrine_parameter = clergy_can_be_either_gender - } - } - } - AND = { - is_attracted_to_men = yes - scope:ritual_location.faith = { - OR = { - has_doctrine_parameter = clergy_must_be_male - has_doctrine_parameter = clergy_can_be_either_gender - } - } - } - } - } - if = { - limit = { - scope:ritual_location.faith = { has_doctrine_parameter = clergy_must_be_female } - } - dummy_female = { save_scope_as = dummy_clergy_gender } - } - else_if = { - limit = { - scope:ritual_location.faith = { has_doctrine_parameter = clergy_must_be_male } - } - dummy_male = { save_scope_as = dummy_clergy_gender } - } - else = { - random_list = { - 50 = { - dummy_female = { save_scope_as = dummy_clergy_gender } - } - 50 = { - dummy_male = { save_scope_as = dummy_clergy_gender } - } - } - } - create_character = { - template = beautiful_peasant_character - age = { age_compared_to_root_minus_ten_always_adult age_compared_to_root_plus_ten_always_adult } - gender = scope:dummy_clergy_gender - faith = scope:ritual_location.faith - culture = scope:ritual_location.culture - location = scope:ritual_location - after_creation = { - #Sometimes adjust sexuality to create compatibility with root - if = { - limit = { - root = { is_attracted_to_gender_of = prev } - NOT = { is_attracted_to_gender_of = root } - } - set_sexuality = bisexual - } - add_character_flag = created - } - save_scope_as = local_character - save_scope_as = tempting_character - } - } - } - } - } - } - #Piety, please - option = { - name = tgp_east_asia_mandala_task_contract_events.1000.a - - mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - #Legitimacy! - option = { - name = tgp_east_asia_mandala_task_contract_events.1000.b - - small_mandala_legitimacy_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Barren Cattle -tgp_east_asia_mandala_task_contract_events.1100 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1100.t - desc = tgp_east_asia_mandala_task_contract_events.1100.desc - theme = mandala - override_background = mpo_rural_village_asian - - #left_portrait = { - # character = scope:entourage_character - # animation = instrument_active - #} - center_portrait = { - character = root - animation = physician - } - right_portrait = { - character = scope:local_character - animation = shepherd_with_sheep - camera = camera_herder_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1100.a - - big_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { change_development_progress_with_overflow = 25 } - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 30 } - } - - stress_impact = { - base = medium_stress_impact_gain - diligent = medium_stress_impact_loss - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1100.b - - mandala_piety_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 7 } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1100.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { change_development_progress_with_overflow = -25 } - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# The First Seed -tgp_east_asia_mandala_task_contract_events.1200 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1200.t - desc = tgp_east_asia_mandala_task_contract_events.1200.desc - theme = mandala - override_background = wilderness - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = obsequious_bow - camera = camera_event_scheme_far_right - } - right_portrait = { - character = scope:local_character_2 - animation = fanning_coyly - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - OR = { - has_sexuality = heterosexual - has_sexuality = bisexual - } - fertility > 30 - age <= 30 - NOT = { - has_trait = chaste - } - trigger_if = { - limit = { - root = { is_male = yes } - } - is_female = yes - } - trigger_else = { - is_male = yes - } - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - OR = { - has_sexuality = heterosexual - has_sexuality = bisexual - } - fertility > 30 - age <= 30 - NOT = { - has_trait = chaste - } - trigger_if = { - limit = { - root = { is_male = yes } - } - is_female = yes - } - trigger_else = { - is_male = yes - } - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = opposite_gender_peasant_template - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1200.a - - big_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = 100 - } - - if = { - limit ={ - can_contract_disease_trigger = { DISEASE = ill } - } - random = { - chance = 30 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - } - - scope:ritual_location = { - if = { - limit = { - province_has_no_holding_trigger = yes - } - begin_create_holding = { - type = temple_citadel_holding - } - } - } - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 30 } - } - - stress_impact = { - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1200.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - - scope:ritual_location = { - if = { - limit = { - province_has_no_holding_trigger = yes - } - random = { - chance = 50 - begin_create_holding = { - type = temple_citadel_holding - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1200.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Sacred Heifer -tgp_east_asia_mandala_task_contract_events.1300 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1300.t - desc = tgp_east_asia_mandala_task_contract_events.1300.desc - theme = mandala - override_background = tgp_farm_asia - override_effect_2d = { reference = flies } - - left_portrait = { - character = root - animation = pondering - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = stress - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1300.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - add_prestige = major_prestige_loss - - add_character_modifier = { - modifier = diplomacy_majesty_4090_no_raiment_modifier - days = 7 - } - - hidden_effect = { - change_current_weight = -25 - } - - if = { - limit ={ - can_contract_disease_trigger = { DISEASE = ill } - } - random = { - chance = 30 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - } - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 7 } - } - - stress_impact = { - arrogant = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1300.b - - small_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - add_prestige = minor_prestige_loss - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 7 } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1300.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Divine Witness -tgp_east_asia_mandala_task_contract_events.1400 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1400.t - desc = tgp_east_asia_mandala_task_contract_events.1400.desc - theme = mandala - override_background = garden - - left_portrait = { - character = root - animation = chaplain - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = flirtation_left - camera = camera_event_scheme_far_right - } - right_portrait = { - character = scope:local_character_2 - animation = fanning_coyly - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - scope:ritual_location.barony.holder = { - is_ai = yes - is_married = yes - primary_spouse = { is_ai = yes } - NOR = { - any_child = { is_alive = yes } - any_spouse = { - is_female = yes - has_trait = pregnant - } - } - } - } - scope:ritual_location.barony.holder = { save_scope_as = local_character } - scope:ritual_location.barony.holder.primary_spouse = { save_scope_as = local_character_2 } - } - else = { - create_character = { - template = local_noble_character - dynasty = none - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - gender_female_chance = 0 - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - create_character = { - template = local_noble_character - age = { 25 35 } - dynasty = none - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - gender_female_chance = 100 - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - hidden_effect_new_object = { - scope:local_character = { - if = { - limit = { - is_lowborn = yes - root = { is_ai = no } - } - create_dynasty = { - spread_to_descendants = yes - } - } - marry = scope:local_character_2 - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1400.a - - mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character - PREGNANCY_CHANCE = 100 - } - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = 100 - } - - scope:local_character = { - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - } - - create_character_memory = { - type = had_a_threesome_memory - participants = { - partner_1 = scope:local_character - partner_2 = scope:local_character_2 - } - } - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - stress_impact = { - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1400.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 14 } - } - - scope:local_character = { - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = 100 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1400.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Midwives' Dream -tgp_east_asia_mandala_task_contract_events.1500 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1500.t - desc = { - desc = tgp_east_asia_mandala_task_contract_events.1500.desc - first_valid = { - triggered_desc = { - trigger = { - is_female = yes - scope:1500_stand_in_character ?= { has_character_flag = created } - } - desc = tgp_east_asia_mandala_task_contract_events.1500.desc.stand_in.acolyte - } - desc = tgp_east_asia_mandala_task_contract_events.1500.desc.stand_in - } - } - theme = mandala - override_background = bp1_crossroads_inn - - left_portrait = { - character = root - animation = worry - } - center_portrait = { - character = scope:local_character - animation = storyteller - camera = camera_event_scheme_far_right - } - right_portrait = { - character = scope:local_character_2 - animation = fanning_coyly - } - lower_left_portrait = { - character = scope:1500_stand_in_character - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { exists = scope:ritual_location } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - is_female = yes - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - is_female = yes - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - age = { 45 65 } - location = scope:ritual_location - gender_female_chance = 100 - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - create_character = { - template = opposite_gender_peasant_template - location = scope:ritual_location - gender_female_chance = 100 - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - hidden_effect_new_object = { - scope:local_character_2 = { - random_list = { - 30 = { - add_trait = albino - } - 20 = { - add_trait = scaly - } - 10 = { - add_trait = beauty_bad_3 - } - } - random_list = { - 30 = { - add_trait = scarred - } - 20 = { - add_trait = clubfooted - } - 10 = { - add_trait = hunchbacked - } - } - } - } - #Hmm, find a stand-in - if = { - limit = { is_female = yes } - current_travel_plan = { - if = { - limit = { - any_entourage_character = { - this != root - is_healthy = yes - is_ai = yes - is_adult = yes - is_married = no - is_male = yes - NOR = { - has_trait = devoted - has_trait = chaste - has_trait = celibate - has_sexuality = homosexual - } - } - } - random_entourage_character = { - limit = { - this != root - is_healthy = yes - is_ai = yes - is_adult = yes - is_married = no - is_male = yes - NOR = { - has_trait = devoted - has_trait = chaste - has_trait = celibate - has_sexuality = homosexual - } - } - weight = { - base = 1 - modifier = { - is_child_of = root - add = 200 - } - modifier = { - any_spouse = { this = root } - add = 300 - } - modifier = { - is_close_family_of = root - add = 100 - } - } - save_scope_as = 1500_stand_in_character - } - } - } - if = { - limit = { - NOT = { exists = scope:1500_stand_in_character } - } - hidden_effect_new_object = { - create_character = { - template = tgp_aspect_acolyte_template - location = scope:ritual_location - save_scope_as = 1500_stand_in_character - after_creation = { add_character_flag = created } - } - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:1500_stand_in_character - NEW_COURT_OWNER = root - } - } - } - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { - is_female = yes - scope:1500_stand_in_character ?= { has_character_flag = created } - } - desc = tgp_east_asia_mandala_task_contract_events.1500.a.stand_in.acolyte - } - triggered_desc = { - trigger = { is_female = yes } - desc = tgp_east_asia_mandala_task_contract_events.1500.a.stand_in - } - desc = tgp_east_asia_mandala_task_contract_events.1500.a - } - } - } - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - #We do the deed - if = { - limit = { is_female = no } - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - #This relation should be a blank slate - if = { - limit = { - can_set_relation_potential_lover_trigger = { CHARACTER = scope:local_character_2 } - } - set_relation_potential_lover = scope:local_character_2 - } - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character_2 - NEW_COURT_OWNER = root - } - stress_impact = { - base = minor_stress_impact_gain - chaste = medium_stress_impact_gain - } - } - #We need a proxy - else = { - #Ehm, no incest please - if = { - limit = { - scope:1500_stand_in_character = { - NOT = { is_close_family_of = root } - } - } - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - had_sex_with_effect = { - CHARACTER = scope:1500_stand_in_character - PREGNANCY_CHANCE = pregnancy_chance - } - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - #This relation should be a blank slate - if = { - limit = { - can_set_relation_potential_lover_trigger = { CHARACTER = scope:local_character_2 } - } - set_relation_potential_lover = scope:local_character_2 - } - create_character_memory = { - type = had_a_threesome_memory - participants = { - partner_1 = scope:1500_stand_in_character - partner_2 = scope:local_character_2 - } - } - } - #They do the deed - scope:1500_stand_in_character = { - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character_2 - NEW_COURT_OWNER = root - } - stress_impact = { - base = minor_stress_impact_gain - } - } - stress_impact = { - base = minor_stress_impact_gain - chaste = medium_stress_impact_gain - lustful = major_stress_impact_loss - } - } - #*shock* - every_consort = { - add_opinion = { - target = root - modifier = outraged_opinion - opinion = -50 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:1500_stand_in_character } - desc = tgp_east_asia_mandala_task_contract_events.1500.b.stand_in - } - desc = tgp_east_asia_mandala_task_contract_events.1500.b - } - } - } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - #We do the deed - if = { - limit = { is_female = no } - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - stress_impact = { - base = minor_stress_impact_gain - chaste = medium_stress_impact_gain - lustful = minor_stress_impact_loss - } - } - #We need a proxy - else = { - scope:1500_stand_in_character = { - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - stress_impact = { - base = minor_stress_impact_gain - } - } - stress_impact = { - lustful = minor_stress_impact_loss - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1500.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - scope:1500_stand_in_character ?= { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Weeping Statue -tgp_east_asia_mandala_task_contract_events.1600 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1600.t - desc = tgp_east_asia_mandala_task_contract_events.1600.desc - theme = mandala - override_background = tgp_farm_asia - - left_portrait = { - character = root - animation = newborn - } - center_portrait = { - character = scope:local_character - animation = obsequious_bow - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:statue_head - animation = dead - camera = camera_event_right_massive_head - hide_info = yes - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - create_character = { - template = generic_peasant_character - location = scope:background_terrain_scope - culture = scope:background_terrain_scope.culture - faith = scope:background_terrain_scope.faith - save_scope_as = statue_head - after_creation = { - add_character_flag = created - } - } - hidden_effect = { - scope:statue_head = { - add_trait = disfigured - add_trait = albino - add_character_flag = no_headgear - death = { death_reason = death_vanished } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1600.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - remove_short_term_gold = medium_gold_value - - scope:ritual_location.county = { - add_county_modifier = { - modifier = stone_head_shrine_modifier - years = 25 - } - } - - ai_chance = { - base = 50 - modifier = { - gold <= major_gold_value - factor = 0 - } - modifier = { - scope:ritual_location.county.holder.top_liege != root.top_liege - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1600.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - remove_short_term_gold = tiny_gold_value - - ai_chance = { - base = 100 - modifier = { - gold <= minor_gold_value - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1600.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Sprouting Flowers -tgp_east_asia_mandala_task_contract_events.1700 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1700.t - desc = tgp_east_asia_mandala_task_contract_events.1700.desc - theme = mandala - override_background = tgp_rice_fields - override_effect_2d = { reference = rain } - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = grief - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1700.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - capital_county = { change_development_progress_with_overflow = -75 } - scope:ritual_location.county = { change_development_progress_with_overflow = 75 } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = fertile_ground_modifier - years = 15 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1700.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - if = { - limit ={ - can_contract_disease_trigger = { DISEASE = ill } - } - random = { - chance = 30 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1700.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# River Ritual -tgp_east_asia_mandala_task_contract_events.1800 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1800.t - desc = tgp_east_asia_mandala_task_contract_events.1800.desc - theme = mandala - override_background = bp3_riverside - - left_portrait = { - character = root - animation = frontend_left_idle - } - center_portrait = { - character = scope:local_character_2 - animation = flirtation_left - camera = camera_event_scheme_far_right - } - right_portrait = { - character = scope:local_character - animation = relaxed_spear - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - create_character = { - template = opposite_gender_peasant_template - location = scope:ritual_location - gender_female_chance = 100 - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1800.a - - mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character_2 - PREGNANCY_CHANCE = pregnancy_chance - } - - if = { - limit ={ - can_contract_disease_trigger = { DISEASE = ill } - } - random = { - chance = 30 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - } - - stress_impact = { - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1800.b - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1800.c - - small_mandala_piety_reward_effect = yes - add_gold = minor_gold_value - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 10 - } - } - - stress_impact = { - generous = medium_stress_impact_gain - } - ai_chance = { - base = 10 - modifier = { - has_trait = generous - factor = 0 - } - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Cursed Fields -tgp_east_asia_mandala_task_contract_events.1900 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.1900.t - desc = tgp_east_asia_mandala_task_contract_events.1900.desc - theme = mandala - override_background = tgp_farm_asia - - left_portrait = { - character = scope:entourage_character - animation = holding_staff - camera = camera_event_scheme_far_right - } - center_portrait = { - character = root - animation = survey - camera = camera_event_scheme_left - } - right_portrait = { - character = scope:local_character - animation = rage - camera = camera_event_scheme_left - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - if = { - limit = { - any_entourage_character = { - age >= 13 - is_healthy = yes - } - } - } - random_entourage_character = { - limit = { - age >= 13 - is_healthy = yes - } - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1900.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - add_character_modifier = { - modifier = stress_smelling_of_sweat - years = 3 - } - - stress_impact = { - base = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.1900.b - trigger = { exists = scope:entourage_character } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - scope:entourage_character = { - add_character_modifier = { - modifier = stress_smelling_of_sweat - years = 3 - } - } - - reverse_add_opinion = { - modifier = cruelty_opinion - target = scope:entourage_character - opinion = -30 - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - humble = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = humble - has_trait = just - } - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.1900.c - - small_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 3 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Withered Grove -tgp_east_asia_mandala_task_contract_events.2000 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2000.t - desc = tgp_east_asia_mandala_task_contract_events.2000.desc - theme = mandala - override_background = wilderness - override_effect_2d = { reference = smoke } - - left_portrait = { - character = root - animation = personality_zealous - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = stunned - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age <= 40 - trigger_if = { - limit = { - root = { is_male = yes } - } - is_female = yes - } - trigger_else = { - is_female = yes - } - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age <= 40 - trigger_if = { - limit = { - root = { is_male = yes } - } - is_female = yes - } - trigger_else = { - is_female = yes - } - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = opposite_gender_peasant_template - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { is_female = yes } - desc = tgp_east_asia_mandala_task_contract_events.2000.a.female - } - desc = tgp_east_asia_mandala_task_contract_events.2000.a - } - } - } - - big_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - remove_short_term_gold = minor_gold_value - - add_prestige = minor_prestige_loss - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character - PREGNANCY_CHANCE = pregnancy_chance - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = lush_grove_modifier - years = 25 - } - } - - stress_impact = { - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - gold <= medium_gold_value - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2000.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - add_prestige = minor_prestige_loss - - save_scope_value_as = { - name = ignore_cheating_error_check - value = yes - } - - had_sex_with_effect = { - CHARACTER = scope:local_character - PREGNANCY_CHANCE = pregnancy_chance - } - - stress_impact = { - chaste = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2000.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Pig Slaughter Oath -tgp_east_asia_mandala_task_contract_events.2100 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2100.t - desc = tgp_east_asia_mandala_task_contract_events.2100.desc - theme = mandala - override_background = mpo_rural_village_asian - - left_portrait = { - character = root - animation = spymaster - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = throne_room_two_handed_passive_1 - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = vengeance_target - } - } - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = vengeance_target - } - } - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - gender_female_chance = root_soldier_female_chance - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2100.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - remove_short_term_gold = medium_gold_value - - scope:vengeance_target = { - title_province = { - add_province_modifier = { - modifier = recently_looted_modifier - years = 5 - } - } - change_county_control = -50 - change_development_progress_with_overflow = -50 - } - - ai_chance = { - base = 0 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2100.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:vengeance_target = { - change_county_control = -15 - change_development_progress_with_overflow = -15 - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2100.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 5 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Ritual Wrath -tgp_east_asia_mandala_task_contract_events.2200 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2200.t - desc = tgp_east_asia_mandala_task_contract_events.2200.desc - theme = mandala - override_background = tgp_farm_asia - override_effect_2d = { reference = flies } - - left_portrait = { - character = scope:entourage_character - animation = throne_room_two_handed_passive_1 - camera = camera_event_scheme_center_look_semi_right - } - center_portrait = { - character = root - animation = marshal - camera = camera_event_scheme_center_look_semi_right - } - right_portrait = { - character = scope:local_character - animation = throne_room_bow_1 - camera = camera_event_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2200.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - increase_wounds_effect = { REASON = whipping } - - scope:ritual_location.county = { - change_development_progress_with_overflow = 10 - } - - stress_impact = { - base = medium_stress_impact_gain - craven = medium_stress_impact_gain - flagellant = massive_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2200.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:local_character = { - death = { - death_reason = death_punishment - killer = root - } - } - - scope:ritual_location.county = { - change_county_control = -10 - change_development_progress_with_overflow = 10 - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2200.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Collective Punishment -tgp_east_asia_mandala_task_contract_events.2300 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2300.t - desc = tgp_east_asia_mandala_task_contract_events.2300.desc - theme = mandala - override_background = tgp_farm_asia - - left_portrait = { - character = root - animation = throne_room_two_handed_passive_shield - camera = camera_event_scheme_center_look_right - } - center_portrait = { - character = scope:local_character_2 - animation = nervous - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:local_character - animation = threatening - } - lower_left_portrait = { - character = scope:local_character_3 - animation = manic - } - lower_center_portrait = { - character = scope:local_character_4 - animation = crying - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_female = yes - NOR = { - has_trait = celibate - has_trait = devoted - } - age <= 35 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_female = yes - NOR = { - has_trait = celibate - has_trait = devoted - } - age <= 35 - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - gender_female_chance = 100 - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - create_character = { - template = generic_peasant_character - location = scope:ritual_location - gender_female_chance = 0 - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_3 - after_creation = { - add_character_flag = created - } - } - create_character = { - template = peasant_young_child_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_4 - after_creation = { - add_character_flag = created - } - } - hidden_effect_new_object = { - scope:local_character_3 = { - add_gold = 25 - marry = scope:local_character_2 - } - scope:local_character_4 = { - set_father = scope:local_character_3 - set_mother = scope:local_character_2 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2300.a - - duel = { - skill = martial - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - desc = tgp_east_asia_mandala_task_contract_events.2300.a.success - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.2300.a.success - left_icon = root - right_icon = scope:local_character_3 - scope:local_character_3 = { - death = { death_reason = death_punishment killer = root } - } - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - scope:ritual_location.county = { - if = { - limit = { - county_control < 100 - } - change_county_control = 15 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - desc = tgp_east_asia_mandala_task_contract_events.2300.a.failure - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.2300.a.failure - left_icon = root - right_icon = scope:local_character_3 - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 5 - } - change_county_control = -15 - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2300.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:local_character_2 = { - death = { death_reason = death_punishment killer = root } - } - - scope:local_character_4 = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = collective_punishments_modifier - years = 15 - } - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = just - } - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2300.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 3 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_3 = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_4 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Diseased Spirits -tgp_east_asia_mandala_task_contract_events.2400 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2400.t - desc = tgp_east_asia_mandala_task_contract_events.2400.desc - theme = mandala - override_background = mpo_rural_village_asian - override_effect_2d = { reference = smoke } - - left_portrait = { - character = root - animation = frontend_left_idle - } - center_portrait = { - character = scope:local_character - animation = cough - camera = camera_event_scheme_right - } - right_portrait = { - character = scope:local_character_2 - animation = physician - camera = camera_event_scheme_center_look_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - create_character = { - template = bp1_yearly_2021_learning_witch_template - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - hidden_effect_new_object = { - scope:local_character = { - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = no } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2400.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:local_character_2 = { - death = { death_reason = death_burned killer = root } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = no_healers_modifier - years = 20 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2400.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:local_character_2 = { - death = { death_reason = death_burned killer = root } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = no_healers_modifier - years = 5 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2400.c - - small_mandala_piety_reward_effect = yes - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character_2 - NEW_COURT_OWNER = root - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 3 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Dull Spears -tgp_east_asia_mandala_task_contract_events.2500 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2500.t - desc = tgp_east_asia_mandala_task_contract_events.2500.desc - theme = mandala - override_background = bp1_crossroads_inn - - left_portrait = { - character = root - animation = inspect_weapon - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = beg - camera = camera_event_scheme_right - } - right_portrait = { - character = scope:local_character_2 - animation = drink_goblet - camera = camera_event_scheme_center_look_semi_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - age = { 45 65 } - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_clergy = no - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_clergy = no - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - hidden_effect_new_object = { - scope:local_character_2 = { - add_character_flag = need_military_outfit - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2500.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:local_character_2 = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = motivated_men_at_arms_modifier - years = 15 - } - county = { - if = { - limit = { - county_control < 100 - } - change_county_control = 15 - } - } - } - - random = { - chance = 50 - increase_wounds_effect = { REASON = fight } - } - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2500.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 30 } - } - - scope:local_character_2 = { - increase_wounds_effect = { REASON = whipping } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = safer_roads_modifier - years = 15 - } - county = { - if = { - limit = { - county_control < 100 - } - change_county_control = 15 - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2500.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - random = { - chance = 10 - scope:ritual_location.county = { - add_county_modifier = county_corruption_bandits_rampant_modifier - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Defiant Village -tgp_east_asia_mandala_task_contract_events.2600 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2600.t - desc = tgp_east_asia_mandala_task_contract_events.2600.desc - theme = mandala - override_background = mpo_rural_village_asian - - left_portrait = { - character = root - animation = throne_room_one_handed_passive_1 - camera = camera_event_scheme_center_look_semi_right - } - center_portrait = { - character = scope:local_character - animation = dancing_plague - camera = camera_event_scheme_center_look_right - } - right_portrait = { - character = scope:local_character_2 - animation = dancing - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2600.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:local_character = { - death = { death_reason = death_punishment killer = root } - } - - scope:local_character_2 = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = slaughtered_village_modifier - years = 15 - } - change_development_progress_with_overflow = -25 - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = compassionate - has_trait = forgiving - } - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2600.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { - change_development_progress_with_overflow = -25 - } - - stress_impact = { - compassionate = medium_stress_impact_gain - forgiving = medium_stress_impact_gain - just = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = just - } - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2600.c - - small_mandala_piety_reward_effect = yes - - stress_impact = { - wrathful = medium_stress_impact_gain - sadistic = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = wrathful - has_trait = sadistic - } - factor = 0 - } - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Blood Tax -tgp_east_asia_mandala_task_contract_events.2700 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2700.t - desc = tgp_east_asia_mandala_task_contract_events.2700.desc - theme = mandala - override_background = mpo_rural_village_asian - - left_portrait = { - character = root - animation = throne_room_two_handed_passive_shield - camera = camera_event_scheme_center_look_right - } - center_portrait = { - character = scope:local_character - animation = holding_scrolls - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2700.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { - change_development_progress_with_overflow = -50 - add_county_modifier = { - modifier = enforced_levy_modifier - years = 15 - } - if = { - limit = { - county_control < 100 - } - change_county_control = 15 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2700.b - - mandala_piety_reward_effect = yes - add_gold = { - value = scope:ritual_location.available_loot - min = 25 - } - scope:ritual_location.county = { - change_county_control = -15 - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2700.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Bamboo Rebels -tgp_east_asia_mandala_task_contract_events.2800 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2800.t - desc = tgp_east_asia_mandala_task_contract_events.2800.desc - theme = mandala - override_background = tgp_market_asia - - left_portrait = { - character = root - animation = marshal_shield - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:local_character - animation = relaxed_spear - camera = camera_event_scheme_left - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root } - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - gender_female_chance = root_soldier_female_chance - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2800.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:local_character = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location.county = { - change_development_progress_with_overflow = -50 - if = { - limit = { - county_control < 100 - } - change_county_control = 15 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2800.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2800.c - - small_mandala_piety_reward_effect = yes - scope:ritual_location.county = { - add_county_modifier = { - modifier = well_armed_peasants_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Road Sacrifice -tgp_east_asia_mandala_task_contract_events.2900 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.2900.t - desc = tgp_east_asia_mandala_task_contract_events.2900.desc - theme = mandala - override_background = tgp_farm_asia - override_effect_2d = { reference = rain } - - left_portrait = { - character = scope:entourage_character - animation = survey - camera = camera_event_scheme_far_right - } - center_portrait = { - character = root - animation = spymaster - camera = camera_event_scheme_center_look_semi_right - } - right_portrait = { - character = scope:local_character - animation = hunting_knife_start - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2900.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:ritual_location = { - add_province_modifier = { - modifier = safer_roads_modifier - years = 15 - } - } - - increase_wounds_effect = { REASON = whipping } - - stress_impact = { - base = medium_stress_impact_gain - craven = medium_stress_impact_gain - flagellant = massive_stress_impact_loss - } - - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.2900.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - remove_short_term_gold = tiny_gold_value - scope:ritual_location = { - add_province_modifier = { - modifier = safer_roads_modifier - years = 15 - } - } - - ai_chance = { - base = 100 - modifier = { - gold <= minor_gold_value - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.2900.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# War God Festival -tgp_east_asia_mandala_task_contract_events.3000 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3000.t - desc = tgp_east_asia_mandala_task_contract_events.3000.desc - theme = mandala - override_background = temple - override_effect_2d = { reference = smoke } - - left_portrait = { - character = root - animation = threatening - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = dancing - camera = camera_event_scheme_center_look_right - } - right_portrait = { - character = scope:local_character_2 - animation = instrument_active - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3000.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:local_character = { - death = { death_reason = death_punishment killer = root } - } - - scope:local_character_2 = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location.county = { - change_development_progress_with_overflow = -50 - add_county_modifier = { - modifier = fearful_population_modifier - years = 10 - } - change_county_control = -15 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3000.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:local_character = { - death = { death_reason = death_punishment killer = root } - } - - scope:local_character_2 = { - death = { death_reason = death_punishment killer = root } - } - - scope:ritual_location.county = { - change_development_progress_with_overflow = -25 - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3000.c - - small_mandala_piety_reward_effect = yes - add_prestige = minor_prestige_loss - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Quarreling Monks -tgp_east_asia_mandala_task_contract_events.3100 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3100.t - desc = tgp_east_asia_mandala_task_contract_events.3100.desc - theme = mandala - override_background = temple - - left_portrait = { - character = root - animation = stunned - } - center_portrait = { - character = scope:local_character - animation = debating - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:local_character_2 - animation = rage - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - hidden_effect = { - scope:local_character = { - add_trait = devoted - set_character_faith = scope:ritual_location.faith - } - scope:local_character_2 = { - add_trait = devoted - set_character_faith = scope:ritual_location.faith - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3100.a - - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - desc = tgp_east_asia_mandala_task_contract_events.3100.a.success - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.3100.a.success - left_icon = root - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - desc = tgp_east_asia_mandala_task_contract_events.3100.a.failure - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.3100.a.failure - left_icon = root - add_stress = medium_stress_impact_gain - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_monks_modifier - years = 5 - } - change_county_control = -25 - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3100.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - remove_short_term_gold = minor_gold_value - - scope:ritual_location = { - add_province_modifier = { - modifier = new_shrines_modifier - years = 20 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3100.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_monks_modifier - years = 3 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Purify Battlefield -tgp_east_asia_mandala_task_contract_events.3200 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3200.t - desc = tgp_east_asia_mandala_task_contract_events.3200.desc - theme = mandala - override_background = tgp_farm_asia - - left_portrait = { - character = root - animation = stress - camera = camera_event_left_away_3_4 - } - center_portrait = { - character = scope:local_character - animation = survey_staff - camera = camera_event_center_away - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - age = { 45 65 } - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3200.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - custom_tooltip = unable_to_declare_war_tt - add_character_flag = { - flag = sworn_peace - years = 5 - } - - add_character_modifier = { - modifier = ritually_disarmed_modifier - years = 5 - } - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 15 } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3200.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - add_character_modifier = { - modifier = ritually_disarmed_modifier - years = 5 - } - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 15 } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3200.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = plagued_by_nightmares_modifier - years = 3 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Bless the Weavers -tgp_east_asia_mandala_task_contract_events.3300 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3300.t - desc = tgp_east_asia_mandala_task_contract_events.3300.desc - theme = mandala - override_background = tgp_market_asia - - left_portrait = { - character = root - animation = pondering - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = obsequious_bow - camera = camera_event_scheme_right - } - right_portrait = { - character = scope:local_character_2 - animation = steward - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3300.a - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location = { - add_province_modifier = { - modifier = wealthgod_symbol_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3300.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location = { - add_province_modifier = { - modifier = healthgod_symbol_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3300.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Breaking of Spears -tgp_east_asia_mandala_task_contract_events.3400 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3400.t - desc = tgp_east_asia_mandala_task_contract_events.3400.desc - theme = mandala - override_background = bp1_bonfire - - left_portrait = { - character = root - animation = relaxed_spear - camera = camera_event_left_away_3_4 - } - center_portrait = { - character = scope:local_character - animation = throne_room_two_handed_passive_1 - camera = camera_event_center_away - } - right_portrait = { - character = scope:local_character_2 - animation = celebrate_spear - camera = camera_event_left_away - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3400.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - custom_tooltip = unable_to_declare_war_tt - add_character_flag = { - flag = sworn_peace - years = 5 - } - - scope:ritual_location = { - add_province_modifier = { - modifier = feudless_village_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3400.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location = { - add_province_modifier = { - modifier = feudless_village_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3400.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Guru's Peace -tgp_east_asia_mandala_task_contract_events.3500 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3500.t - desc = tgp_east_asia_mandala_task_contract_events.3500.desc - theme = mandala - override_background = holy_site_scope - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = wedding_priest - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - create_character = { - template = court_guru_court_position_template - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - hidden_effect = { - scope:local_character = { - add_diplomacy_skill = 10 - force_character_skill_recalculation = yes - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3500.a - - if = { - limit = { - NOT = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - } - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character - NEW_COURT_OWNER = root - } - - if = { - limit = { - can_employ_court_position_type = court_guru_court_position - } - appoint_court_position = { - recipient = scope:local_character - court_position = court_guru_court_position - } - } - - reverse_add_opinion = { - modifier = pious_opinion - target = scope:local_character - opinion = 50 - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = generation_of_peace_modifier - years = 25 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3500.b - - if = { - limit = { - NOT = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - small_mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - } - - pay_short_term_gold = { - target = scope:local_character - gold = tiny_gold_value - } - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character - NEW_COURT_OWNER = root - } - - if = { - limit = { - can_employ_court_position_type = court_guru_court_position - } - appoint_court_position = { - recipient = scope:local_character - court_position = court_guru_court_position - } - } - - ai_chance = { - base = 100 - modifier = { - gold <= minor_gold_value - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3500.c - - if = { - limit = { - NOT = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - small_mandala_piety_reward_effect = yes - } - else = { - mandala_piety_reward_effect = yes - } - - reverse_add_opinion = { - modifier = impious_opinion - target = scope:local_character - opinion = -75 - } - - ai_chance = { - base = 100 - modifier = { - factor = 0 - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappear_ai_if_not_hired_with_flag = yes - } - } -} - -# Reconciliation Edict -tgp_east_asia_mandala_task_contract_events.3600 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3600.t - desc = tgp_east_asia_mandala_task_contract_events.3600.desc - theme = mandala - override_background = tgp_farm_asia - - left_portrait = { - character = root - animation = writing - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = holding_scrolls - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - age = { 45 65 } - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3600.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = weapon_ban_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3600.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = arbitration_edict_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3600.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Eightfold Path -tgp_east_asia_mandala_task_contract_events.3700 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3700.t - desc = tgp_east_asia_mandala_task_contract_events.3700.desc - theme = mandala - override_background = terrain_travel - - left_portrait = { - character = root - animation = personality_zealous - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = storyteller - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - age = { 45 65 } - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3700.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 8 } - } - - if = { - limit ={ - can_contract_disease_trigger = { DISEASE = ill } - } - random = { - chance = 30 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = eightfold_path_modifier - years = 8 - } - } - - hidden_effect = { - change_current_weight = -25 - } - - stress_impact = { - base = medium_stress_impact_gain - lazy = massive_stress_impact_gain - diligent = medium_stress_impact_loss - } - - add_character_modifier = { - modifier = walked_the_eightfold_path_modifier - years = 8 - } - - ai_chance = { - base = 10 - modifier = { - has_trait = lazy - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3700.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 8 } - } - - stress_impact = { - base = minor_stress_impact_gain - lazy = major_stress_impact_gain - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 10 - modifier = { - has_trait = lazy - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3700.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Grove Guardians -tgp_east_asia_mandala_task_contract_events.3800 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3800.t - desc = tgp_east_asia_mandala_task_contract_events.3800.desc - theme = mandala - override_background = tgp_wedding_ceremony_asia - - left_portrait = { - character = root - animation = frontend_center_idle - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = holding_staff - camera = camera_event_scheme_right - } - right_portrait = { - character = scope:local_character_2 - animation = bow_idle - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { save_scope_as = county_scope } - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3800.a - - trigger = { - any_maa_regiment = {} - } - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - every_maa_regiment = { - limit = { - NOT = { - is_unit_type = siege_weapon - } - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.25 - } - } - } - - scope:county_scope = { - add_county_modifier = { - modifier = well_protected_groves_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3800.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - scope:county_scope = { - add_county_modifier = { - modifier = garrisoned_groves_modifier - years = 10 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3800.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Vow of Stillness -tgp_east_asia_mandala_task_contract_events.3900 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.3900.t - desc = tgp_east_asia_mandala_task_contract_events.3900.desc - theme = mandala - override_background = mpo_rural_village_asian - - left_portrait = { - character = root - animation = worry - } - center_portrait = { - character = scope:local_character - animation = debating - camera = camera_event_scheme_center_look_right - } - right_portrait = { - character = scope:local_character_2 - animation = rage - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3900.a - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 90 } - } - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - stress_impact = { - base = medium_stress_impact_gain - gregarious = massive_stress_impact_gain - shy = medium_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - has_trait = gregarious - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.3900.b - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 7 } - } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - stress_impact = { - base = minor_stress_impact_gain - gregarious = medium_stress_impact_gain - shy = medium_stress_impact_loss - } - ai_chance = { - base = 10 - modifier = { - has_trait = gregarious - factor = 0 - } - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.3900.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = discordant_town_modifier - years = 3 - } - } - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 100 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Stone-laying -tgp_east_asia_mandala_task_contract_events.4000 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4000.t - desc = tgp_east_asia_mandala_task_contract_events.4000.desc - theme = mandala - override_background = garden - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = throne_room_one_handed_passive_3 - camera = camera_event_scheme_center_forward - } - right_portrait = { - character = scope:local_character_2 - animation = aggressive_hammer - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - random_maa_regiment = { - limit = { - NOT = { - is_unit_type = siege_weapon - } - } - save_scope_as = sacrificial_regiment - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4000.a - - scope:ritual_location = { - generate_building = yes - } - - every_maa_regiment = { - limit = { - NOT = { - is_unit_type = siege_weapon - } - } - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.25 - } - } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = pious_silpakaras_modifier - years = 15 - } - } - - add_character_modifier = { - modifier = ritually_disarmed_modifier - years = 10 - } - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4000.b - - trigger = { - exists = scope:sacrificial_regiment - } - - scope:sacrificial_regiment = { - change_maa_troops_count = { - value = { - value = this.maa_current_troops_count - multiply = -0.5 - } - } - } - - add_character_modifier = { - modifier = ritually_disarmed_modifier - years = 5 - } - - scope:ritual_location = { - add_province_modifier = { - modifier = pious_silpakaras_modifier - years = 5 - } - } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4000.c - - small_mandala_piety_reward_effect = yes - - add_character_modifier = { - modifier = ritually_disarmed_modifier - years = 2 - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Laughing Ascetic -tgp_east_asia_mandala_task_contract_events.4100 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4100.t - desc = tgp_east_asia_mandala_task_contract_events.4100.desc - theme = mandala - override_background = mpo_rural_village_asian - - left_portrait = { - character = root - animation = map_disbelief - } - center_portrait = { - character = scope:local_character - animation = laugh - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:local_character_2 - animation = ecstasy - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - random_list = { - 50 = { - religion:buddhism_religion = { - random_faith = { -# limit = { -# NOR = { -# this = faith:dhyana -# this = faith:pundarika -# this = faith:vinaya -# this = faith:avatamsaka -# this = faith:sukhavati -# this = faith:acharya -# this = faith:mantrayana -# this = faith:maitreya -# this = faith:yogacara -# } -# } - save_scope_as = character_faith - } - } - } - 50 = { - religion:hinduism_religion = { - random_faith = { - save_scope_as = character_faith - } - } - } - } - # Local character - create_character = { - template = court_guru_court_position_template - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:character_faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_clergy = no - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - is_clergy = no - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - hidden_effect = { - scope:local_character = { - change_current_weight = 500 - add_intrigue_skill = 16 - force_character_skill_recalculation = yes - save_scope_as = second - } - scope:local_character_2 = { - remove_trait = humble - add_trait = arrogant - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4100.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4100.t - left_icon = root - right_icon = scope:local_character_2 - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character - NEW_COURT_OWNER = root - } - - if = { - limit = { - can_employ_court_position_type = court_guru_court_position - } - appoint_court_position = { - recipient = scope:local_character - court_position = court_guru_court_position - } - } - - add_hook = { - target = scope:local_character - type = loyalty_hook - } - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:local_character - opinion = 50 - } - - if = { - limit = { - culture != scope:ritual_location.culture - } - culture = { - change_cultural_acceptance = { - target = scope:ritual_location.culture - value = minor_cultural_acceptance_gain - desc = cultural_acceptance_gain_event - } - } - } - } - } - 45 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4100.t - left_icon = root - right_icon = scope:local_character_2 - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 5 - } - } - } - } - 5 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4100.t - left_icon = root - right_icon = scope:local_character_2 - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 5 - } - } - scope:ritual_location = { - if = { - limit = { - county.faith != scope:local_character.faith - } - county = { set_county_faith = scope:local_character.faith } - } - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4100.b - - small_mandala_piety_reward_effect = yes - add_prestige = medium_prestige_loss - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character - NEW_COURT_OWNER = root - } - - if = { - limit = { - can_employ_court_position_type = court_guru_court_position - } - appoint_court_position = { - recipient = scope:local_character - court_position = court_guru_court_position - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4100.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappear_ai_if_not_hired_with_flag = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Spirit Decoy -tgp_east_asia_mandala_task_contract_events.4200 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4200.t - desc = tgp_east_asia_mandala_task_contract_events.4200.desc - theme = mandala - override_background = tgp_farm_asia - override_effect_2d = { reference = flies } - - left_portrait = { - character = root - animation = throne_room_one_handed_passive_3 - camera = camera_event_scheme_center_look_right - } - center_portrait = { - character = scope:local_character - animation = storyteller - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4200.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - random_list = { - 75 = { - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4200.t - left_icon = root - right_icon = scope:ritual_location.county - scope:ritual_location.county = { - add_county_modifier = { - modifier = vegetable_idol_modifier - years = 25 - } - } - } - } - 25 = { - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4200.t - left_icon = root - right_icon = scope:ritual_location.county - add_prestige = medium_prestige_loss - scope:ritual_location.county = { - add_county_modifier = { - modifier = mocked_idol_modifier - years = 15 - } - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4200.b - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - random_list = { - 75 = { - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4200.t - left_icon = root - right_icon = scope:ritual_location.county - scope:ritual_location.county = { - add_county_modifier = { - modifier = ruler_idol_modifier - years = 25 - } - } - } - } - 25 = { - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4200.t - left_icon = root - right_icon = scope:ritual_location.county - add_prestige = medium_prestige_loss - scope:ritual_location.county = { - add_county_modifier = { - modifier = mocked_idol_modifier - years = 15 - } - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4200.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Game of Wit -tgp_east_asia_mandala_task_contract_events.4300 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4300.t - desc = tgp_east_asia_mandala_task_contract_events.4300.desc - theme = mandala - override_background = tgp_feast_asia - - center_portrait = { - character = root - animation = chess_cocky - camera = camera_event_scheme_center_look_right - } - right_portrait = { - character = scope:local_character - animation = chess_certain_win - camera = camera_event_scheme_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { exists = scope:ritual_location } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { save_scope_as = entourage_character } - } - # Local character - if = { - limit = { - OR = { - scope:ritual_location.barony.holder = root - scope:ritual_location.barony.holder = { is_available_adult = no } - } - } - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - has_any_good_relationship_with_root_trigger = no - intrigue > high_skill_rating - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - has_any_good_relationship_with_root_trigger = no - intrigue > high_skill_rating - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = intrigue_court_position_holder_template - location = scope:ritual_location - faith = scope:ritual_location.faith - culture = scope:ritual_location.culture - gender_female_chance = 50 - save_scope_as = local_character - } - } - } - else = { - scope:ritual_location.barony.holder = { - add_character_flag = local_ruler - save_scope_as = local_character - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4300.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - duel = { - target = scope:local_character - skill = intrigue - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4300.t - left_icon = root - right_icon = scope:local_character - - scope:local_character = { - if = { - limit = { has_character_flag = local_ruler } - if = { - limit = { has_trait = disloyal } - remove_trait = disloyal - } - if = { - limit = { - NOT = { has_trait = loyal } - } - add_trait = loyal - } - } - else = { - root = { add_courtier = scope:local_character } - } - } - if = { - limit = { - can_add_hook = { - type = loyalty_hook - target = scope:local_character - } - } - add_hook = { - type = loyalty_hook - target = scope:local_character - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4300.t - left_icon = root - right_icon = scope:local_character - - scope:local_character = { - if = { - limit = { has_character_flag = local_ruler } - if = { - limit = { has_trait = loyal } - remove_trait = loyal - } - if = { - limit = { - NOT = { has_trait = disloyal } - } - add_trait = disloyal - } - } - } - reverse_add_opinion = { - modifier = respect_opinion - target = scope:local_character - opinion = -30 - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4300.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - duel = { - skill = diplomacy - value = low_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4300.t - left_icon = root - right_icon = scope:local_character - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:local_character - opinion = 30 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4300.t - left_icon = root - right_icon = scope:local_character - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:local_character - opinion = -30 - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4300.c - - small_mandala_piety_reward_effect = yes - - reverse_add_opinion = { - modifier = respect_opinion - target = scope:local_character - opinion = -10 - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - remove_character_flag = local_ruler - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Divine Thief -tgp_east_asia_mandala_task_contract_events.4400 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4400.t - desc = tgp_east_asia_mandala_task_contract_events.4400.desc - theme = mandala - override_background = market - - left_portrait = { - character = root - animation = disapproval - camera = camera_event_scheme_center_look_right - } - center_portrait = { - character = scope:local_character - animation = anger - camera = camera_event_scheme_center - } - right_portrait = { - character = scope:local_character_2 - animation = beg - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - create_character = { - template = criminal_fingers_character - location = scope:ritual_location - culture = scope:ritual_location.culture - age = root.age - faith = scope:ritual_location.faith - gender_female_chance = { - if = { - limit = { - root = { is_male = yes } - } - value = 0 - } - else = { - value = 100 - } - } - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - hidden_effect = { - scope:local_character = { - add_character_flag = created - copy_inheritable_appearance_from = root - add_intrigue_skill = 14 - force_character_skill_recalculation = yes - remove_trait = scaly - remove_trait = dwarf - remove_trait = giant - remove_trait = albino - if = { - limit = { - root = { - has_trait = scaly - } - } - add_trait = scaly - } - if = { - limit = { - root = { - has_trait = dwarf - } - } - add_trait = dwarf - } - if = { - limit = { - root = { - has_trait = giant - } - } - add_trait = giant - } - if = { - limit = { - root = { - has_trait = albino - } - } - add_trait = albino - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4400.a - - big_mandala_piety_reward_effect = yes - big_mandala_legitimacy_reward_effect = yes - - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4400.t - left_icon = scope:local_character - right_icon = scope:ritual_location.county - scope:ritual_location.county = { - add_county_modifier = { - modifier = omnipresent_authority_modifier - years = 20 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4400.t - left_icon = scope:local_character - right_icon = scope:ritual_location.county - - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 10 - } - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4400.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character - NEW_COURT_OWNER = root - } - - duel = { - skill = intrigue - value = low_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4400.t - left_icon = root - right_icon = scope:local_character - if = { - limit = { - can_add_hook = { - type = loyalty_hook - target = scope:local_character - } - } - add_hook = { - type = loyalty_hook - target = scope:local_character - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4400.t - left_icon = root - right_icon = scope:local_character - - scope:local_character = { - add_pressed_claim = root.primary_title - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4400.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Trickster's Trial -tgp_east_asia_mandala_task_contract_events.4500 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4500.t - desc = tgp_east_asia_mandala_task_contract_events.4500.desc - theme = mandala - override_background = market - override_effect_2d = { reference = rain } - - left_portrait = { - character = root - animation = wedding_priest - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = stress - camera = camera_event_scheme_vs_center_positioned_left - } - right_portrait = { - character = scope:local_character_2 - animation = paranoia - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - age >= 45 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - age >= 45 - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - age <= 12 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - age <= 12 - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = peasant_young_child_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4500.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - random = { - chance = { - value = 50 - subtract = root.intrigue - min = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4500.t - left_icon = root - right_icon = scope:ritual_location.county - scope:local_character_2 = { - increase_wounds_effect = { REASON = accident } - } - add_prestige = medium_prestige_loss - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 10 - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4500.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - random = { - chance = { - value = 30 - subtract = root.intrigue - min = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4500.t - left_icon = root - right_icon = scope:ritual_location.county - add_prestige = minor_prestige_loss - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 5 - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4500.c - - small_mandala_piety_reward_effect = yes - random = { - chance = { - value = 15 - subtract = root.intrigue - min = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4500.t - left_icon = root - right_icon = scope:ritual_location.county - scope:ritual_location.county = { - add_county_modifier = { - modifier = upset_peasants_modifier - years = 3 - } - } - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Festival of Reversal -tgp_east_asia_mandala_task_contract_events.4600 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4600.t - desc = tgp_east_asia_mandala_task_contract_events.4600.desc - theme = mandala - override_background = tgp_wedding_ceremony_asia - - left_portrait = { - character = root - animation = pondering - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character_2 - animation = dancing - camera = camera_event_center_pointing_left - } - right_portrait = { - character = scope:local_character - animation = instrument_active - camera = camera_event_scheme_center - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - age <= 12 - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - age <= 12 - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = peasant_young_child_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - scope:local_character = { - add_character_flag = high_noble_clothing - remove_character_flag = peasant_outfit - } - scope:local_character_2 = { - add_character_flag = high_noble_clothing - remove_character_flag = peasant_outfit - add_character_flag = wear_makuta - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4600.a - - add_character_flag = { - flag = peasant_outfit - days = 14 - } - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 14 } - } - - random = { - chance = { - value = 50 - subtract = root.intrigue - min = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4600.t - left_icon = root - add_prestige = major_prestige_loss - add_stress = medium_stress_impact_gain - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4600.b - - add_character_flag = { - flag = need_military_outfit - days = 14 - } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - current_travel_plan = { - hidden_effect = { - resume_travel_plan = yes - } - delay_travel_plan = { days = 14 } - } - - random = { - chance = { - value = 30 - subtract = root.intrigue - min = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4600.t - left_icon = root - add_prestige = minor_prestige_loss - add_stress = minor_stress_impact_gain - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4600.c - - small_mandala_piety_reward_effect = yes - - hidden_effect = { - current_travel_plan ?= { - resume_travel_plan = yes - } - } - - ai_chance = { - base = 40 - } - } - - after = { - hidden_effect = { - scope:task_contract = { complete_task_contract = common_mandala } - } - add_character_flag = recently_completed_mandala_contract - scope:local_character = { - remove_character_flag = high_noble_clothing - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - remove_character_flag = high_noble_clothing - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Goat Oracle -tgp_east_asia_mandala_task_contract_events.4700 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4700.t - desc = tgp_east_asia_mandala_task_contract_events.4700.desc - theme = mandala - override_background = market - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = shepherd_with_sheep - camera = camera_event_scheme_left - } - right_portrait = { - character = scope:local_character_2 - animation = betting - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = criminal_brains_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - hidden_effect = { - scope:local_character = { - add_character_flag = created - add_intrigue_skill = 12 - force_character_skill_recalculation = yes - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4700.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - scope:ritual_location = { - add_province_modifier = { - modifier = goat_oracle_modifier - years = 12 - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4700.b - - small_mandala_piety_reward_effect = yes - - add_to_entourage_court_and_activity_effect = { - CHAR_TO_ADD = scope:local_character_2 - NEW_COURT_OWNER = root - } - - capital_province = { - add_province_modifier = { - modifier = goat_oracle_modifier - years = 12 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4700.c - - small_mandala_piety_reward_effect = yes - - scope:local_character = { - add_stress = major_stress_impact_gain - } - - scope:ritual_location.county = { - add_county_modifier = { - modifier = punished_charlatan_modifier - years = 12 - } - } - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Beasts in the Jungle -tgp_east_asia_mandala_task_contract_events.4800 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4800.t - desc = tgp_east_asia_mandala_task_contract_events.4800.desc - theme = mandala - override_background = wilderness - override_effect_2d = { reference = fog } - - left_portrait = { - character = root - animation = eavesdrop - camera = camera_event_scheme_center - } - center_portrait = { - character = scope:local_character - animation = paranoia - camera = camera_event_scheme_center_forward - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = neighboring_county - } - } - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = neighboring_county - } - } - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4800.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - duel = { - skill = intrigue - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - hidden_effect = { - random_list = { - 50 = { - create_artifact_animal_hide_effect = { - OWNER = root - HUNTER = root - LEGENDARY = no - ANIMAL = flag:none - } - } - 50 = { - create_artifact_animal_trinket_effect = { - OWNER = root - HUNTER = root - LEGENDARY = no - ANIMAL = flag:none - } - } - } - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = root - right_icon = scope:newly_created_artifact - - custom_tooltip = gain_hunt_artifact_tt - show_as_tooltip = { - scope:newly_created_artifact ?= { - set_owner = root - } - } - scope:ritual_location.county = { - add_county_modifier = { - modifier = beast_free_modifier - years = 15 - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = root - right_icon = scope:local_character_2 - - increase_wounds_effect = { REASON = accident } - add_stress = medium_stress_impact_gain - scope:local_character = { - death = { death_reason = death_maimed_by_wild_beast } - } - } - } - } - - stress_impact = { - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - has_trait = craven - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4800.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - if = { - limit = { - scope:neighboring_county.holder != root - } - reverse_add_opinion = { - modifier = annoyed_opinion - target = scope:neighboring_county.holder - opinion = -50 - } - } - - scope:neighboring_county = { - add_county_modifier = { - modifier = brimming_with_beasts_modifier - years = 15 - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4800.c - - small_mandala_piety_reward_effect = yes - - scope:ritual_location.county = { - add_county_modifier = { - modifier = brimming_with_beasts_modifier - years = 15 - } - } - - stress_impact = { - brave = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - has_trait = brave - factor = 0 - } - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# River Naga -tgp_east_asia_mandala_task_contract_events.4900 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.4900.t - desc = tgp_east_asia_mandala_task_contract_events.4900.desc - theme = mandala - override_background = bp3_riverside - override_effect_2d = { reference = fog } - - left_portrait = { - character = scope:local_character - animation = horse_exhausted - camera = camera_event_horse_very_left - } - center_portrait = { - character = scope:entourage_character - animation = jockey_walk - camera = camera_event_horse_very_left - } - right_portrait = { - character = root - animation = horse_surveying - camera = camera_event_horse_very_left - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = neighboring_county - } - } - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - county = { - random_neighboring_county = { - limit = { - holder = { - is_ai = yes - } - } - weight = { - base = 1 - modifier = { - add = 100 - holder = { - NOR = { - top_liege ?= root - top_suzerain ?= root - } - } - } - } - save_scope_as = neighboring_county - } - } - } - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - limit = { - is_physically_able_adult = yes - } - save_scope_as = entourage_character - } - } - if = { - limit = { - NOT = { - exists = scope:entourage_character - } - } - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = entourage_character - after_creation = { - add_character_flag = created - } - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:ritual_location.faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4900.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - duel = { - skill = intrigue - value = high_skill_rating - 5 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4900.t - left_icon = root - right_icon = scope:entourage_character - - add_character_modifier = { - modifier = 6140_pet_modifier - years = 30 - } - } - } - 45 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4900.t - left_icon = root - right_icon = scope:entourage_character - - add_gold = minor_gold_value - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.4900.t - left_icon = scope:local_character - right_icon = scope:entourage_character - - increase_wounds_effect = { REASON = hunting_accident } - - scope:entourage_character = { - death = { death_reason = death_maimed_by_wild_beast } - } - - scope:local_character = { - death = { death_reason = death_maimed_by_wild_beast } - } - - scope:ritual_location = { - add_province_modifier = { - modifier = river_crocodile_god_modifier - years = 25 - } - } - } - } - } - - stress_impact = { - craven = medium_stress_impact_gain - } - - ai_chance = { - base = 40 - modifier = { - has_trait = craven - factor = 0 - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.4900.b - - trigger = { - exists = scope:neighboring_county - } - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.4900.c - - small_mandala_piety_reward_effect = yes - scope:ritual_location = { - add_province_modifier = { - modifier = river_crocodile_god_modifier - years = 25 - } - } - - stress_impact = { - brave = medium_stress_impact_gain - } - - ai_chance = { - base = 100 - modifier = { - has_trait = brave - factor = 0 - } - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:entourage_character = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Promised Land -tgp_east_asia_mandala_task_contract_events.5000 = { - type = character_event - window = big_event_window - title = tgp_east_asia_mandala_task_contract_events.5000.t - desc = tgp_east_asia_mandala_task_contract_events.5000.desc - theme = mandala - override_background = wilderness - override_effect_2d = { reference = fog } - - left_portrait = { - character = root - animation = interested - } - center_portrait = { - character = scope:local_character - animation = survey_staff - camera = camera_event_scheme_right - } - right_portrait = { - character = scope:local_character_2 - animation = stress - camera = camera_event_scheme_far_right - } - immediate = { - # Plus, stop us whilst we're here. - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - capital_county = { save_scope_as = ruler_capital_county } - scope:task_contract.task_contract_location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - if = { - limit = { - NOT = { - exists = scope:ritual_location - } - } - root.location = { - save_scope_as = ritual_location - save_scope_as = background_terrain_scope - } - } - current_travel_plan = { - random_entourage_character = { - save_scope_as = entourage_character - } - } - - - random_list = { - 50 = { - religion:buddhism_religion = { - random_faith = { -# limit = { -# NOR = { -# this = root.faith -# this = faith:dhyana -# this = faith:pundarika -# this = faith:vinaya -# this = faith:avatamsaka -# this = faith:sukhavati -# this = faith:acharya -# this = faith:mantrayana -# this = faith:maitreya -# this = faith:yogacara -# } -# } - save_scope_as = character_faith - } - } - } - 50 = { - religion:hinduism_religion = { - random_faith = { - limit = { - this != root.faith - this != faith:lamaism - } - save_scope_as = character_faith - } - } - } - } - # Local character - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - faith = scope:character_faith - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - faith = scope:character_faith - } - save_scope_as = local_character - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:character_faith - save_scope_as = local_character - after_creation = { - add_character_flag = created - } - } - } - # Local character 2 - if = { - limit = { - any_pool_character = { - province = scope:ritual_location - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - faith = scope:character_faith - this != scope:local_character - } - } - random_pool_character = { - province = scope:ritual_location - limit = { - is_available_healthy_ai_adult = yes - has_no_particular_noble_roots_trigger = yes - faith = scope:character_faith - this != scope:local_character - } - save_scope_as = local_character_2 - } - } - else = { - create_character = { - template = generic_peasant_character - location = scope:ritual_location - culture = scope:ritual_location.culture - faith = scope:character_faith - save_scope_as = local_character_2 - after_creation = { - add_character_flag = created - } - } - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.5000.a - - big_mandala_piety_reward_effect = yes - mandala_legitimacy_reward_effect = yes - - hidden_effect = { - scope:local_character = { - move_to_pool_at = root.capital_province - } - - scope:local_character_2 = { - move_to_pool_at = root.capital_province - } - } - - duel = { - skill = intrigue - value = high_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = scope:local_character - right_icon = scope:local_character_2 - - root.capital_county = { - change_development_level = 2 - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = scope:local_character - right_icon = scope:local_character_2 - - root.capital_county = { - change_development_level = 2 - set_county_faith = scope:local_character.faith - } - } - } - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_east_asia_mandala_task_contract_events.5000.b - - mandala_piety_reward_effect = yes - small_mandala_legitimacy_reward_effect = yes - - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = scope:local_character - right_icon = scope:local_character_2 - - scope:ritual_location = { - if = { - limit = { - province_has_no_holding_trigger = yes - } - begin_create_holding = { - type = temple_citadel_holding - } - } - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -1 - } - send_interface_toast = { - title = tgp_east_asia_mandala_task_contract_events.5000.t - left_icon = scope:local_character - right_icon = scope:local_character_2 - - scope:ritual_location = { - if = { - limit = { - province_has_no_holding_trigger = yes - } - begin_create_holding = { - type = temple_citadel_holding - } - } - } - scope:ritual_location.county = { - set_county_faith = scope:local_character.faith - } - } - } - } - - ai_chance = { - base = 100 - } - } - option = { - name = tgp_east_asia_mandala_task_contract_events.5000.c - - small_mandala_piety_reward_effect = yes - - ai_chance = { - base = 100 - } - } - - after = { - mandala_contract_complete_contract_effect = yes - scope:local_character = { - silent_disappearance_ai_if_created_effect = yes - } - scope:local_character_2 = { - silent_disappearance_ai_if_created_effect = yes - } - } -} diff --git a/events/dlc/tgp/tgp_mentoring_scheme_events.txt b/events/dlc/tgp/tgp_mentoring_scheme_events.txt deleted file mode 100644 index b8e41efb7..000000000 --- a/events/dlc/tgp/tgp_mentoring_scheme_events.txt +++ /dev/null @@ -1,372 +0,0 @@ -######################### -# MENTORING SCHEME EVENTS -######################### -namespace = mentoring_scheme_event - -# Outcome event - Become better at whatever you studied -mentoring_scheme_event.0001 = { - hidden = yes - - immediate = { - send_interface_message = { - type = mentoring_scheme_good_message - title = mentoring_success_message - left_icon = scope:target - - ## Base - # Merit - if = { - limit = { - scope:scheme = { has_variable = mentoring_merit } - } - change_merit = { - value = 10 - multiply = { - value = scope:target.merit_level - subtract = merit_level - } - } - } - # Confucian Education - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_confucian_education } - } - if = { - limit = { - has_trait = confucian_education - } - add_trait_xp = { - trait = confucian_education - value = 2 - } - } - else = { - add_trait = confucian_education - } - } - ## Commander Traits - # Logistician - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_logistician } - } - if = { - limit = { - has_trait = logistician - } - add_trait_xp = { - trait = logistician - value = 5 - } - } - else = { - add_trait = logistician - } - } - # Military Engineer - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_military_engineer } - } - if = { - limit = { - has_trait = military_engineer - } - add_trait_xp = { - trait = military_engineer - value = 5 - } - } - else = { - add_trait = military_engineer - } - } - # Aggressive Attacker - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_aggressive_attacker } - } - if = { - limit = { - has_trait = aggressive_attacker - } - add_trait_xp = { - trait = aggressive_attacker - value = 5 - } - } - else = { - add_trait = aggressive_attacker - } - } - # Unyielding Defender - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_unyielding_defender } - } - if = { - limit = { - has_trait = unyielding_defender - } - add_trait_xp = { - trait = unyielding_defender - value = 5 - } - } - else = { - add_trait = unyielding_defender - } - } - # Forder - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_forder } - } - if = { - limit = { - has_trait = forder - } - add_trait_xp = { - trait = forder - value = 5 - } - } - else = { - add_trait = forder - } - } - # Flexible Leader - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_flexible_leader } - } - if = { - limit = { - has_trait = flexible_leader - } - add_trait_xp = { - trait = flexible_leader - value = 5 - } - } - else = { - add_trait = flexible_leader - } - } - # Desert Warrior - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_desert_warrior } - } - if = { - limit = { - has_trait = desert_warrior - } - add_trait_xp = { - trait = desert_warrior - value = 5 - } - } - else = { - add_trait = desert_warrior - } - } - # Jungle Stalker - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_jungle_stalker } - } - if = { - limit = { - has_trait = jungle_stalker - } - add_trait_xp = { - trait = jungle_stalker - value = 5 - } - } - else = { - add_trait = jungle_stalker - } - } - # Reaver - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_reaver } - } - if = { - limit = { - has_trait = reaver - } - add_trait_xp = { - trait = reaver - value = 5 - } - } - else = { - add_trait = reaver - } - } - # Reckless - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_reckless } - } - if = { - limit = { - has_trait = reckless - } - add_trait_xp = { - trait = reckless - value = 5 - } - } - else = { - add_trait = reckless - } - } - # Holy Warrior - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_holy_warrior } - } - if = { - limit = { - has_trait = holy_warrior - } - add_trait_xp = { - trait = holy_warrior - value = 5 - } - } - else = { - add_trait = holy_warrior - } - } - # Open Terrain Expert - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_open_terrain_expert } - } - if = { - limit = { - has_trait = open_terrain_expert - } - add_trait_xp = { - trait = open_terrain_expert - value = 5 - } - } - else = { - add_trait = open_terrain_expert - } - } - # Rough Terrain Expert - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_rough_terrain_expert } - } - if = { - limit = { - has_trait = rough_terrain_expert - } - add_trait_xp = { - trait = rough_terrain_expert - value = 5 - } - } - else = { - add_trait = rough_terrain_expert - } - } - # Forest Fighter - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_forest_fighter } - } - if = { - limit = { - has_trait = forest_fighter - } - add_trait_xp = { - trait = forest_fighter - value = 5 - } - } - else = { - add_trait = forest_fighter - } - } - # Cautious Leader - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_cautious_leader } - } - if = { - limit = { - has_trait = cautious_leader - } - add_trait_xp = { - trait = cautious_leader - value = 5 - } - } - else = { - add_trait = cautious_leader - } - } - # Organizer - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_organizer } - } - if = { - limit = { - has_trait = organizer - } - add_trait_xp = { - trait = organizer - value = 5 - } - } - else = { - add_trait = organizer - } - } - # Winter Soldier - else_if = { - limit = { - scope:scheme = { has_variable = mentoring_winter_soldier } - } - if = { - limit = { - has_trait = winter_soldier - } - add_trait_xp = { - trait = winter_soldier - value = 5 - } - } - else = { - add_trait = winter_soldier - } - } - } - } -} - -# Outcome event - You did not make progress -mentoring_scheme_event.0002 = { - hidden = yes - - immediate = { - send_interface_message = { - type = mentoring_scheme_bad_message - title = mentoring_failure_message - left_icon = scope:target - - custom_tooltip = mentoring_failure_message_desc - } - } -} diff --git a/events/dlc/tgp/tgp_movement_events.txt b/events/dlc/tgp/tgp_movement_events.txt deleted file mode 100644 index ec7482918..000000000 --- a/events/dlc/tgp/tgp_movement_events.txt +++ /dev/null @@ -1,3699 +0,0 @@ -namespace = tgp_movement_events - -################################################################################### -## By Veronica Pazos -## tgp_movement_events.0001 - Marshal urges you to prepare for Expansion -## tgp_movement_events.0010 - Try to convince an undecided ruler to join your movement -## tgp_movement_events.0020 - Another Advancement member wants to focus on innovations -## tgp_movement_events.0030 - Movement member sends you a letter asking for support -## tgp_movement_events.0040 - Hegemon sends envoy thanking you for being Pro-Song -## tgp_movement_events.0050 - Elder takes interest in you -## tgp_movement_events.0060 - Antagonize another movement -## tgp_movement_events.0070 - Councillor of your highest skill helps you study -## tgp_movement_events.0080 - Family member asks you to focus on your family -## tgp_movement_events.0090 - Movement member wants to make amends -## tgp_movement_events.0100 - Ask a Movement Leader to abandon their Movement -## tgp_movement_events.0110 - Movement member sends you some books -## tgp_movement_events.0120 - Movement member teaches you Confucianism -## tgp_movement_events.0130 - Movement member teaches you the language of the capital -## tgp_movement_events.0140 - Disciple brings you a gift -## tgp_movement_events.0150 - Shinto visitor at court -## tgp_movement_events.0160 - Promise Movement leader to not scheme against each other -################################################################################### - -# Marshal urges you to prepare for Expansion -tgp_movement_events.0001 = { - type = character_event - title = tgp_movement_events.0001.t - desc = tgp_movement_events.0001.desc - left_portrait = { - character = root - animation = interested - } - right_portrait = { - character = scope:marshal - animation = relaxed_spear - } - theme = dynastic_cycle - override_background = { reference = courtyard } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - participant_group_type = expansion_movement - } - NOT = { - situation:dynastic_cycle ?= { - situation_current_phase = situation_dynastic_cycle_phase_stability_expansion - } - } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - if = { - limit = { - exists = cp:councillor_marshal - cp:councillor_marshal = { - is_available_healthy_ai_adult = yes - is_ruler = no - } - } - cp:councillor_marshal = { save_scope_as = marshal } - } - else_if = { - limit = { - any_knight = { - is_available_healthy_ai_adult = yes - is_ruler = no - } - } - ordered_knight = { - limit = { - is_available_healthy_ai_adult = yes - is_ruler = no - } - order_by = martial - save_scope_as = marshal - } - } - else = { - hidden_effect_new_object = { - create_character = { - template = knight - dynasty = none - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = marshal - } - } - } - scope:marshal = { - assign_quirk_effect = yes - add_character_flag = need_military_outfit - hidden_effect = { - if = { - limit = { NOT = { is_courtier_of = root } } - root = { add_courtier = prev } - } - } - } - } - - option = { # Get a military trait - name = tgp_movement_events.0001.aa - trigger = { - vassal_contract_has_flag = celestial_military_appointment - number_of_commander_traits < 3 - } - add_internal_flag = special - reason = celestial_military_appointment - custom_tooltip = { - text = tgp_movement_events.0001.c.tt - give_random_commander_trait_effect = yes - } - stress_impact = { - diligent = medium_stress_impact_loss - brave = medium_stress_impact_loss - lazy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = diligent - has_trait = brave - } - factor = 2 - } - modifier = { - OR = { - has_trait = ambitious - has_trait = lazy - } - factor = 0 - } - } - } - - option = { # Get movement power - name = tgp_movement_events.0001.a - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - } - } - - option = { # Get influence - name = tgp_movement_events.0001.b - change_influence = medium_influence_gain - stress_impact = { - deceitful = medium_stress_impact_loss - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - factor = 2 - } - modifier = { - has_trait = honest - factor = 0 - } - } - } - - option = { # Just some martial XP - name = tgp_movement_events.0001.c - trigger = { - NOT = { vassal_contract_has_flag = celestial_military_appointment } - } - add_martial_lifestyle_xp = medium_lifestyle_xp - stress_impact = { - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_lifestyle = martial_lifestyle - factor = 3 - } - modifier = { - has_trait = ambitious - factor = 0 - } - } - } -} - -# Try to convince an undecided ruler to join your movement -scripted_trigger tpg_movement_events_0010_valid_ruler = { - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - participant_group_type = undecided_movement - } - opinion = { - target = root - value >= 0 - } -} - -scripted_trigger tgp_movement_events_0010_valid_courtier = { - is_available_healthy_ai_adult = yes - is_councillor = no - NOT = { is_close_family_or_spouse_trigger = { CHARACTER = scope:other_ruler } } -} - -tgp_movement_events.0010 = { - type = character_event - title = tgp_movement_events.0010.t - desc = tgp_movement_events.0010.desc - left_portrait = { - character = root - animation = debating - } - right_portrait = { - character = scope:courtier - animation = interested - } - lower_right_portrait = scope:other_ruler - theme = dynastic_cycle - override_background = { reference = courtyard } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - OR = { - participant_group_type = expansion_movement - participant_group_type = advancement_movement - participant_group_type = pro_hegemon_movement - participant_group_type = conservative_movement - } - } - any_ruler = { - tpg_movement_events_0010_valid_ruler = yes - } - } - - immediate = { - assign_quirk_effect = yes - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0010_valid_ruler = yes } - weight = { - base = 1 - modifier = { - is_close_family_of = root - add = 10 - } - modifier = { - is_extended_family_of = root - add = 5 - } - modifier = { - OR = { - has_relation_friend = root - has_relation_lover = root - } - add = 5 - } - } - save_scope_as = other_ruler - if = { - limit = { - any_courtier = { tgp_movement_events_0010_valid_courtier = yes } - } - ordered_courtier = { - limit = { - tgp_movement_events_0010_valid_courtier = yes - } - order_by = diplomacy - set_location = root.location - save_scope_as = courtier - } - } - else = { - hidden_effect_new_object = { - create_character = { - location = root.location - template = diplomacy_court_position_holder_template - gender_female_chance = root_soldier_female_chance - faith = scope:other_ruler.capital_county.faith - culture = scope:other_ruler.capital_county.culture - save_scope_as = courtier - } - } - hidden_effect = { - add_courtier = scope:courtier - } - } - } - } - - option = { # They switch movements - name = tgp_movement_events.0010.a - change_influence = medium_influence_gain - duel = { - skill = diplomacy - value = average_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = tgp_movement_events.0010.a.success - send_interface_toast = { - title = tgp_movement_events.0010.a.success - left_icon = scope:other_ruler - tgp_dynastic_cycle_add_to_movement_effect = { CHAR = scope:other_ruler } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tgp_movement_events.0010.a.failure - send_interface_toast = { - title = tgp_movement_events.0010.a.failure - left_icon = scope:other_ruler - scope:other_ruler = { - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -5 - } - } - } - } - } - stress_impact = { - arrogant = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = arrogant - factor = 2 - } - } - } - - option = { # You get Movement Power - name = tgp_movement_events.0010.b - custom_tooltip = event_increased_personal_movement_power_tt - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_major_value - } - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - } - } - - option = { # Get Merit - name = tgp_movement_events.0010.c - change_merit = medium_merit_gain - scope:other_ruler = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - } - } -} - -# Another Advancement member wants to focus on innovations -scripted_trigger tpg_movement_events_0020_valid_ruler = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - participant_group_type = advancement_movement - } - culture = root.culture -} - -tgp_movement_events.0020 = { - type = character_event - title = tgp_movement_events.0020.t - desc = tgp_movement_events.0020.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arbitrary - has_trait = arrogant - has_trait = ambitious - } - } - animation = dismissal - } - animation = interested - camera = camera_event_crowd - } - right_portrait = { - character = scope:courtier - animation = gongshou - } - lower_right_portrait = scope:other_ruler - theme = dynastic_cycle - override_background = { reference = throne_room } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - participant_group_type = advancement_movement - } - any_ruler = { - tpg_movement_events_0020_valid_ruler = yes - } - } - - immediate = { - culture = { save_scope_as = my_culture } - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0020_valid_ruler = yes } - save_scope_as = other_ruler - if = { - limit = { - any_courtier = { tgp_movement_events_0010_valid_courtier = yes } - } - ordered_courtier = { - limit = { - tgp_movement_events_0010_valid_courtier = yes - } - order_by = diplomacy - set_location = root.location - save_scope_as = courtier - } - } - else = { - hidden_effect_new_object = { - create_character = { - location = root.location - template = diplomacy_court_position_holder_template - gender_female_chance = root_soldier_female_chance - faith = scope:other_ruler.capital_county.faith - culture = scope:other_ruler.capital_county.culture - save_scope_as = courtier - } - } - hidden_effect = { - add_courtier = scope:courtier - } - } - } - scope:courtier = { assign_quirk_effect = yes } - } - - option = { # Get extra bonuses - name = tgp_movement_events.0020.aa - trigger = { - has_trait = architect - NOT = { has_character_modifier = tgp_advancement_innovations_modifier } - } - add_character_modifier = tgp_advancement_innovations_modifier # Forever - scope:my_culture = { - add_fascination_progress = 5 - } - if = { - limit = { - is_ai = no - has_any_nickname = no - } - random = { - chance = 25 - give_nickname = nick_the_wise - } - } - stress_impact = { - diligent = medium_stress_impact_loss - brave = medium_stress_impact_loss - ambitious = medium_stress_impact_gain - lazy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = diligent - has_trait = brave - } - factor = 2 - } - modifier = { - OR = { - has_trait = ambitious - has_trait = lazy - } - factor = 0 - } - } - } - - option = { # Get Innovation Progress - name = tgp_movement_events.0020.a - trigger = { - NOT = { has_trait = architect } - } - scope:my_culture = { - add_fascination_progress = 5 - } - custom_tooltip = event_decrease_movement_power_minor_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_decrease_movement_power_minor_value - } - } - stress_impact = { - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - diligent = medium_stress_impact_loss - humble = medium_stress_impact_loss - } - ai_chance = { - base = 50 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 2 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 0 - } - } - } - - option = { # Focus on movement - name = tgp_movement_events.0020.b - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - diligent = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 0 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 2 - } - } - } - - option = { # Get Merit - name = tgp_movement_events.0020.c - change_merit = medium_merit_gain - stress_impact = { - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_lifestyle = learning_lifestyle - factor = 2 - } - modifier = { - has_trait = diligent - factor = 2 - } - } - } -} - -# Movement member sends you a letter asking for support -scripted_trigger tpg_movement_events_0030_valid_ruler = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - opinion = { - target = root - value >= 0 - } -} - -tgp_movement_events.0030 = { - type = letter_event - opening = tgp_movement_events.0030.opening - desc = tgp_movement_events.0030.desc - sender = scope:other_ruler - - cooldown = { years = 5 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - exists = top_participant_group:dynastic_cycle - any_ruler = { tpg_movement_events_0030_valid_ruler = yes } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0030_valid_ruler = yes } - weight = { - base = 1 - modifier = { - has_relation_potential_friend = root - add = 25 - } - modifier = { - is_close_family_of = root - add = 10 - } - modifier = { - is_extended_family_of = root - add = 5 - } - modifier = { - OR = { - has_relation_friend = root - has_relation_lover = root - has_relation_disciple = root - } - add = 5 - } - } - save_scope_as = other_ruler - } - } - - option = { # Sure - name = tgp_movement_events.0030.a - change_merit = medium_merit_gain - scope:other_ruler = { change_merit = medium_merit_gain } - progress_towards_friend_effect = { - REASON = friend_same_movement_reason - CHARACTER = scope:other_ruler - OPINION = default_friend_opinion - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = gregarious - has_trait = generous - } - factor = 2 - } - } - } - - option = { # Nah - name = tgp_movement_events.0030.b - change_influence = major_influence_gain - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = deceitful - has_trait = callous - has_trait = arrogant - } - factor = 2 - } - } - } -} - -# Hegemon sends envoy thanking you for being Pro-Song -scripted_trigger tgp_movement_events_0040_valid_courtier = { - is_available_healthy_ai_adult = yes - is_councillor = no - NOT = { is_close_family_or_spouse_trigger = { CHARACTER = scope:hegemon } } - can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:hegemon } -} - -tgp_movement_events.0040 = { - type = character_event - title = tgp_movement_events.0040.t - desc = tgp_movement_events.0040.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arbitrary - has_trait = arrogant - has_trait = ambitious - } - } - animation = dismissal - } - animation = interested - camera = camera_event_left_crowning_observation - } - right_portrait = { - character = scope:courtier - animation = gongshou_with_hu - } - lower_right_portrait = scope:hegemon - theme = dynastic_cycle - override_background = { reference = throne_room } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - participant_group_type = pro_hegemon_movement - } - exists = title:h_china.holder # There's an Hegemon - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - title:h_china.holder = { - save_scope_as = hegemon - if = { - limit = { - any_courtier = { tgp_movement_events_0040_valid_courtier = yes } - } - ordered_courtier = { - limit = { - tgp_movement_events_0040_valid_courtier = yes - } - order_by = diplomacy - set_location = root.location - save_scope_as = courtier - } - } - else = { - hidden_effect_new_object = { - create_character = { - location = root.location - template = diplomacy_court_position_holder_template - gender_female_chance = root_soldier_female_chance - faith = scope:hegemon.capital_county.faith - culture = scope:hegemon.capital_county.culture - save_scope_as = courtier - } - } - hidden_effect = { - add_courtier = scope:courtier - } - } - } - } - - option = { # Yippieeee - name = tgp_movement_events.0040.a - custom_tooltip = event_increase_movement_power_major_effect_tooltip - change_influence = minor_influence_gain - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_major_value - } - } - stress_impact = { - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - diligent = medium_stress_impact_loss - humble = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 2 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 0 - } - } - } - - option = { # I will always be loyal! - name = tgp_movement_events.0040.b - custom_tooltip = { - text = dynastic_cycle_cannot_leave_movement_tt - set_variable = { - name = dynastic_cycle_cannot_leave_movement_var - years = 15 - } - } - add_character_modifier = { - modifier = tgp_loyal_subject_modifier - years = 15 - } - stress_impact = { - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - diligent = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 0 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 2 - } - } - } - - option = { # Please please please tell everyone - name = tgp_movement_events.0040.c - add_prestige = medium_prestige_gain - every_vassal = { - limit = { has_vassal_stance = courtly } - custom = every_courtly_vassal - add_opinion = { - target = root - modifier = admiration_opinion - opinion = 15 - } - } - stress_impact = { - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_lifestyle = learning_lifestyle - factor = 2 - } - modifier = { - has_trait = diligent - factor = 2 - } - } - } -} - -# Elder takes interest in you -scripted_trigger tgp_movement_events_0050_valid_elder = { - is_available_healthy_ai_adult = yes - government_allows = merit - merit_level >= root.merit_level - OR = { - merit_level >= merit_level_expected_empire_value - has_trait = confucian_education - } - top_liege = root.top_liege # Someone that makes sense - NOR = { - this = root.liege - this = root.top_liege - } -} - -tgp_movement_events.0050 = { - type = character_event - title = tgp_movement_events.0050.t - desc = { - desc = tgp_movement_events.0050.desc.intro - first_valid = { - triggered_desc = { - trigger = { highest_skill = diplomacy } - desc = tgp_movement_events.0050.desc.diplomacy - } - triggered_desc = { - trigger = { highest_skill = stewardship } - desc = tgp_movement_events.0050.desc.stewardship - } - triggered_desc = { - trigger = { highest_skill = intrigue } - desc = tgp_movement_events.0050.desc.intrigue - } - triggered_desc = { - trigger = { highest_skill = learning } - desc = tgp_movement_events.0050.desc.learning - } - triggered_desc = { - trigger = { highest_skill = martial } - desc = tgp_movement_events.0050.desc.martial - } - } - desc = tgp_movement_events.0050.desc.outro - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = content - has_trait = craven - stress_level >= 1 - } - } - animation = worry - } - animation = interested - } - right_portrait = { - character = scope:new_elder - animation = debating - } - lower_left_portrait = { - trigger = { exists = scope:old_elder } - character = scope:old_elder - } - theme = merit - override_background = { reference = study } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_allows = merit # Not Celestial specific - OR = { # You're good or a player - AND = { - is_ai = no - has_any_decent_skill_rating = yes - } - has_any_high_skill_rating = yes - } - NOT = { any_relation = { type = disciple } } # You're not an elder yourself - OR = { # You don't have an elder or they're pretty bad - NOT = { any_relation = { type = elder } } - any_relation = { - type = elder - OR = { - merit_level <= root.merit_level - merit_level <= merit_level_expected_empire_value - } - } - } - any_ruler = { - tgp_movement_events_0050_valid_elder = yes - } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - if = { - limit = { - any_relation = { type = elder } - } - random_relation = { - type = elder - save_scope_as = old_elder - } - } - random_ruler = { - limit = { tgp_movement_events_0050_valid_elder = yes } - weight = { - base = 1 - modifier = { - has_same_highest_skill = { CHARACTER = root } - add = 100 - } - } - save_scope_as = new_elder - } - } - - option = { # Get a new Elder - name = tgp_movement_events.0050.a - if = { - limit = { exists = scope:old_elder } - remove_relation_disciple = scope:old_elder - scope:old_elder = { - add_opinion = { - target = root - modifier = disappointed_opinion - opinion = -10 - } - } - } - scope:new_elder = { set_relation_disciple = root } - change_merit = medium_merit_gain - stress_impact = { - ambitious = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - diligent = medium_stress_impact_loss - humble = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 2 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 0 - } - } - } - - option = { # I will ALWAYS be loyal to old_elder - name = tgp_movement_events.0050.b - trigger = { exists = scope:old_elder } - add_prestige = minor_prestige_gain - scope:old_elder = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 20 - } - } - if = { - limit = { NOT = { has_trait = loyal } } - add_trait = loyal - } - stress_impact = { - ambitious = medium_stress_impact_loss - arrogant = medium_stress_impact_loss - diligent = medium_stress_impact_gain - humble = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = arrogant - } - factor = 0 - } - modifier = { - OR = { - has_trait = diligent - has_trait = humble - } - factor = 2 - } - } - } - - option = { # I need to focus on STUDYING - name = tgp_movement_events.0050.c - gain_appropriate_lifestyle_major_xp_effect = yes - stress_impact = { - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_lifestyle = learning_lifestyle - factor = 2 - } - modifier = { - has_trait = diligent - factor = 2 - } - } - } -} - -# Antagonize another movement -scripted_trigger tgp_movement_events_0060_valid_rival = { - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { - participant_group_type = undecided_movement - } - trigger_if = { - limit = { - exists = root.top_participant_group:dynastic_cycle - } - this != root.top_participant_group:dynastic_cycle - } - } - opinion = { - target = root - value <= -10 - } -} - -tgp_movement_events.0060 = { - type = character_event - title = tgp_movement_events.0060.t - desc = tgp_movement_events.0060.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = calm - } - } - animation = stress - } - animation = scheme - } - lower_right_portrait = { - character = scope:rival - } - theme = dynastic_cycle - override_background = { reference = study } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - any_ruler = { - tgp_movement_events_0060_valid_rival = yes - } - } - - immediate = { - assign_quirk_effect = yes - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tgp_movement_events_0060_valid_rival = yes } - weight = { - base = 1 - modifier = { - OR = { - has_relation_potential_rival = root - has_relation_rival = root - } - add = 25 - } - modifier = { - is_any_movement_leader = yes - add = 15 - } - } - top_participant_group:dynastic_cycle ?= { - save_scope_as = rival_movement - } - save_scope_as = rival - } - } - - option = { # You convince everyone - name = tpg_movement_events.0060.aa - trigger = { - has_focus_or_focus_trait_trigger = { FOCUS = intrigue_skulduggery_focus } - } - reason = lifestyle_focus - add_internal_flag = special - custom_tooltip = tgp_movement_events.0060.a.rival_tt - scope:rival_movement = { - event_change_movement_power_effect = { - VALUE = event_decrease_movement_power_medium_value - } - } - custom_tooltip = event_increase_movement_power_major_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_major_value - } - } - add_intrigue_lifestyle_xp = medium_lifestyle_xp - stress_impact = { - deceitful = major_stress_impact_loss - honest = major_stress_impact_gain - forgiving = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - factor = 2 - } - modifier = { - OR = { - has_trait = honest - has_trait = forgiving - } - factor = 0 - } - } - } - - option = { # Scheme against them - name = tgp_movement_events.0060.a - if = { - limit = { - NOT = { - any_scheme = { - is_hostile = yes - scheme_target_character = scope:rival - } - } - } - start_scheme = { - type = challenge_status - target_character = scope:rival - } - custom_tooltip = { - text = tgp_movement_events.0060.a.tt - random_scheme = { - limit = { - scheme_type = challenge_status - scheme_target_character = scope:rival - } - add_scheme_modifier = { type = extra_success_chance_modifier } - } - } - } - else = { - random_scheme = { - limit = { - is_hostile = yes - scheme_target_character = scope:guest - } - add_scheme_modifier = { - type = massive_extra_success_chance_modifier - } - } - } - custom_tooltip = tgp_movement_events.0060.a.rival_tt - scope:rival_movement = { - event_change_movement_power_effect = { - VALUE = event_decrease_movement_power_medium_value - } - } - stress_impact = { - deceitful = medium_stress_impact_loss - vengeful = medium_stress_impact_loss - honest = medium_stress_impact_gain - compassionate = medium_stress_impact_gain - forgiving = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = deceitful - has_trait = vengeful - } - factor = 2 - } - modifier = { - OR = { - has_trait = honest - has_trait = compassionate - has_trait = forgiving - } - factor = 0 - } - } - } - - option = { # Focus on getting Movement Power - name = tgp_movement_events.0060.b - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - deceitful = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - modifier = { - has_trait = deceitful - factor = 0 - } - } - } - - option = { # Forgive and forget - name = tgp_movement_events.0060.c - if = { - limit = { - faith = { - OR = { - trait_is_virtue = calm - trait_is_virtue = compassionate - } - } - } - add_piety = medium_piety_gain - if = { - limit = { exists = cp:councillor_court_chaplain } - cp:councillor_court_chaplain = { - add_opinion = { - target = root - modifier = pious_opinion - opinion = 15 - } - } - } - } - else = { - add_prestige = minor_prestige_gain - } - stress_impact = { - forgiving = major_stress_impact_loss - callous = major_stress_impact_gain - vengeful = major_stress_impact_gain - deceitful = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = forgiving - factor = 2 - } - modifier = { - OR = { - has_trait = callous - has_trait = vengeful - has_trait = deceitful - } - factor = 2 - } - } - } -} - -# Councillor of your highest skill helps you study -scripted_trigger tgp_movement_events_0070_valid_councillor = { - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - has_same_highest_skill = { CHARACTER = root } - opinion = { - target = root - value >= 10 - } -} - -tgp_movement_events.0070 = { - type = character_event - title = tgp_movement_events.0070.t - desc = tgp_movement_events.0070.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = lazy - has_trait = intellect_bad - } - } - animation = stress - } - animation = interested - } - right_portrait = { - character = scope:councillor - animation = happy_teacher - } - theme = merit - override_background = { reference = study } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - any_councillor = { tgp_movement_events_0070_valid_councillor = yes } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_councillor = { - limit = { tgp_movement_events_0070_valid_councillor = yes } - weight = { - base = 1 - modifier = { - has_relation_potential_friend = root - add = 5 - } - } - assign_quirk_effect = yes - save_scope_as = councillor - } - } - - option = { # Become friends - name = tgp_movement_events.0070.a - progress_towards_friend_effect = { - REASON = friend_studied_together - CHARACTER = scope:councillor - OPINION = default_friend_opinion - } - stress_impact = { - base = medium_stress_impact_loss - gregarious = medium_stress_impact_loss - lazy = medium_stress_impact_loss - diligent = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = gregarious - has_trait = lazy - } - factor = 2 - } - modifier = { - has_trait = diligent - factor = 0 - } - } - } - - option = { # Encourage _them_ to focus on their job - name = { - trigger = { - scope:councillor = { is_spouse_of = root } - } - text = tgp_movement_events.0070.b.spouse - } - name = { - trigger = { - NOT = { scope:councillor = { is_spouse_of = root } } - } - text = tgp_movement_events.0070.b.councillor - } - if = { - limit = { scope:councillor = { is_spouse_of = root } } - scope:councillor = { add_highest_skill_two_points_effect = yes } - } - else = { - scope:councillor = { - councillor_increase_relevant_skill_two_points_effect = yes - } - } - stress_impact = { - callous = medium_stress_impact_loss - lazy = medium_stress_impact_loss - diligent = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = callous - has_trait = lazy - } - factor = 2 - } - modifier = { - has_trait = diligent - factor = 0 - } - } - } - - option = { # Study - name = tgp_movement_events.0070.c - add_highest_skill_point_effect = yes - scope:councillor = { add_highest_skill_point_effect = yes } - stress_impact = { - base = medium_stress_impact_gain - diligent = medium_stress_impact_loss - lazy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_lifestyle = learning_lifestyle - has_trait = diligent - } - factor = 2 - } - modifier = { - has_trait = lazy - factor = 0 - } - } - } -} - -# Family member asks you to focus on your family -scripted_trigger tgp_movement_events_0080_valid_family_member = { - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - house = root.house # Just in case - opinion = { - target = root - value >= 10 - } - gold >= major_gold_value - NOT = { has_trait = greedy } - OR = { # Someone that'd want you to focus on Family - top_participant_group:dynastic_cycle ?= { - participant_group_type = conservative_movement - } - influence_level >= 2 - prestige_level >= 2 - has_trait = ambitious - has_trait = arrogant - has_trait = generous - has_relation_friend = root - has_relation_lover = root - } -} - -tgp_movement_events.0080 = { - type = character_event - title = tgp_movement_events.0080.t - desc = tgp_movement_events.0080.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = humble - has_trait = content - has_trait = lazy - } - } - animation = dismissal - } - animation = interested - } - right_portrait = { - character = scope:family_member - animation = fanning - } - theme = administrative - override_background = { reference = relaxing_room } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - any_close_or_extended_family_member = { - tgp_movement_events_0080_valid_family_member = yes - } - } - - weight_multiplier = { - base = 1 - modifier = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = conservative_movement - } - add = 1 - } - } - - immediate = { - save_scope_as = root_scope - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_close_or_extended_family_member = { - limit = { tgp_movement_events_0080_valid_family_member = yes } - weight = { - base = 1 - modifier = { - OR = { - has_relation_potential_friend = root - has_relation_friend = root - } - add = 5 - } - } - assign_quirk_effect = yes - save_scope_as = family_member - } - domicile ?= { - set_variable = { - name = subsidised_estate_var - value = 3 - } - } - } - - option = { # Get extra stuff if you are a Conservative - name = tgp_movement_events.0080.aa - trigger = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = conservative_movement - } - } - add_internal_flag = special - reason = movement - add_character_modifier = tgp_subsidised_estate_buildings_modifier - scope:family_member = { - remove_short_term_gold = medium_gold_value - } - add_prestige = medium_prestige_gain - stress_impact = { - generous = medium_stress_impact_gain - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - factor = 2 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } - - option = { # Thank you mate - name = tgp_movement_events.0080.a - trigger = { - NOT = { - top_participant_group:dynastic_cycle ?= { - participant_group_type = conservative_movement - } - } - } - add_character_modifier = tgp_subsidised_estate_buildings_modifier - scope:family_member = { - remove_short_term_gold = medium_gold_value - } - - stress_impact = { - generous = medium_stress_impact_gain - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = gregarious - has_trait = lazy - } - factor = 2 - } - modifier = { - has_trait = diligent - factor = 0 - } - } - } - - option = { # This is not the way, focus on our movement - name = tpg_movement_events.0080.b - change_influence = medium_influence_gain - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - scope:family_member = { - remove_short_term_gold = medium_gold_value - add_opinion = { - target = root - modifier = annoyed_opinion - opinion = -10 - } - } - - stress_impact = { - generous = medium_stress_impact_gain - humble = medium_stress_impact_gain - content = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = callous - has_trait = lazy - } - factor = 2 - } - modifier = { - has_trait = diligent - factor = 0 - } - } - } - - option = { # Keep the money, bestie - name = tgp_movement_events.0080.c - progress_towards_friend_effect = { - REASON = friend_rejected_funds - CHARACTER = scope:family_member - OPINION = default_friend_opinion - } - if = { - limit = { - faith = { - OR = { - trait_is_virtue = generous - trait_is_virtue = humble - } - } - } - add_piety = medium_piety_gain - every_vassal = { - limit = { has_vassal_stance = zealot } - custom = every_zealot_vassal - add_opinion = { - target = root - modifier = pious_opinion - opinion = 5 - } - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - generous = medium_stress_impact_loss - content = medium_stress_impact_loss - humble = medium_stress_impact_loss - arrogant = major_stress_impact_gain - greedy = major_stress_impact_gain - avaricious = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_lifestyle = learning_lifestyle - has_trait = diligent - } - factor = 2 - } - modifier = { - has_trait = lazy - factor = 0 - } - } - } -} - -# Movement member wants to make ammnds -scripted_trigger tpg_movement_events_0090_valid_ruler = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - opinion = { - target = root - value <= -10 - } - NOT = { has_trait = vengeful } # They would NEVER -} - -tgp_movement_events.0090 = { - type = character_event - title = tgp_movement_events.0090.t - desc = tgp_movement_events.0090.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = callous - has_trait = vengeful - has_trait = wrathful - } - } - animation = dismissal - } - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = brave - } - } - animation = laugh - } - animation = japanese_war_fan - camera = camera_event_left_pointing_right - } - right_portrait = { - character = scope:courtier - animation = gongshou - } - lower_right_portrait = scope:other_ruler - theme = dynastic_cycle - override_background = { reference = garden } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - situation:dynastic_cycle ?= { - NOT = { situation_current_phase = situation_dynastic_cycle_phase_chaos } - } - any_ruler = { tpg_movement_events_0090_valid_ruler = yes } - } - - weight_multiplier = { - base = 1 - modifier = { - any_relation = { type = rival } - add = 1 - } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0090_valid_ruler = yes } - weight = { - base = 1 - modifier = { - has_relation_nemesis = root - add = 100 - } - modifier = { - has_relation_rival = root - add = 100 - } - modifier = { - any_memory = { - has_memory_category = negative - any_memory_participant = { this = root } - } - add = 50 - } - modifier = { - has_trait = forgiving - add = 10 - } - modifier = { - opinion = { - target = root - value < -25 - } - add = 5 - } - modifier = { - opinion = { - target = root - value < -50 - } - add = 5 - } - } - assign_quirk_effect = yes - save_scope_as = other_ruler - if = { - limit = { - any_courtier = { tgp_movement_events_0010_valid_courtier = yes } - } - ordered_courtier = { - limit = { - tgp_movement_events_0010_valid_courtier = yes - } - order_by = diplomacy - set_location = root.location - save_scope_as = courtier - } - } - else = { - hidden_effect_new_object = { - create_character = { - location = root.location - template = diplomacy_court_position_holder_template - gender_female_chance = root_soldier_female_chance - faith = scope:other_ruler.capital_county.faith - culture = scope:other_ruler.capital_county.culture - save_scope_as = courtier - } - } - hidden_effect = { - add_courtier = scope:courtier - } - } - } - } - - option = { # They should KNEEL - name = tgp_movement_events.0090.aa - trigger = { - OR = { - has_trait = callous - has_trait = vengeful - has_trait = wrathful - } - } - add_dread = medium_dread_gain - scope:other_ruler = { - add_opinion = { - target = root - modifier = humiliated_opinion - opinion = -15 - } - } - every_vassal = { - limit = { has_vassal_stance = belligerent } - custom = every_belligerent_vassal - add_opinion = { - target = root - modifier = respect_opinion - opinion = 10 - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - } - } - - option = { # Nah - name = tgp_movement_events.0090.a - change_influence = major_influence_gain - stress_impact = { - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - } - } - - option = { # I do this ONLY for our party - name = tgp_movement_events.0090.b - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - stress_impact = { - deceitful = medium_stress_impact_loss - honest = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - factor = 2 - } - modifier = { - has_trait = honest - factor = 0 - } - } - } - - option = { # Apology accepted - name = tgp_movement_events.0090.c - if = { - limit = { has_relation_nemesis = scope:other_ruler } - remove_relation_nemesis = scope:other_ruler - } - else_if = { - limit = { has_relation_rival = scope:other_ruler } - remove_relation_rival = scope:other_ruler - } - progress_towards_friend_effect = { - REASON = friend_same_movement_reason - CHARACTER = scope:other_ruler - OPINION = default_friend_opinion - } - stress_impact = { - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_lifestyle = martial_lifestyle - factor = 3 - } - modifier = { - has_trait = ambitious - factor = 0 - } - } - } -} - -# Ask a Movement Leader to abandon their Movement -scripted_trigger tgp_movement_events_0100_valid_rival = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - is_any_movement_leader = yes - NOR = { - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - top_participant_group:dynastic_cycle ?= { participant_group_type = undecided_movement } - } -} - -scripted_trigger tgp_movement_events_0100_valid_spymaster = { - is_available_healthy_ai_adult = yes - intrigue >= decent_skill_rating -} - -scripted_effect tgp_movement_events_0100_remove_from_movement_effect = { - custom_tooltip = tgp_movement_events_0100_remove_from_movement_effect_tt - set_variable = { - name = movement_member - value = flag:undecided - } - scope:rival_movement = { - set_variable = { - name = movement_power - value = movement_power_value - } - } -} - -tgp_movement_events.0100 = { - type = character_event - title = tgp_movement_events.0100.t - desc = tgp_movement_events.0100.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = compassionate - has_trait = forgiving - has_trait = content - } - } - animation = worry - } - animation = spymaster - camera = camera_event_very_left - } - right_portrait = { - character = scope:spymaster - animation = scheme - camera = camera_event_very_right - } - lower_right_portrait = scope:rival - theme = dynastic_cycle - override_background = { reference = corridor_night } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - situation:dynastic_cycle = { - any_situation_participant = { tgp_movement_events_0100_valid_rival = yes } - } - OR = { # You are important enough - is_any_movement_leader = yes - influence_level >= 4 - merit_level >= 4 - } - OR = { # You have someone that can do the job - exists = cp:councillor_spymaster - any_courtier = { tgp_movement_events_0100_valid_spymaster = yes } - } - } - - weight_multiplier = { - base = 1 - modifier = { - any_relation = { type = rival } - add = 1 - } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - if = { - limit = { - exists = cp:councillor_spymaster - } - cp:councillor_spymaster = { save_scope_as = spymaster } - } - else = { - ordered_courtier = { - limit = { tgp_movement_events_0100_valid_spymaster = yes } - order_by = intrigue - save_scope_as = spymaster - } - } - scope:spymaster = { assign_quirk_effect = yes } - situation:dynastic_cycle = { - random_situation_participant = { - limit = { tgp_movement_events_0100_valid_rival = yes } - weight = { - base = 1 - modifier = { - has_relation_nemesis = root - add = 100 - } - modifier = { - has_relation_rival = root - add = 100 - } - modifier = { - any_memory = { - has_memory_category = negative - any_memory_participant = { this = root } - } - add = 50 - } - modifier = { - has_trait = forgiving - add = 10 - } - modifier = { - opinion = { - target = root - value < -25 - } - add = 5 - } - modifier = { - opinion = { - target = root - value < -50 - } - add = 5 - } - } - assign_quirk_effect = yes - save_scope_as = rival - top_participant_group:dynastic_cycle = { save_scope_as = rival_movement } - } - } - } - - option = { # If you have a hook/secret on them, insta win - name = tgp_movement_events.0100.aa - trigger = { - OR = { - has_hook = scope:rival - scope:rival = { - any_secret = { - is_known_by = root - } - } - } - } - add_internal_flag = special - reason = hook - remove_hook = { target = scope:rival } - scope:rival = { - tgp_movement_events_0100_remove_from_movement_effect = yes - } - } - - option = { # Ask them to leave - name = tgp_movement_events.0100.a - change_influence = major_influence_loss - scope:spymaster = { - duel = { - skill = intrigue - target = scope:rival - 25 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = tgp_movement_events.0100.a.success - root = { - send_interface_toast = { - title = tgp_movement_events.0100.a.success - left_icon = scope:rival - scope:rival = { - tgp_movement_events_0100_remove_from_movement_effect = yes - } - } - } - } - 75 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tgp_movement_events.0100.a.failure - root = { - send_interface_toast = { - title = tgp_movement_events.0100.a.failure - left_icon = root - add_prestige = medium_prestige_loss - } - } - } - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - deceitful = medium_stress_impact_loss - honest = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = deceitful - } - factor = 2 - } - modifier = { - has_trait = honest - factor = 0 - } - } - } - - option = { # Pay them to leave - name = tgp_movement_events.0100.b - pay_short_term_gold = { - target = scope:rival - gold = major_gold_value - } - duel = { - skills = { diplomacy intrigue } - target = scope:rival - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - scope:rival = { has_trait = greedy } - add = 25 - } - modifier = { - scope:rival = { gold <= medium_gold_value } - add = 10 - } - desc = tgp_movement_events.0100.a.success - send_interface_toast = { - title = tgp_movement_events.0100.a.success - left_icon = scope:rival - scope:rival = { - tgp_movement_events_0100_remove_from_movement_effect = yes - } - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tgp_movement_events.0100.a.failure - send_interface_toast = { - title = tgp_movement_events.0100.a.failure - left_icon = root - root = { add_prestige = medium_prestige_loss } - } - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - honest = major_stress_impact_gain - greedy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = deceitful - factor = 2 - } - modifier = { - OR = { - gold <= massive_gold_value - has_trait = greedy - has_trait = honest - } - factor = 0 - } - } - } - - option = { # Just undermine them - name = tgp_movement_events.0100.c - custom_tooltip = tgp_movement_events.0060.a.rival_tt - scope:rival_movement = { - event_change_movement_power_effect = { - VALUE = event_decrease_movement_power_medium_value - } - } - stress_impact = { - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 0 - } - } - } -} - -# Movement member sends you some books -scripted_trigger tpg_movement_events_0110_valid_ruler = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - trigger_if = { - limit = { - exists = top_participant_group:dynastic_cycle - } - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - } - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - learning >= decent_skill_rating - opinion = { - target = root - value >= 0 - } -} - -tgp_movement_events.0110 = { - type = letter_event - opening = tgp_movement_events.0110.opening - desc = tgp_movement_events.0110.desc - sender = scope:other_ruler - - cooldown = { years = 5 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - exists = top_participant_group:dynastic_cycle - any_ruler = { tpg_movement_events_0110_valid_ruler = yes } - } - - immediate = { - save_scope_as = root_scope - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0110_valid_ruler = yes } - weight = { - base = 1 - modifier = { - has_relation_potential_friend = root - add = 25 - } - modifier = { - is_close_family_of = root - add = 10 - } - modifier = { - is_extended_family_of = root - add = 5 - } - modifier = { - OR = { - has_relation_friend = root - has_relation_lover = root - has_relation_disciple = root - } - add = 5 - } - } - save_scope_as = other_ruler - hidden_effect_new_object = { - create_artifact_book_effect = { - OWNER = scope:other_ruler - CREATOR = scope:other_ruler - SET_SUBJECT = flag:no - SET_TOPIC = flag:no - } - } - } - hidden_effect = { - scope:newly_created_artifact = { - set_artifact_description = artifact_movement_gift_desc - set_artifact_rarity = masterwork - } - } - } - - option = { # So nice of you! - name = tgp_movement_events.0110.a - gain_appropriate_lifestyle_medium_xp_effect = yes - progress_towards_friend_effect = { - REASON = friend_sent_books_reason - CHARACTER = scope:other_ruler - OPINION = default_friend_opinion - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = gregarious - has_trait = diligent - } - factor = 2 - } - } - } - - option = { # I'll put it in my library - name = tgp_movement_events.0110.b - add_prestige = medium_prestige_gain - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = arrogant - has_trait = lazy - } - factor = 2 - } - } - } - - after = { - scope:newly_created_artifact = { set_owner = root } - } -} - -# Movement member teaches you Confucianism -scripted_trigger tpg_movement_events_0120_valid_ruler = { - this != root - is_ai = yes - is_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - has_trait = confucian_education - opinion = { - target = root - value >= 0 - } -} - -scripted_effect tpg_movement_events_0120_confucian_education_effect = { - if = { - limit = { - NOT = { has_trait = confucian_education } - } - add_trait_force_tooltip = confucian_education - } - else = { - add_trait_xp = { - trait = confucian_education - value = lifestyle_confucian_education_xp_gain_medium_value - } - } -} - -scripted_effect tpg_movement_events_0120_lifestyle_reveler_effect = { - if = { - limit = { - NOT = { has_trait = lifestyle_reveler } - } - random = { - chance = 25 - add_trait_force_tooltip = lifestyle_reveler - } - } - else = { - add_trait_xp = { - trait = lifestyle_reveler - value = lifestyle_confucian_education_xp_gain_medium_value - } - } -} - -tgp_movement_events.0120 = { - type = activity_event - title = tgp_movement_events.0120.t - desc = tgp_movement_events.0120.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = callous - } - } - animation = eyeroll - } - triggered_animation = { - trigger = { - OR = { - has_trait = lazy - learning <= decent_skill_rating - } - NOT = { has_trait = diligent } - } - animation = boredom - } - animation = drink - } - right_portrait = { - character = scope:other_ruler - animation = debating - } - theme = feast_activity - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - exists = top_participant_group:dynastic_cycle - OR = { # You don't have the trait or you don't have the trait maxed out - NOT = { has_trait = confucian_education } - has_trait_xp = { trait = confucian_education value <= 75 } - } - involved_activity = { - any_attending_character = { tpg_movement_events_0120_valid_ruler = yes } - } - } - - immediate = { - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - involved_activity = { - save_scope_as = activity - activity_host = { save_scope_as = host } - random_attending_character = { - limit = { tpg_movement_events_0120_valid_ruler = yes } - weight = { - base = 1 - modifier = { - has_relation_potential_friend = root - add = 25 - } - modifier = { - is_close_family_of = root - add = 10 - } - modifier = { - is_extended_family_of = root - add = 5 - } - modifier = { - OR = { - has_relation_friend = root - has_relation_lover = root - has_relation_disciple = root - } - add = 5 - } - } - save_scope_as = other_ruler - assign_quirk_effect = yes - } - } - } - - option = { # Teach me! - name = tgp_movement_events.0120.a - tpg_movement_events_0120_confucian_education_effect = yes - stress_impact = { - diligent = major_stress_impact_loss - arrogant = major_stress_impact_gain - lazy = major_stress_impact_gain - lifestyle_reveler = major_stress_impact_gain - drunkard = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = arrogant - has_trait = lifestyle_reveler - has_trait = lazy - has_trait = drunkard - } - factor = 0 - } - modifier = { - has_trait = diligent - factor = 2 - } - } - } - - option = { # We are here to spread the word of my_movement - name = tgp_movement_events.0120.b - custom_tooltip = event_increase_movement_power_minor_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_minor_value - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - diligent = medium_stress_impact_gain - lifestyle_reveler = major_stress_impact_gain - drunkard = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - modifier = { - OR = { - has_trait = diligent - has_trait = lifestyle_reveler - has_trait = drunkard - } - factor = 0 - } - } - } - - option = { # This is a FEAST - name = tgp_movement_events.0120.c - tpg_movement_events_0120_lifestyle_reveler_effect = yes - scope:activity = { - every_attending_character = { - limit = { NOT = { this = root } } - custom = custom.every_attending_character - add_opinion = { - target = root - modifier = amused_opinion - opinion = 5 - } - } - } - stress_impact = { - base = medium_stress_impact_loss - lifestyle_reveler = medium_stress_impact_loss - drunkard = medium_stress_impact_loss - diligent = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = lifestyle_reveler - has_trait = drunkard - } - factor = 2 - } - modifier = { - has_trait = diligent - factor = 0 - } - } - } -} - -# Movement member teaches you the language of the capital -scripted_trigger tpg_movement_events_0130_valid_ruler = { - this != root - is_ai = yes - is_adult = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - opinion = { - target = root - value >= 0 - } - knows_language_of_culture = top_liege.capital_county.culture # They are of the same culture -} - -scripted_trigger tgp_movement_events_0130_valid_courtier = { - is_available_healthy_ai_adult = yes - is_councillor = no - NOT = { is_close_family_or_spouse_trigger = { CHARACTER = scope:other_ruler } } - knows_language_of_culture = scope:capital_culture -} - -tgp_movement_events.0130 = { - type = character_event - title = tgp_movement_events.0130.t - desc = tgp_movement_events.0130.desc - left_portrait = { - character = root - triggered_animation = { - trigger = { - OR = { - has_trait = arrogant - has_trait = callous - } - } - animation = eyeroll - } - triggered_animation = { - trigger = { - OR = { - has_trait = lazy - learning <= decent_skill_rating - } - NOT = { has_trait = diligent } - } - animation = worry - } - animation = interested - camera = camera_event_crowd - } - right_portrait = { - character = scope:courtier - animation = obsequious_bow - } - lower_right_portrait = scope:other_ruler - theme = dynastic_cycle - override_background = { reference = throne_room } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - exists = top_participant_group:dynastic_cycle - NOT = { knows_language_of_culture = top_liege.capital_county.culture } - any_ruler = { tpg_movement_events_0130_valid_ruler = yes } - } - - immediate = { - top_liege.capital_county.culture = { save_scope_as = capital_culture } - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tpg_movement_events_0130_valid_ruler = yes } - weight = { - base = 1 - modifier = { - has_relation_potential_friend = root - add = 25 - } - modifier = { - is_close_family_of = root - add = 10 - } - modifier = { - is_extended_family_of = root - add = 5 - } - modifier = { - OR = { - has_relation_friend = root - has_relation_lover = root - has_relation_disciple = root - } - add = 5 - } - } - save_scope_as = other_ruler - if = { - limit = { - any_courtier = { tgp_movement_events_0130_valid_courtier = yes } - } - ordered_courtier = { - limit = { - tgp_movement_events_0130_valid_courtier = yes - } - order_by = diplomacy - set_location = root.location - save_scope_as = courtier - } - } - else = { - hidden_effect_new_object = { - create_character = { - location = root.location - template = diplomacy_court_position_holder_template - gender_female_chance = root_soldier_female_chance - faith = scope:other_ruler.faith - culture = scope:capital_culture - save_scope_as = courtier - } - } - hidden_effect = { - add_courtier = scope:courtier - } - } - scope:courtier = { assign_quirk_effect = yes } - } - } - - option = { # Learn the language! - name = tgp_movement_events.0130.a - start_scheme = { - type = learn_language - target_character = scope:other_ruler - } - custom_tooltip = diplomacy_family.2250.b.tt - hidden_effect = { - random_scheme = { - limit = { - scheme_type = learn_language - scheme_target_character = scope:other_ruler - } - add_scheme_modifier = { - type = extra_success_chance_modifier - } - } - } - - stress_impact = { - diligent = medium_stress_impact_loss - humble = medium_stress_impact_loss - lazy = medium_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = humble - has_trait = diligent - } - factor = 0 - } - modifier = { - OR = { - has_trait = arrogant - has_trait = lazy - } - factor = 0 - } - } - } - - option = { # Convert - name = tgp_movement_events.0130.b - add_prestige = major_prestige_loss - set_culture = scope:capital_culture - stress_impact = { - base = massive_stress_impact_gain - arrogant = medium_stress_impact_gain - } - ai_chance = { - base = 25 - modifier = { - has_trait = humble - add = 75 - } - modifier = { - has_trait = arrogant - factor = 0 - } - } - } - - option = { # I'm good tyyyy - name = tgp_movement_events.0130.c - culture = { - change_cultural_acceptance = { - target = scope:capital_culture - value = minor_cultural_acceptance_gain - desc = cultural_acceptance_gain_event - } - } - add_character_modifier = { - modifier = tgp_cultural_harmony_modifier - years = 15 - } - stress_impact = { - arrogant = medium_stress_impact_loss - lazy = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = arrogant - has_trait = lazy - } - factor = 2 - } - } - } -} - -# Disciple brings you a gift -scripted_trigger tgp_movement_events_0140_valid_disciple = { - is_available_healthy_ai_adult = yes - opinion = { - target = root - value >= 10 - } -} - -scripted_trigger tgp_movement_events_0140_valid_artifact = { - is_equipped = no - NOT = { rarity = common } - artifact_can_be_gift_to_trigger = { RECIPIENT = root } -} - -scripted_effect tgp_movement_events_0140_create_artifact_effect = { - random_list = { - 10 = { - create_artifact_weapon_effect = { - OWNER = scope:disciple - CREATOR = scope:disciple - SET_WEAPON_TYPE = flag:no - } - } - 10 = { - create_artifact_armor_effect = { - OWNER = scope:disciple - CREATOR = scope:disciple - SET_ARMOR_TYPE = flag:no - } - } - 10 = { - create_artifact_book_effect = { - OWNER = scope:disciple - CREATOR = scope:disciple - SET_SUBJECT = flag:no - SET_TOPIC = flag:no - } - } - } - hidden_effect = { - scope:newly_created_artifact = { - save_scope_as = disciple_gift - set_artifact_description = disciple_gift_desc - set_artifact_rarity = masterwork - } - } -} - -tgp_movement_events.0140 = { - type = character_event - title = tgp_movement_events.0140.t - desc = tgp_movement_events.0140.desc - left_portrait = { - character = root - animation = happiness - camera = camera_event_crowd - } - right_portrait = { - character = scope:disciple - animation = gongshou - } - artifact = { - position = lower_right_portrait - target = scope:disciple_gift - } - theme = dynastic_cycle - override_background = { reference = garden } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - any_relation = { - type = disciple - tgp_movement_events_0140_valid_disciple = yes - } - } - - immediate = { - save_scope_as = root_scope - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - ordered_relation = { - type = disciple - limit = { tgp_movement_events_0140_valid_disciple = yes } - order_by = "opinion(root)" - assign_quirk_effect = yes - save_scope_as = disciple - if = { - limit = { - any_character_artifact = { tgp_movement_events_0140_valid_artifact = yes } - } - ordered_character_artifact = { - limit = { tgp_movement_events_0140_valid_artifact = yes } - order_by = artifact_rarity - save_scope_as = disciple_gift - } - } - else = { - tgp_movement_events_0140_create_artifact_effect = yes - } - } - } - - option = { # Thank you for the gift! - name = tgp_movement_events.0140.a - scope:disciple_gift = { set_owner = root } - scope:disciple = { - add_opinion = { - target = root - modifier = grateful_opinion - opinion = 15 - } - } - stress_impact = { - humble = medium_stress_impact_loss - greedy = medium_stress_impact_loss - diligent = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = humble - has_trait = greedy - } - factor = 2 - } - modifier = { - OR = { - has_trait = diligent - has_trait = ambitious - } - factor = 0 - } - } - } - - option = { # Remember we do this for the MOVEMENT - name = tgp_movement_events.0140.b - custom_tooltip = event_increase_movement_power_medium_effect_tooltip - scope:my_movement = { - event_change_movement_power_effect = { - VALUE = event_increase_movement_power_medium_value - } - } - stress_impact = { - greedy = medium_stress_impact_gain - ambitious = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 2 - } - modifier = { - has_trait = greedy - factor = 0 - } - } - } - - option = { # No time to waste, we must study!!!! - name = tgp_movement_events.0140.c - change_merit = medium_merit_gain - scope:disciple = { change_merit = medium_merit_gain } - if = { - limit = { - has_trait = confucian_education - } - add_trait_xp = { - trait = confucian_education - value = lifestyle_confucian_education_xp_gain_medium_value - } - } - stress_impact = { - ambitious = medium_stress_impact_gain - greedy = medium_stress_impact_gain - diligent = medium_stress_impact_loss - } - ai_chance = { - base = 100 - modifier = { - has_trait = diligent - factor = 2 - } - modifier = { - OR = { - has_trait = greedy - has_trait = ambitious - } - factor = 0 - } - } - } -} - -# Shinto visitor at court -scripted_trigger tgp_movement_events_0150_valid_monk = { - is_available_healthy_ai_adult = yes - has_trait = devoted - religion = religion:shintoism_religion - is_councillor = no # Don't steal someone important -} - -scripted_trigger tgp_movement_events_0150_valid_ruler = { - is_available_healthy_ai_adult = yes - is_landed = yes - primary_title.tier >= tier_county - religion = religion:shintoism_religion -} - -tgp_movement_events.0150 = { - type = character_event - title = tgp_movement_events.0150.t - desc = { - desc = tgp_movement_events.0150.desc.intro - first_valid = { - triggered_desc = { - trigger = { exists = scope:other_ruler } - desc = tgp_movement_events.0150.desc.other_ruler - } - triggered_desc = { - trigger = { NOT = { exists = scope:other_ruler } } - desc = tgp_movement_events.0150.desc.alone - } - } - desc = tgp_movement_events.0150.desc.outro - } - left_portrait = { - character = root - triggered_animation = { - trigger = { has_trait = cynical } - animation = dismissal - } - triggered_animation = { - trigger = { has_trait = zealous } - animation = anger - } - animation = interested - camera = camera_event_crowd - } - right_portrait = { - character = scope:monk - animation = prayer - } - lower_right_portrait = { - trigger = { exists = scope:other_ruler } - character = scope:other_ruler - } - theme = faith - override_background = { reference = throne_room } - cooldown = { years = 10 } - - trigger = { - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - exists = top_participant_group:dynastic_cycle - NOT = { religion = religion:shintoism_religion } - highest_held_title_tier >= tier_duchy # You need to be somewhat important - } - - weight_multiplier = { - base = 0.5 - modifier = { - highest_held_title_tier >= tier_duchy - add = root.primary_title.tier - } - } - - immediate = { - if = { # If there's a valid ruler they're an envoy from them - limit = { - faith:shinto = { - any_faith_ruler = { tgp_movement_events_0150_valid_ruler = yes } - } - } - faith:shinto = { - random_faith_ruler = { - limit = { tgp_movement_events_0150_valid_ruler = yes } - weight = { - base = 1 - modifier = { - highest_held_title_tier >= tier_kingdom - add = 50 - } - modifier = { - any_courtier = { tgp_movement_events_0150_valid_monk = yes } - add = 20 - } - } - save_scope_as = other_ruler - if = { - limit = { - any_courtier = { - tgp_movement_events_0150_valid_monk = yes - } - } - random_courtier = { - limit = { tgp_movement_events_0150_valid_monk = yes } - save_scope_as = monk - } - } - else = { - create_character = { - location = root.capital_province - template = monk_character_template - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - faith = scope:other_ruler.faith - culture = scope:other_ruler.capital_county.culture - save_scope_as = monk - after_creation = { - add_character_flag = created - } - } - hidden_effect = { add_courtier = scope:monk } - } - } - } - } - else = { # Otherwise they're a random monk - create_character = { - location = root.capital_province - template = monk_character_template - gender_female_chance = root_faith_dominant_gender_adjusted_female_chance - faith = faith:shinto - culture = culture:japanese - save_scope_as = monk - after_creation = { - add_character_flag = created - } - } - } - scope:monk = { assign_quirk_effect = yes } - } - - option = { # Get an alliance out of this - name = tgp_movement_events.0150.aa - trigger = { - has_trait = diplomat - exists = scope:other_ruler - } - add_opinion = { - target = scope:other_ruler - modifier = event_negotiated_alliance_opinion - } - custom_tooltip = tgp_movement_events.0150.aa.alliance - create_alliance = { - target = scope:other_ruler - allied_through_owner = root - allied_through_target = scope:other_ruler - } - stress_impact = { - humble = medium_stress_impact_loss - greedy = medium_stress_impact_loss - diligent = medium_stress_impact_gain - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - } - } - - option = { # Get Faith discount - name = tgp_movement_events.0150.a - custom_tooltip = cheaper_to_convert_to_monk_faith_tt - set_variable = { - name = discounted_faith_to_convert_to_var - value = scope:monk.faith - } - add_courtier = scope:monk - every_vassal = { - limit = { has_vassal_stance = zealot } - custom = every_zealot_vassal - add_opinion = { - target = root - modifier = impious_opinion - opinion = -20 - } - } - stress_impact = { - humble = medium_stress_impact_loss - zealous = major_stress_impact_gain - cynical = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = humble - factor = 2 - } - modifier = { - OR = { - has_trait = zealous - has_trait = cynical - } - factor = 0 - } - } - } - - option = { # Try to convert them - name = tgp_movement_events.0150.b - duel = { - skill = diplomacy - target = scope:monk - 35 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = tgp_movement_events.0150.b.success - send_interface_toast = { - title = tgp_movement_events.0150.b.success - left_icon = scope:monk - scope:monk = { set_character_faith = root.faith } - add_courtier = scope:monk - } - } - 65 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tgp_movement_events.0150.b.failure - send_interface_toast = { - title = tgp_movement_events.0150.b.failure - left_icon = scope:monk - scope:monk = { - add_opinion = { - target = root - modifier = disrespect_opinion - opinion = -25 - } - } - } - } - } - add_piety = medium_piety_gain - stress_impact = { - zealous = major_stress_impact_loss - cynical = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = zealous - factor = 2 - } - modifier = { - has_trait = cynical - factor = 0 - } - } - } - - option = { # You're welcome here - name = tgp_movement_events.0150.c - add_courtier = scope:monk - if = { - limit = { has_lifestyle = diplomacy_lifestyle } - add_diplomacy_lifestyle_xp = medium_lifestyle_xp - } - else = { add_prestige = medium_prestige_gain } - if = { - limit = { exists = scope:other_ruler } - scope:other_ruler = { - add_opinion = { - target = root - modifier = respect_opinion - opinion = 15 - } - } - } - stress_impact = { - gregarious = medium_stress_impact_loss - callous = medium_stress_impact_gain - zealous = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = gregarious - factor = 2 - } - modifier = { - OR = { - has_trait = callous - has_trait = zealous - } - factor = 0 - } - } - } - - after = { - scope:monk = { - silent_disappearance_ai_if_created_effect = yes - } - } -} - -# Ask a Movement Leader to abandon their Movement -scripted_trigger tgp_movement_events_0160_valid_rival = { - this != root - is_available_healthy_ai_adult = yes - government_has_flag = government_is_celestial - is_any_movement_leader = yes - NOR = { - top_participant_group:dynastic_cycle ?= root.top_participant_group:dynastic_cycle - top_participant_group:dynastic_cycle ?= { participant_group_type = undecided_movement } - } - NOT = { has_trait = deceitful } -} - -scripted_effect tgp_movement_events_0160_scheme_blocking_effect = { - custom_tooltip = tgp_movement_events_0160_scheme_blocking_effect_tt - set_variable = { - name = no_scheming_allowed_var - value = scope:rival - years = 15 - } - scope:rival = { - set_variable = { - name = no_scheming_allowed_var - value = root - years = 15 - } - } -} - -tgp_movement_events.0160 = { - type = character_event - title = tgp_movement_events.0160.t - desc = tgp_movement_events.0160.desc - left_portrait = { - character = root - animation = writing - } - lower_right_portrait = scope:rival - theme = dynastic_cycle - override_background = { reference = study } - cooldown = { years = 10 } - - trigger = { - NOT = { has_variable = no_scheming_allowed_var } - is_available_adult = yes - has_tgp_dlc_trigger = yes - government_has_flag = government_is_celestial - top_participant_group:dynastic_cycle ?= { - NOT = { participant_group_type = undecided_movement } - } - any_ruler = { tgp_movement_events_0160_valid_rival = yes } - OR = { # You are important enough - is_any_movement_leader = yes - influence_level >= 3 - merit_level >= 3 - } - } - - weight_multiplier = { - base = 1 - modifier = { - any_relation = { type = rival } - add = 1 - } - } - - immediate = { - assign_quirk_effect = yes - top_participant_group:dynastic_cycle ?= { - save_scope_as = my_movement - } - random_ruler = { - limit = { tgp_movement_events_0160_valid_rival = yes } - weight = { - base = 1 - modifier = { - has_relation_nemesis = root - add = 100 - } - modifier = { - has_relation_rival = root - add = 100 - } - modifier = { - any_memory = { - has_memory_category = negative - any_memory_participant = { this = root } - } - add = 50 - } - modifier = { - has_trait = greedy - add = 5 - } - } - save_scope_as = rival - top_participant_group:dynastic_cycle = { save_scope_as = rival_movement } - } - } - - option = { # Try to convince them - name = tgp_movement_events.0160.a - duel = { - skill = diplomacy - target = scope:rival - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - scope:rival = { has_trait = greedy } - add = 25 - } - modifier = { - scope:rival = { gold <= medium_gold_value } - add = 10 - } - desc = tgp_movement_events.0100.a.success - send_interface_toast = { - title = tgp_movement_events.0100.a.success - left_icon = scope:rival - tgp_movement_events_0160_scheme_blocking_effect = yes - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tgp_movement_events.0100.a.failure - send_interface_toast = { - title = tgp_movement_events.0100.a.failure - left_icon = scope:rival - - } - } - } - stress_impact = { - ambitious = medium_stress_impact_loss - deceitful = major_stress_impact_gain - honest = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - OR = { - has_trait = ambitious - has_trait = deceitful - } - factor = 2 - } - modifier = { - has_trait = honest - factor = 0 - } - } - } - - option = { # Pay them money lol - name = tgp_movement_events.0160.b - pay_short_term_gold = { - target = scope:rival - gold = medium_gold_value - } - tgp_movement_events_0160_scheme_blocking_effect = yes - stress_impact = { - honest = medium_stress_impact_loss - deceitful = major_stress_impact_gain - greedy = major_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = honest - factor = 2 - } - modifier = { - OR = { - gold <= major_gold_value - has_trait = greedy - has_trait = deceitful - } - factor = 0 - } - } - } - - option = { # I'm good - name = tgp_movement_events.0160.c - add_intrigue_lifestyle_xp = minor_lifestyle_xp - stress_impact = { - ambitious = medium_stress_impact_gain - } - ai_chance = { - base = 100 - modifier = { - has_trait = ambitious - factor = 0 - } - } - } -} diff --git a/events/dlc/tgp/tgp_natural_disaster_contract_events.txt b/events/dlc/tgp/tgp_natural_disaster_contract_events.txt deleted file mode 100644 index 6109dbd77..000000000 --- a/events/dlc/tgp/tgp_natural_disaster_contract_events.txt +++ /dev/null @@ -1,603 +0,0 @@ -########################## -# NATURAL DISASTER CONTRACT EVENTS -########################## -namespace = tgp_natural_disaster_contract_event - -### Food Shortage -tgp_natural_disaster_contract_event.0001 = { - type = character_event - title = tgp_natural_disaster_contract_event.0001.t - desc = tgp_natural_disaster_contract_event.0001.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_food_shortage - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = natural_disaster_contract_destination - } - } - } - - option = { - name = tgp_natural_disaster_contract_event.0001.a - - custom_tooltip = tgp_natural_disaster_travel_to_contract_destination - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:natural_disaster_contract_destination - ARRIVAL_EVENT = tgp_natural_disaster_contract_event.0002 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_natural_disaster_contract_event.0001.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - } - } -} - -tgp_natural_disaster_contract_event.0002 = { - type = character_event - title = tgp_natural_disaster_contract_event.0002.t - desc = tgp_natural_disaster_contract_event.0002.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - override_background = { - reference = ruined_holding - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_food_shortage - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 4 } - } - - option = { # Special governor trait option - name = tgp_natural_disaster_contract_event.0002.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = distribution_of_food - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_natural_disaster_contract_event.0002.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = pay_from_own_pocket - } - ai_chance = { - base = 100 - } - } - option = { - name = tgp_natural_disaster_contract_event.0002.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = haggle_with_merchants - } - duel = { - skill = stewardship - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0002.c.tt.success - scope:ongoing_contract ?= { - complete_task_contract = haggle_with_merchants - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0002.c.tt.failure - scope:ongoing_contract ?= { - complete_task_contract = haggle_with_merchants_failure - } - } - } - ai_chance = { - base = 50 - } - } - option = { - name = tgp_natural_disaster_contract_event.0002.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = demand_food_from_nobles - } - ai_chance = { - base = 80 - } - } -} - -### Destroyed by Nature -tgp_natural_disaster_contract_event.0005 = { - type = character_event - title = tgp_natural_disaster_contract_event.0005.t - desc = tgp_natural_disaster_contract_event.0005.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_ravaged_buildings - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = natural_disaster_contract_destination - } - } - } - - option = { - name = tgp_natural_disaster_contract_event.0005.a - - custom_tooltip = tgp_natural_disaster_travel_to_contract_destination - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:natural_disaster_contract_destination - ARRIVAL_EVENT = tgp_natural_disaster_contract_event.0006 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_natural_disaster_contract_event.0005.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - } - } -} - -tgp_natural_disaster_contract_event.0006 = { - type = character_event - title = tgp_natural_disaster_contract_event.0006.t - desc = tgp_natural_disaster_contract_event.0006.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - override_background = { - reference = ruined_holding - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_ravaged_buildings - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 4 } - } - - option = { # Special governor trait option - name = tgp_natural_disaster_contract_event.0006.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = rebuild_settlement - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_natural_disaster_contract_event.0006.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = temporary_shelters - } - ai_chance = { - base = 100 - } - } - option = { - name = tgp_natural_disaster_contract_event.0006.c - trigger = { exists = scope:governance_option_c } - duel = { - skills = { martial stewardship } - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0006.c.tt.desc.success - scope:ongoing_contract = { - complete_task_contract = remove_debris - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0006.c.tt.desc.failure - scope:ongoing_contract = { - complete_task_contract = remove_debris_failure - } - } - } - ai_chance = { - base = 80 - } - } - option = { - name = tgp_natural_disaster_contract_event.0006.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = labor_exchange - } - ai_chance = { - base = 50 - } - } -} - -### Treating the Innocents -tgp_natural_disaster_contract_event.0010 = { - type = character_event - title = tgp_natural_disaster_contract_event.0010.t - desc = tgp_natural_disaster_contract_event.0010.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_medieval_medicine - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = natural_disaster_contract_destination - } - } - } - - option = { - name = tgp_natural_disaster_contract_event.0010.a - - custom_tooltip = tgp_natural_disaster_travel_to_contract_destination - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:natural_disaster_contract_destination - ARRIVAL_EVENT = tgp_natural_disaster_contract_event.0011 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_natural_disaster_contract_event.0010.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - } - } -} - -tgp_natural_disaster_contract_event.0011 = { - type = character_event - title = tgp_natural_disaster_contract_event.0011.t - desc = tgp_natural_disaster_contract_event.0011.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - override_background = { - reference = ruined_holding - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_medieval_medicine - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 4 } - } - - option = { # Special governor trait option - name = tgp_natural_disaster_contract_event.0011.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - scope:ongoing_contract = { - complete_task_contract = assisting_physician - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_natural_disaster_contract_event.0011.b - trigger = { exists = scope:governance_option_b } - duel = { - skill = learning - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0011.b.tt.success - scope:ongoing_contract = { - complete_task_contract = medical_assistance - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0011.b.tt.failure - scope:ongoing_contract = { - complete_task_contract = medical_assistance_failure - } - } - } - ai_chance = { - base = 50 - } - } - option = { - name = tgp_natural_disaster_contract_event.0011.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = prayers_to_the_people - } - ai_chance = { - base = 100 - } - } - option = { - name = tgp_natural_disaster_contract_event.0011.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = better_pay_up - } - ai_chance = { - base = 100 - } - } -} - -### Provisional Relocation -tgp_natural_disaster_contract_event.0015 = { - type = character_event - title = tgp_natural_disaster_contract_event.0015.t - desc = tgp_natural_disaster_contract_event.0015.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_disaster_displacement - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = natural_disaster_contract_destination - } - } - } - - option = { - name = tgp_natural_disaster_contract_event.0015.a - - custom_tooltip = tgp_natural_disaster_travel_to_contract_destination - governor_contract_travel_or_progress_effect = { - DESTINATION = scope:natural_disaster_contract_destination - ARRIVAL_EVENT = tgp_natural_disaster_contract_event.0016 - } - - ai_chance = { - base = 100 - } - } - - option = { - name = tgp_natural_disaster_contract_event.0015.b - scope:ongoing_contract = { - complete_task_contract = failure_standard - } - - ai_chance = { - base = 0 - } - } -} - -tgp_natural_disaster_contract_event.0016 = { - type = character_event - title = tgp_natural_disaster_contract_event.0016.t - desc = tgp_natural_disaster_contract_event.0016.desc - theme = disaster - left_portrait = { - character = root - animation = stress - } - override_background = { - reference = ruined_holding - } - - immediate = { - # Save the contract - random_character_active_contract = { - limit = { - has_task_contract_type = tgp_disaster_displacement - } - save_scope_as = ongoing_contract - - # Save the location - task_contract_location = { - save_scope_as = ongoing_destination - } - } - generate_governance_outcome_effect = { OPTIONS = 4 } - } - - option = { # Special governor trait option - name = tgp_natural_disaster_contract_event.0016.a - trigger = { - has_trait = governor # To show that the trait unlocks the option - exists = scope:governance_option_a - } - duel = { - skill = martial - value = decent_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0016.a.tt.desc.success - scope:ongoing_contract = { - complete_task_contract = deployed_troops - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = tgp_natural_disaster_contract_event.0016.a.tt.desc.failure - scope:ongoing_contract = { - complete_task_contract = deployed_troops_failure - } - } - } - ai_chance = { - base = 200 - } - } - option = { - name = tgp_natural_disaster_contract_event.0016.b - trigger = { exists = scope:governance_option_b } - scope:ongoing_contract = { - complete_task_contract = setting_an_example - } - ai_chance = { - base = 80 - } - } - option = { - name = tgp_natural_disaster_contract_event.0016.c - trigger = { exists = scope:governance_option_c } - scope:ongoing_contract = { - complete_task_contract = confiscate_for_personal_inspection - } - ai_chance = { - base = 50 - } - } - option = { - name = tgp_natural_disaster_contract_event.0016.d - trigger = { exists = scope:governance_option_d } - scope:ongoing_contract = { - complete_task_contract = paying_off_the_looters - } - ai_chance = { - base = 100 - } - } -} diff --git a/events/dlc/tgp/tgp_natural_disaster_flavor_events.txt b/events/dlc/tgp/tgp_natural_disaster_flavor_events.txt deleted file mode 100644 index 3d0a0692b..000000000 --- a/events/dlc/tgp/tgp_natural_disaster_flavor_events.txt +++ /dev/null @@ -1,905 +0,0 @@ -namespace = natural_disaster_flavor_events - -scripted_trigger is_location_affected_by_disaster_in_recovery_trigger = { - location.county = { - any_county_situation = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - situation_current_phase = recovery - } - } -} - -scripted_effect create_random_misc_artifact_effect = { - create_artifact = { - name = random_misc_artifact - description = random_misc_artifact_desc - type = miscellaneous - visuals = ring - rarity = common - modifier = artifact_prowess_1_modifier - max_durability = 15 - save_scope_as = random_misc_artifact - } - hidden_effect = { - random_list = { - 50 = { - scope:random_misc_artifact = { - add_artifact_modifier = character_travel_speed_1 - } - } - 50 = { - scope:random_misc_artifact = { - add_artifact_modifier = artifact_travel_safety_1 - } - } - } - } -} - -# As Scavengers Gather -natural_disaster_flavor_events.0001 = { - type = character_event - title = natural_disaster_flavor_events.0001.t - desc = natural_disaster_flavor_events.0001.desc - theme = disaster - left_portrait = { - character = root - animation = survey - } - cooldown = { years = 20 } - - trigger = { - has_tgp_dlc_trigger = yes - is_location_valid_for_travel_event_on_land = yes - is_location_affected_by_disaster_in_recovery_trigger = yes - is_available_travelling_adult = yes - is_landed = no - } - - widgets = { - widget = { - is_shown = { - scope:random_weather = flag:fog - } - gui = event_window_widget_vfx_rainy_fog container = foreground_shader_vfx_container - } - } - - immediate = { - location.county = { - random_county_situation = { - limit = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - } - save_scope_as = disaster_situation - } - } - - create_character = { - template = generic_peasant_character - location = root.location - culture = root.location.culture - faith = root.location.faith - gender_female_chance = root_soldier_female_chance - save_scope_as = person_in_need - } - - random_list = { - 20 = { - save_scope_value_as = { - name = random_weather - value = flag:fog - } - } - 80 = { } - } - } - - option = { # Valuables - name = natural_disaster_flavor_events.0001.a - add_piety = minor_piety_loss - random_list = { - 33 = { # Gold - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0001.a.gold.toast - left_icon = root - add_gold = { - add = miniscule_gold_value - multiply = 3 - } - } - modifier = { - add = 15 - has_trait = greedy - } - } - 33 = { # Provisions - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0001.a.provisions.toast - left_icon = root - domicile = { - change_provisions = miniscule_provisions_gain - } - } - modifier = { - add = 15 - has_trait = gluttonous - } - } - 33 = { # Artifact - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0001.a.artifact.toast - left_icon = root - create_random_misc_artifact_effect = yes - } - modifier = { - add = 15 - has_trait = brave - } - } - } - current_travel_plan = { - delay_travel_plan = { - days = 10 - } - } - random = { - chance = 20 - contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes } - } - - stress_impact = { - just = minor_stress_impact_gain - greedy = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_greed = 1 - ai_compassion = -1 - } - } - } - - option = { # Survivors - name = natural_disaster_flavor_events.0001.b - - duel = { - skill = prowess - value = medium_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - min = 20 - max = 90 - reverse_add_opinion = { - target = scope:person_in_need - modifier = grateful_opinion - opinion = 25 - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0001.b.failure.toast # fix this - left_icon = root - right_icon = scope:person_in_need - scope:person_in_need = { - increase_wounds_effect = { REASON = wounds } - } - } - } - } - - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0001.b.success.toast - left_icon = root - right_icon = scope:person_in_need - current_travel_plan = { - add_companion = scope:person_in_need - } - } - current_travel_plan = { - delay_travel_plan = { - days = 10 - } - } - - stress_impact = { - lazy = minor_stress_impact_gain - compassionate = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_rationality = -1 - } - } - } - - option = { # Opt out - name = natural_disaster_flavor_events.0001.c - - custom_tooltip = RESUME_TRAVEL_PLAN_EFFECT - - stress_impact = { - compassionate = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_rationality = 1 - } - } - } -} - -# Waking Nightmare -natural_disaster_flavor_events.0005 = { - type = character_event - title = natural_disaster_flavor_events.0005.t - desc = natural_disaster_flavor_events.0005.desc - theme = disaster - left_portrait = { - character = root - animation = shock - } - cooldown = { years = 20 } - - trigger = { - has_tgp_dlc_trigger = yes - is_location_valid_for_travel_event_on_land = yes - is_landed = no - } - - widget = { gui = event_window_widget_vfx_earthquake container = foreground_shader_vfx_container } - - immediate = { - location.county = { - random_county_situation = { - limit = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - } - save_scope_as = disaster_situation - } - } - } - - option = { # Run for your life - name = natural_disaster_flavor_events.0005.a - duel = { - skill = prowess - value = medium_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0005.a.success.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0005.a.success.toast - left_icon = root - add_character_modifier = { - modifier = tgp_selfish_actions_character_modifier - years = 10 - } - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0005.a.failure.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0005.a.failure.toast - left_icon = root - increase_wounds_effect = { REASON = wounds } - } - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_compassion = 1 - ai_rationality = 1 - } - } - } - - option = { # Find a safe location - name = natural_disaster_flavor_events.0005.b - duel = { - skill = learning - value = medium_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0005.b.success.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0005.b.success.toast - left_icon = root - add_character_modifier = { - modifier = tgp_finding_safe_spot_character_modifier - years = 10 - } - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0005.b.failure.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0005.b.failure.toast - left_icon = root - increase_wounds_effect = { REASON = wounds } - } - } - } - - stress_impact = { - fickle = minor_stress_impact_gain - diligent = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_rationality = 2 - ai_energy = -1 - } - } - } -} - -# Desperate Souls -natural_disaster_flavor_events.0010 = { - type = character_event - title = natural_disaster_flavor_events.0010.t - desc = natural_disaster_flavor_events.0010.desc - theme = disaster - left_portrait = { - character = root - animation = worry - } - cooldown = { years = 20 } - - trigger = { - has_tgp_dlc_trigger = yes - is_location_valid_for_travel_event_on_land = yes - is_location_affected_by_disaster_in_recovery_trigger = yes - is_available_travelling_adult = yes - } - - immediate = { - location.county = { - random_county_situation = { - limit = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - } - save_scope_as = disaster_situation - } - } - } - - option = { # Reassure them that help is coming - name = natural_disaster_flavor_events.0010.a - duel = { - skill = diplomacy - value = medium_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0010.a.success.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0010.a.success.toast - left_icon = root - add_diplomacy_lifestyle_xp = medium_lifestyle_experience - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0010.a.failure.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0010.a.failure.toast - left_icon = root - add_character_modifier = { - modifier = tgp_deceitful_overconfidence_character_modifier - years = 10 - } - } - } - } - - stress_impact = { - honest = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_compassion = -1 - ai_sociability = 1 - } - } - } - - option = { # Lie your way out of the situation - name = natural_disaster_flavor_events.0010.b - duel = { - skill = intrigue - value = medium_skill_rating - 50 = { # Success - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0010.b.success.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0010.b.success.toast - left_icon = root - add_intrigue_lifestyle_xp = medium_lifestyle_experience - } - } - 50 = { # Failure - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = natural_disaster_flavor_events.0010.b.failure.toast - min = 20 - max = 90 - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0010.b.failure.toast - left_icon = root - add_character_modifier = { - modifier = tgp_deceitful_overconfidence_character_modifier - years = 10 - } - } - } - } - - stress_impact = { - honest = minor_stress_impact_gain - deceitful = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_compassion = -2 - ai_rationality = 1 - } - } - } - - option = { # Ignore their pleas - name = natural_disaster_flavor_events.0010.c - flavor = natural_disaster_flavor_events.0010.c.tt - current_travel_plan.current_location.county = { - if = { - limit = { - holder = { save_temporary_scope_as = county_holder } - OR = { - scope:county_holder = root - root = { is_vassal_or_below_of = scope:county_holder } - } - } - add_county_modifier = { - modifier = tgp_abandoned_population_modifier - years = 10 - } - } - else = { - root = { add_prestige = minor_prestige_loss } - } - } - - stress_impact = { - compassionate = minor_stress_impact_gain - callous = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -2 - ai_rationality = 2 - } - } - } -} - -# Selfless Acts -natural_disaster_flavor_events.0015 = { - type = character_event - title = natural_disaster_flavor_events.0015.t - desc = natural_disaster_flavor_events.0015.desc - theme = disaster - left_portrait = { - character = root - animation = shock - } - right_portrait = { - character = scope:spouse - animation = fear - } - lower_center_portrait = { - trigger = { exists = scope:heir } - character = scope:heir - } - lower_right_portrait = { - trigger = { exists = scope:courtier } - character = scope:courtier - } - cooldown = { years = 20 } - - trigger = { - has_tgp_dlc_trigger = yes - is_location_valid_for_travel_event_on_land = yes - is_location_affected_by_disaster_in_recovery_trigger = yes - is_landed = yes - primary_spouse ?= { - is_at_same_location = root - } - } - - immediate = { - location.county = { - random_county_situation = { - limit = { tgp_natural_disaster_situation_is_disaster_trigger = yes } - save_scope_as = disaster_situation - } - } - primary_spouse = { - save_scope_as = spouse - } - primary_heir ?= { - if = { - limit = { - this != scope:spouse - is_at_same_location = root - } - save_scope_as = heir - } - } - random_courtier = { - limit = { - this != scope:spouse - this != scope:heir - has_any_court_position = yes - is_at_same_location = root - } - save_scope_as = courtier - } - } - - option = { # Save your spouse - name = natural_disaster_flavor_events.0015.a - random = { - chance = { - value = 25 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.a.failure - left_icon = root - increase_wounds_effect = { REASON = wounds } - } - save_scope_as = damage_done - } - if = { - limit = { - OR = { - exists = scope:heir - exists = scope:courtier - } - } - random = { - chance = { - value = 35 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.a.failure - left_icon = scope:heir - right_icon = scope:courtier - primary_heir ?= { - increase_wounds_effect = { REASON = wounds } - } - scope:courtier ?= { - increase_wounds_effect = { REASON = wounds } - } - } - save_scope_as = damage_done - } - } - - if = { - limit = { NOT = { exists = scope:damage_done } } - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0015.a.success - left_icon = root - } - } - - add_prowess_skill = 1 - reverse_add_opinion = { - target = primary_spouse - modifier = grateful_opinion - opinion = 25 - } - - stress_impact = { - craven = minor_stress_impact_gain - brave = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - ai_energy = 1 - } - } - } - - option = { # Save your heir - name = natural_disaster_flavor_events.0015.b - trigger = { exists = scope:heir } - - random = { - chance = { - value = 25 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.b.failure - left_icon = root - increase_wounds_effect = { REASON = wounds } - } - save_scope_as = damage_done - } - random = { - chance = { - value = 35 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.b.failure - left_icon = scope:spouse - right_icon = scope:courtier - primary_spouse = { - increase_wounds_effect = { REASON = wounds } - } - scope:courtier ?= { - increase_wounds_effect = { REASON = wounds } - } - } - save_scope_as = damage_done - } - - if = { - limit = { NOT = { exists = scope:damage_done } } - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0015.b.success - left_icon = root - } - } - - add_prowess_skill = 1 - reverse_add_opinion = { - target = primary_heir - modifier = grateful_opinion - opinion = 25 - } - - stress_impact = { - craven = minor_stress_impact_gain - brave = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - ai_energy = 1 - } - } - } - - option = { # Save your courtier - name = natural_disaster_flavor_events.0015.c - trigger = { exists = scope:courtier } - - random = { - chance = { - value = 25 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.c.failure - left_icon = root - increase_wounds_effect = { REASON = wounds } - } - save_scope_as = damage_done - } - random = { - chance = { - value = 35 - subtract = prowess - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.c.failure - left_icon = scope:spouse - right_icon = scope:heir - primary_spouse = { - increase_wounds_effect = { REASON = wounds } - } - primary_heir ?= { - increase_wounds_effect = { REASON = wounds } - } - } - save_scope_as = damage_done - } - - if = { - limit = { NOT = { exists = scope:damage_done } } - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0015.c.success - left_icon = root - } - } - - add_prowess_skill = 1 - reverse_add_opinion = { - target = scope:courtier - modifier = grateful_opinion - opinion = 25 - } - - stress_impact = { - craven = minor_stress_impact_gain - brave = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = 1 - ai_boldness = 1 - ai_energy = 1 - } - } - } - - option = { # Save yourself - name = natural_disaster_flavor_events.0015.d - random = { - chance = { - value = 45 - } - send_interface_toast = { - type = event_toast_effect_bad - title = natural_disaster_flavor_events.0015.a.failure - left_icon = scope:spouse - right_icon = scope:heir - primary_spouse = { - increase_wounds_effect = { REASON = wounds } - } - primary_heir ?= { - increase_wounds_effect = { REASON = wounds } - } - scope:courtier ?= { - increase_wounds_effect = { REASON = wounds } - } - } - save_scope_as = damage_done - } - - if = { - limit = { NOT = { exists = scope:damage_done } } - send_interface_toast = { - type = event_toast_effect_good - title = natural_disaster_flavor_events.0015.a.success - left_icon = root - } - } - - stress_impact = { - brave = minor_stress_impact_gain - craven = minor_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_honor = -1 - ai_compassion = -1 - ai_boldness = -1 - ai_rationality = 1 - } - } - } -} diff --git a/events/dlc/tgp/tgp_silk_road_events.txt b/events/dlc/tgp/tgp_silk_road_events.txt deleted file mode 100644 index 626ba858a..000000000 --- a/events/dlc/tgp/tgp_silk_road_events.txt +++ /dev/null @@ -1,289 +0,0 @@ -namespace = tgp_silk_road_events - -# visit_silk_road_market_decision - -tgp_silk_road_events.0010 = { - type = character_event - title = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - scope:market_temp = title:c_jingzhao # Chang'an - scope:market_temp = title:c_shazhou # Dunhuang - } - } - desc = tgp_silk_road_events.0010.t.market - } - triggered_desc = { - trigger = { scope:market_temp = title:c_lhasa } # Lhasa - desc = tgp_silk_road_events.0010.t.khrom - } - triggered_desc = { - trigger = { scope:market_temp = title:c_dvin } # Dvin - desc = tgp_silk_road_events.0010.t.shuka - } - desc = tgp_silk_road_events.0010.t - } - } - desc = tgp_silk_road_events.0010.desc - theme = silk_road - override_background = { reference = market } - - left_portrait = { - character = root - animation = steward - } - - immediate = { - culture = { save_scope_as = culture_temp } - save_scope_as = new_trinket # Purely for error suppression - } - - option = { - name = tgp_silk_road_events.0010.a - duel = { - skills = { learning stewardship } - value = average_skill_rating - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - culture = { - add_to_variable_list = { - name = silk_road_unlocked_innovations - target = scope:innovation_temp - } - } - every_player = { - limit = { culture = root.culture } - send_interface_toast = { - type = msg_silk_road_innovation_spread - title = msg_silk_road_innovation_spread_title - desc = msg_silk_road_innovation_visit_desc - left_icon = root - right_icon = scope:market_temp - custom_tooltip = msg_silk_road_innovation_spread_tt - } - } - } - # - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - desc = SILK_ROAD_MARKET_EMPTY_HANDED - send_interface_toast = { - title = tgp_silk_road_events.0010.a_nada - type = event_toast_effect_bad - left_icon = root - } - } - } - - ai_chance = { - base = 50 - - ai_value_modifier = { - ai_rationality = 1 - } - } - } - - - option = { - name = tgp_silk_road_events.0010.b - - random_list = { - desc = tgp_silk_road_events.0010.b_tt - # get a famed-quality or masterwork-quality item - 10 = { - desc = tgp_silk_road_events.0010.b_trinket - - hidden_effect = { - root = { - add_character_flag = { flag = used_in_feast_default.1016 } # uncommon, famed, masterwork items - generate_trinket_effect = { - TRINKET_RECEIVER = root - TRINKET_GIVER = root - GRAB_ALL_TRINKETS = yes - HISTORY_TYPE = given_unknown - } - remove_character_flag = used_in_feast_default.1016 - } - } - send_interface_toast = { - title = tgp_silk_road_events.0010.b_trinket - type = event_toast_effect_good - left_icon = root - right_icon = scope:new_trinket - scope:new_trinket = { - set_owner = root - } - } - custom_tooltip = purchase_artifact_famed_tt - } - # make a profit - 25 = { - desc = tgp_silk_road_events.0010.b_big_gold - send_interface_toast = { - title = tgp_silk_road_events.0010.b_big_gold - type = event_toast_effect_good - left_icon = root - add_short_term_gold = massive_gold_value - } - } - # break even - 40 = { - desc = tgp_silk_road_events.0010.b_small_gold - send_interface_toast = { - title = tgp_silk_road_events.0010.b_small_gold - type = event_toast_effect_good - left_icon = root - add_short_term_gold = major_gold_value # should be the same as the cost of the decision to visit a market - } - } - # get nothing, and if you're greedy, get stressed because you got nothing - 25 = { - desc = tgp_silk_road_events.0010.a_nada - send_interface_toast = { - title = tgp_silk_road_events.0010.a_nada - type = event_toast_effect_bad - left_icon = root - } - stress_impact = { - greedy = minor_stress_impact_gain - } - } - } - - ai_chance = { - base = 10 - - ai_value_modifier = { - ai_boldness = 1 - ai_greed = 1 - } - } - } -} - -# yearly event for spreading innovations from markets to holder's culture - -scripted_effect silk_road_market_spread_innovation_effect = { - # Find relevant innovation - scope:market_temp ?= { - random_county_situation_sub_region = { - limit = { - situation_sub_region_has_county = scope:market_temp - OR = { - sub_region_current_phase = phase_exceptional_bounty - sub_region_current_phase = phase_steady_trading - sub_region_current_phase = phase_hardship - } - } - save_temporary_scope_as = sub_region_temp - var:innovation ?= { save_temporary_scope_as = innovation_temp } - } - } - # Unlock for culture if relevant - if = { - limit = { - NOR = { - scope:culture_temp = { - any_in_list = { - variable = silk_road_unlocked_innovations - this = scope:innovation_temp - } - } - scope:innovation_temp = { is_known_by_culture = scope:culture_temp } - } - } - every_player = { - limit = { culture = scope:culture_temp } - send_interface_message = { - type = msg_silk_road_innovation_spread - title = msg_silk_road_innovation_spread_title - desc = msg_silk_road_innovation_spread_desc - left_icon = scope:market_temp.holder - right_icon = scope:market_temp - custom_tooltip = msg_silk_road_innovation_spread_tt - } - } - scope:culture_temp = { - add_to_variable_list = { - name = silk_road_unlocked_innovations - target = scope:innovation_temp - } - } - } -} - -tgp_silk_road_events.0100 = { - hidden = yes - type = character_event - - trigger = { - OR = { - has_title = title:c_jingzhao # Chang'an - has_title = title:c_lhasa # Lhasa - has_title = title:c_lahur # Lahur - has_title = title:c_shazhou # Dunhuang - has_title = title:c_khiva # Khiva - has_title = title:c_dvin # Dvin - } - } - - immediate = { - culture = { save_temporary_scope_as = culture_temp } - # Find market for yearly if relevant - if = { - limit = { NOT = { exists = scope:title } } - title:c_jingzhao = { add_to_list = potential_markets } # Chang'an - title:c_lhasa = { add_to_list = potential_markets } # Lhasa - title:c_lahur = { add_to_list = potential_markets } # Lahur - title:c_shazhou = { add_to_list = potential_markets } # Dunhuang - title:c_khiva = { add_to_list = potential_markets } # Khiva - title:c_dvin = { add_to_list = potential_markets } # Dvin - every_in_list = { - list = potential_markets - limit = { - save_temporary_scope_as = county_temp - holder = root - any_county_situation_sub_region = { - situation_sub_region_has_county = scope:county_temp - OR = { - sub_region_current_phase = phase_exceptional_bounty - sub_region_current_phase = phase_steady_trading - sub_region_current_phase = phase_hardship - } - # Has not spread to this culture before or is known by this culture - var:innovation ?= { - save_temporary_scope_as = innovation_temp - NOR = { - scope:culture_temp = { - any_in_list = { - variable = silk_road_unlocked_innovations - this = scope:innovation_temp - } - } - is_known_by_culture = scope:culture_temp - } - } - } - } - save_temporary_scope_as = market_temp - silk_road_market_spread_innovation_effect = yes - } - } - # Use gained market otherwise - else = { - scope:title = { save_temporary_scope_as = market_temp } - silk_road_market_spread_innovation_effect = yes - } - } -} diff --git a/events/dlc/tgp/tgp_tai_migration_events.txt b/events/dlc/tgp/tgp_tai_migration_events.txt deleted file mode 100644 index c91077605..000000000 --- a/events/dlc/tgp/tgp_tai_migration_events.txt +++ /dev/null @@ -1,1149 +0,0 @@ -################################### -# TAI MIGRATION EVENTS -################################### - -namespace = tgp_tai_migration_event - -# Tai settlers are migrating to your province -tgp_tai_migration_event.1000 = { - type = character_event - title = tgp_tai_migration_event.1000.t - desc = tgp_tai_migration_event.1000.desc - window = big_event_window - theme = realm - right_portrait = { - character = root - camera = camera_event_right_crowner_crowning - animation = personality_rational - } - left_portrait = { - character = scope:migration_leader - camera = camera_event_group_talking_left_left - animation = admiration - } - cooldown = { years = 10 } - - immediate = { - random_county_in_region = { - region = custom_tai_migration_origin - limit = { - culture = { - has_cultural_pillar = heritage_tai - } - } - save_scope_as = migration_origin - holder = { - save_scope_as = migration_origin_holder - } - culture = { - save_scope_as = migration_origin_culture - } - faith = { - save_scope_as = migration_origin_faith - } - } - random_realm_county = { - limit = { - title_province = { - geographical_region = custom_tai_migration_target - } - culture = { - NOT = { - has_cultural_pillar = heritage_tai - } - } - } - save_scope_as = migration_target - } - hidden_effect = { - create_character = { - template = settlement_elder_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = male - after_creation = { - set_to_lowborn = yes - } - save_scope_as = migration_leader - } - add_visiting_courtier = scope:migration_leader - } - } - - option = { # accept them - name = tgp_tai_migration_event.1000.a - scope:migration_target = { - set_county_culture = culture:tai - add_county_modifier = { - modifier = tgp_tai_migration_migration_happened_county_modifier - years = 20 - } - } - culture = { - change_cultural_acceptance = { - target = culture:tai - value = 10 - desc = cultural_acceptance_gain_event - } - } - add_character_modifier = { - modifier = tgp_tai_migration_migration_happened_character_modifier - years = 10 - } - - } - option = { # accept only the skilled, not enough to change culture, but development - trigger = { - is_ai = no - } - name = tgp_tai_migration_event.1000.b - scope:migration_target = { - add_county_modifier = { - modifier = tgp_tai_migration_skilled_development_county_modifier - years = 10 - } - } - add_prestige = medium_prestige_gain - } - option = { # shoo them away - trigger = { - is_ai = no - } - name = tgp_tai_migration_event.1000.c - add_character_modifier = { - modifier = tgp_tai_migration_migration_rejected_character_modifier - years = 10 - } - custom_tooltip = { - text = tgp_tai_migration_event_1000.c_shooed_immigrants_tt - random_list = { - 80 = { - random_ruler = { # send them to another eligible migration reciever; since this is a non-ai option, it won't happen again twice for the ai, and they'll settle there - limit = { - any_owned_story = { - type = story_tai_migrations - } - is_ai = yes - } - trigger_event = { - id = tgp_tai_migration_event.1000 - months = 1 - } - } - } - 20 = {} - } - } - } - - after = { - hidden_effect = { - if = { # make option a's elder disappear only if he's not recruited with character interaction - limit = { - scope:migration_leader = { - NOT = { - is_courtier_of = root - } - } - } - scope:migration_leader = { - silent_disappearance_effect = yes - } - } - } - } -} - -scripted_effect courtier_replacement_scripted_effect = { - #Replace current character if any - if = { - limit = { - employs_court_position = $POSITION$ - } - add_courtier = $CHARACTER$ - every_court_position_holder = { - type = $POSITION$ - save_temporary_scope_as = current_court_position_holder - employer = { - replace_court_position = { - recipient = $CHARACTER$ - holder = scope:current_court_position_holder - court_position = $POSITION$ - } - } - } - } - #Or simply appoint new character - else = { - add_courtier = $CHARACTER$ - appoint_court_position = { - recipient = $CHARACTER$ - court_position = $POSITION$ - } - } - custom_tooltip = will_have_excellent_aptitude -} - -# Skilled Tai character offers services -tgp_tai_migration_event.2000 = { - type = character_event - title = tgp_tai_migration_event.2000.t - desc = { - desc = tgp_tai_migration_event.2000.desc - first_valid = { - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_wet_nurse - } - } - desc = tgp_tai_migration_event.2000.wet_nurse.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_champion - } - } - desc = tgp_tai_migration_event.2000.champion.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_travel_leader - } - } - desc = tgp_tai_migration_event.2000.travel_leader.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_master_of_hunt - } - } - desc = tgp_tai_migration_event.2000.master_of_hunt.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_court_physician - } - } - desc = tgp_tai_migration_event.2000.court_physician.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_antiquarian - } - } - desc = tgp_tai_migration_event.2000.antiquarian.desc - } - triggered_desc = { - trigger = { - scope:migrant_skilled_character = { - has_character_flag = migrant_court_tutor - } - } - desc = tgp_tai_migration_event.2000.court_tutor.desc - } - } - desc = tgp_tai_migration_event.2000.end.desc - } - theme = realm - right_portrait = { - character = root - camera = camera_event_right_crowner_crowning - animation = personality_rational - } - left_portrait = { - character = scope:migrant_skilled_character - camera = camera_event_group_talking_left_left - animation = admiration - } - cooldown = { years = 20 } - trigger = { - OR = { # checks if any of the following court posiitons are present at the court - OR = { - can_employ_court_position_type = wet_nurse_court_position - employs_court_position = wet_nurse_court_position - } - OR = { - can_employ_court_position_type = champion_court_position - employs_court_position = champion_court_position - } - OR = { - can_employ_court_position_type = travel_leader_court_position - employs_court_position = travel_leader_court_position - } - OR = { - can_employ_court_position_type = master_of_hunt_court_position - employs_court_position = master_of_hunt_court_position - } - OR = { - can_employ_court_position_type = court_physician_court_position - employs_court_position = court_physician_court_position - } - OR = { - can_employ_court_position_type = antiquarian_court_position - employs_court_position = antiquarian_court_position - } - OR = { - can_employ_court_position_type = court_tutor_court_position - employs_court_position = court_tutor_court_position - } - } - } - immediate = { - random_county_in_region = { # locate a Tai county where the character supposedly migrated from - region = custom_tai_migration_origin - limit = { - culture = { - has_cultural_pillar = heritage_tai - } - } - save_scope_as = migration_origin - holder = { - save_scope_as = migration_origin_holder - } - culture = { - save_scope_as = migration_origin_culture - } - faith = { - save_scope_as = migration_origin_faith - } - } - hidden_effect = { # Pick one of six court positions and create a character randomly - random_list = { - 1 = { - trigger = { - OR = { - can_employ_court_position_type = wet_nurse_court_position - employs_court_position = wet_nurse_court_position - } - } - create_character = { - template = wet_nurse_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_wet_nurse - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 1 = { - trigger = { - OR = { - can_employ_court_position_type = champion_court_position - employs_court_position = champion_court_position - } - } - create_character = { - template = champion_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_champion - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 1 = { - trigger = { - OR = { - can_employ_court_position_type = travel_leader_court_position - employs_court_position = travel_leader_court_position - } - } - create_character = { - template = travel_leader_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_travel_leader - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 1 = { - trigger = { - OR = { - can_employ_court_position_type = master_of_hunt_court_position - employs_court_position = master_of_hunt_court_position - } - } - create_character = { - template = master_of_hunt_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_master_of_hunt - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 1 = { - trigger = { - OR = { - can_employ_court_position_type = court_physician_court_position - employs_court_position = court_physician_court_position - } - } - create_character = { - template = court_physician_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_court_physician - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 1 = { - trigger = { - OR = { - can_employ_court_position_type = antiquarian_court_position - employs_court_position = antiquarian_court_position - } - } - create_character = { - template = antiquarian_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_antiquarian - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - 3 = { - trigger = { - OR = { - can_employ_court_position_type = court_tutor_court_position - employs_court_position = court_tutor_court_position - } - } - create_character = { - template = court_tutor_court_position_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - add_character_flag = migrant_court_tutor - } - save_scope_as = migrant_skilled_character - } - add_visiting_courtier = scope:migrant_skilled_character - } - } - } - - } - - option = { - name = tgp_tai_migration_event.2000.a # employ the character - culture = { - change_cultural_acceptance = { - target = culture:tai - value = 6 - desc = cultural_acceptance_gain_event - } - } - if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_wet_nurse - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = wet_nurse_court_position - } - } - else_if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_champion - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = champion_court_position - } - } - else_if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_travel_leader - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = travel_leader_court_position - } - } - else_if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_master_of_hunt - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = master_of_hunt_court_position - } - } - else_if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_antiquarian - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = antiquarian_court_position - } - } - else_if = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_court_tutor - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = court_tutor_court_position - } - } - else = { - limit = { - scope:migrant_skilled_character = { - has_character_flag = migrant_court_physician - } - } - courtier_replacement_scripted_effect = { - CHARACTER = scope:migrant_skilled_character - POSITION = court_physician_court_position - } - } - pay_treasury_or_gold = { - target = scope:migrant_skilled_character - value = medium_treasury_or_gold_value - } - ai_chance = { - base = 100 - } - } - option = { - name = tgp_tai_migration_event.2000.b # invite to court, but not as an employer - duel = { - skill = diplomacy - value = medium_skill_rating - 300 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - min = -49 - } - add_courtier = scope:migrant_skilled_character - send_interface_toast = { - title = tgp_tai_migration_event.2000.b.success - left_icon = root - right_icon = scope:migrant_skilled_character - add_prestige = minor_prestige_gain - } - } - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = -49 - } - show_as_tooltip = { - remove_courtier_or_guest = scope:migrant_skilled_character - } - hidden_effect = { - if = { # make option a's elder disappear only if he's not recruited with character interaction - limit = { - scope:migrant_skilled_character = { - NOT = { - is_courtier_of = root - } - } - } - scope:migrant_skilled_character = { - silent_disappearance_effect = yes - } - } - } - send_interface_toast = { - title = tgp_tai_migration_event.2000.b.failure - left_icon = root - right_icon = scope:migrant_skilled_character - add_prestige = minor_prestige_loss - } - } - } - } - option = { - name = tgp_tai_migration_event.2000.c # do not employ the character - show_as_tooltip = { - remove_courtier_or_guest = scope:migrant_skilled_character - } - hidden_effect = { - if = { # make option a's elder disappear only if he's not recruited with character interaction - limit = { - scope:migrant_skilled_character = { - NOT = { - is_courtier_of = root - } - } - } - scope:migrant_skilled_character = { - silent_disappearance_effect = yes - } - } - } - } - - after = { - - } -} - -# Noble Tai character and his family are asking for a county or a barony title -tgp_tai_migration_event.3000 = { - type = character_event - title = tgp_tai_migration_event.3000.t - desc = tgp_tai_migration_event.3000.desc - theme = realm - right_portrait = { - character = root - camera = camera_event_right_crowner_crowning - animation = personality_rational - } - left_portrait = { - character = scope:title_asking_noble_husband - camera = camera_event_group_talking_left_left - animation = admiration - } - cooldown = { years = 5 } - trigger = { - highest_held_title_tier >= tier_duchy - any_held_title = { - count > 2 - tier = tier_county - } - } - immediate = { - random_county_in_region = { # locate a Tai county where the character supposedly migrated from - region = custom_tai_migration_origin - limit = { - culture = { - has_cultural_pillar = heritage_tai - } - } - save_scope_as = migration_origin - holder = { - save_scope_as = migration_origin_holder - } - culture = { - save_scope_as = migration_origin_culture - } - faith = { - save_scope_as = migration_origin_faith - } - } - random_held_title = { - limit = { - tier = tier_county - NOT = { - this.county = root.capital_county - } - } - save_scope_as = target_asked_title - } - hidden_effect = { - create_character = { - template = local_noble_character - location = root.capital_province - gender = male - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - save_scope_as = title_asking_noble_husband - } - add_visiting_courtier = scope:title_asking_noble_husband - create_character = { - template = local_noble_character - location = root.capital_province - gender = female - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - marry = scope:title_asking_noble_husband - } - save_scope_as = title_asking_noble_wife - } - create_character = { - template = peasant_child_character - location = root.capital_province - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = male - after_creation = { - set_mother = scope:title_asking_noble_wife - set_father = scope:title_asking_noble_husband - } - save_scope_as = title_asking_noble_son - } - add_visiting_courtier = scope:title_asking_noble_husband - add_visiting_courtier = scope:title_asking_noble_wife - add_visiting_courtier = scope:title_asking_noble_son - } - } - - option = { - name = tgp_tai_migration_event.3000.a # accept - create_title_and_vassal_change = { - type = granted - save_scope_as = title_change - add_claim_on_loss = no - } - scope:target_asked_title = { - change_title_holder = { - holder = scope:title_asking_noble_husband - change = scope:title_change - } - } - resolve_title_and_vassal_change = scope:title_change - culture = { - change_cultural_acceptance = { - target = culture:tai - value = 8 - desc = cultural_acceptance_gain_event - } - } - house = { - change_house_relation_effect = { - HOUSE = scope:title_asking_noble_husband.house - VALUE = house_relation_improve_major_value - REASON = title_grant - CHAR = root - TARGET_CHAR = scope:title_asking_noble_husband - TITLE = scope:dummy_gender - } - } - reverse_add_opinion = { - modifier = received_title_county - target = scope:title_asking_noble_husband - } - reverse_add_opinion = { - modifier = loyalty_opinion - target = scope:title_asking_noble_son - } - add_hook = { - type = loyalty_hook - target = scope:title_asking_noble_husband - } - add_hook = { - type = loyalty_hook - target = scope:title_asking_noble_son - } - add_prestige = major_prestige_gain - stress_impact = { - greedy = medium_stress_impact_gain - generous = medium_stress_impact_loss - } - } - option = { - name = tgp_tai_migration_event.3000.b # reject - remove_courtier_or_guest = scope:title_asking_noble_husband - remove_courtier_or_guest = scope:title_asking_noble_wife - remove_courtier_or_guest = scope:title_asking_noble_son - stress_impact = { - generous = medium_stress_impact_gain - greedy = medium_stress_impact_loss - } - } - - after = { - - } -} - -# A family of peasants are asking to move into your court -tgp_tai_migration_event.4000 = { - type = character_event - title = tgp_tai_migration_event.4000.t - desc = tgp_tai_migration_event.4000.desc - window = big_event_window - theme = realm - right_portrait = { - character = root - camera = camera_event_center_pointing_very_left - animation = personality_rational - } - center_portrait = { - character = scope:lowborn_tai_family_husband - camera = camera_event_horse_right_facing_left_close - animation = admiration - } - left_portrait = { - character = scope:lowborn_tai_family_wife - camera = camera_event_group_talking_left_left - animation = personality_coward - } - lower_right_portrait = { - character = scope:lowborn_tai_family_son - } - lower_center_portrait = { - character = scope:lowborn_tai_family_daughter - } - cooldown = { years = 5 } - - immediate = { - random_county_in_region = { - region = custom_tai_migration_origin - limit = { - culture = { - has_cultural_pillar = heritage_tai - } - } - save_scope_as = migration_origin - holder = { - save_scope_as = migration_origin_holder - } - culture = { - save_scope_as = migration_origin_culture - } - faith = { - save_scope_as = migration_origin_faith - } - } - hidden_effect = { - create_character = { - template = generic_peasant_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = male - after_creation = { - set_to_lowborn = yes - } - save_scope_as = lowborn_tai_family_husband - } - create_character = { - template = generic_peasant_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = female - after_creation = { - set_to_lowborn = yes - marry = scope:lowborn_tai_family_husband - } - save_scope_as = lowborn_tai_family_wife - } - create_character = { - template = peasant_child_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = male - after_creation = { - set_to_lowborn = yes - set_mother = scope:lowborn_tai_family_wife - set_father = scope:lowborn_tai_family_husband - } - save_scope_as = lowborn_tai_family_son - } - create_character = { - template = peasant_child_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = female - after_creation = { - set_to_lowborn = yes - set_mother = scope:lowborn_tai_family_wife - set_father = scope:lowborn_tai_family_husband - } - save_scope_as = lowborn_tai_family_daughter - } - add_visiting_courtier = scope:lowborn_tai_family_husband - add_visiting_courtier = scope:lowborn_tai_family_wife - add_visiting_courtier = scope:lowborn_tai_family_son - add_visiting_courtier = scope:lowborn_tai_family_daughter - } - } - - option = { - name = tgp_tai_migration_event.4000.a # accept - add_courtier = scope:lowborn_tai_family_husband - add_courtier = scope:lowborn_tai_family_wife - add_courtier = scope:lowborn_tai_family_son - add_courtier = scope:lowborn_tai_family_daughter - culture = { - change_cultural_acceptance = { - target = culture:tai - value = 4 - desc = cultural_acceptance_gain_event - } - } - reverse_add_opinion = { - modifier = loyalty_opinion - target = scope:lowborn_tai_family_husband - } - add_hook = { - type = loyalty_hook - target = scope:lowborn_tai_family_husband - } - add_piety = medium_piety_gain - stress_impact = { - cynical = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - generous = medium_stress_impact_loss - } - } - option = { - name = tgp_tai_migration_event.4000.b # reject - show_as_tooltip = { - remove_courtier_or_guest = scope:lowborn_tai_family_husband - remove_courtier_or_guest = scope:lowborn_tai_family_wife - remove_courtier_or_guest = scope:lowborn_tai_family_son - remove_courtier_or_guest = scope:lowborn_tai_family_daughter - } - hidden_effect = { - if = { # make characters disappear only if they are not recruited with character interaction - limit = { - scope:lowborn_tai_family_husband = { - NOT = { - is_courtier_of = root - } - } - } - scope:lowborn_tai_family_husband = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - scope:lowborn_tai_family_wife = { - NOT = { - is_courtier_of = root - } - } - } - scope:lowborn_tai_family_wife = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - scope:lowborn_tai_family_son = { - NOT = { - is_courtier_of = root - } - } - } - scope:lowborn_tai_family_son = { - silent_disappearance_effect = yes - } - } - if = { - limit = { - scope:lowborn_tai_family_daughter = { - NOT = { - is_courtier_of = root - } - } - } - scope:lowborn_tai_family_daughter = { - silent_disappearance_effect = yes - } - } - } - stress_impact = { - compassionate = medium_stress_impact_gain - generous = medium_stress_impact_gain - cynical = medium_stress_impact_loss - } - } - - after = { - - } -} - -tgp_tai_migration_event.5000 = { # Spawn guests to migration target courts - hidden = yes - - cooldown = { years = 20 } - - immediate = { - random_county_in_region = { - region = custom_tai_migration_origin - limit = { - culture = { - has_cultural_pillar = heritage_tai - } - } - culture = { - save_scope_as = migration_origin_culture - } - faith = { - save_scope_as = migration_origin_faith - } - } - hidden_effect = { - random_list = { - 1 = { - create_character = { - template = beautiful_peasant_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - gender = female - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = witchy_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = merchant_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = hunter_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = very_good_eunuch_character - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = tgp_warrior_monk_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = tgp_court_brahmin_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - 1 = { - create_character = { - template = tgp_poet_lover_template - location = root.capital_province - dynasty = none - culture = scope:migration_origin_culture - faith = scope:migration_origin_faith - after_creation = { - set_to_lowborn = yes - } - save_scope_as = guest_tai_character - } - add_visiting_courtier = scope:guest_tai_character - } - } - } - } -} diff --git a/events/dlc/tgp/tgp_travel_danger_events.txt b/events/dlc/tgp/tgp_travel_danger_events.txt deleted file mode 100644 index f1a952de5..000000000 --- a/events/dlc/tgp/tgp_travel_danger_events.txt +++ /dev/null @@ -1,320 +0,0 @@ -namespace = tgp_travel_danger_events -#You encounter an orphan while traveling trough an area struck by natural disaster -tgp_travel_danger_events.0001 = { - type = character_event - title = tgp_travel_danger_events.0001.t - desc = { - desc = tgp_travel_danger_events.0001.intro - #Triggered desc based on success - first_valid = { - triggered_desc ={ - trigger = { - location = { - county = { - any_county_situation = { - situation_type = natural_disaster_flood - } - } - } - } - desc = tgp_travel_danger_events.0001.flood - } - triggered_desc ={ - trigger = { - location = { - county = { - any_county_situation = { - situation_type = natural_disaster_earthquake - } - } - } - } - desc = tgp_travel_danger_events.0001.earthquake - } - } - - desc = tgp_travel_danger_events.0001.desc - } - theme = travel_danger - - override_background = { - trigger = { - location = { - geographical_region = world_asia - county = { - any_county_situation = { - situation_type = natural_disaster_earthquake - } - } - } - } - reference = tgp_ruined_holding - } - override_background = { - trigger = { - location = { - geographical_region = world_asia - county = { - any_county_situation = { - situation_type = natural_disaster_flood - } - } - } - } - reference = tgp_overflowing_river - } - override_background = { - trigger = { - location = { - NOT = { geographical_region = world_asia } - county = { - any_county_situation = { - situation_type = natural_disaster_earthquake - } - } - } - } - reference = burning_building - } - override_background = { - trigger = { - location = { - NOT = { geographical_region = world_asia } - county = { - any_county_situation = { - situation_type = natural_disaster_flood - } - } - } - } - reference = bp3_riverside - } - override_effect_2d = { - trigger = { scope:disaster_situation = { situation_type = natural_disaster_earthquake } } - reference = smoke - } - override_effect_2d = { - trigger = { scope:disaster_situation = { situation_type = natural_disaster_flood } } - reference = rain - } - left_portrait = { - character = root - triggered_animation = { - trigger = { - has_trait_benevolent_trigger = yes - } - animation = stunned - } - triggered_animation = { - trigger = { - has_trait_malicious_trigger = yes - } - animation = dismissal - } - - animation = disbelief - camera = camera_event_scheme_left - } - right_portrait = { - character = scope:peasant_character_child - animation = sadness - camera = camera_event_right_pointing_left - } - cooldown = { years = 20 } - - trigger = { - is_location_valid_for_travel_event_on_land = yes - is_available_travelling_adult = yes - - location = { - county = { - any_county_situation = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - } - } - } - } - - immediate = { - location.county = { - random_county_situation = { - limit = { - tgp_natural_disaster_situation_is_disaster_trigger = yes - } - save_scope_as = disaster_situation - } - } - if = { - limit = { - any_pool_character = { - province = root.location - age = { 8 12 } - has_trait = diligent - faith = root.location.faith - culture = root.location.culture - } - } - random_pool_character = { - province = root.location - limit = { - age = { 8 12 } - has_trait = diligent - faith = root.location.faith - culture = root.location.culture - } - save_scope_as = peasant_character_child - } - } - else = { - create_character = { - template = peasant_child_character - age = { 8 12 } - trait = diligent - faith = root.location.faith - culture = root.location.culture - location = root.location - - save_scope_as = peasant_character_child - } - } - scope:peasant_character_child = { - remove_character_flag ?= peasant_outfit - } - } - #Send men to clear the rubble - option = { - name = tgp_travel_danger_events.0001.a - current_travel_plan = { - delay_travel_plan = { days = 10 } - } - if = { - limit = { - government_allows = merit - } - change_merit = medium_merit_gain - } - else = { - add_prestige = medium_prestige_gain - } - stress_impact = { - impatient = medium_stress_impact_gain - compassionate = medium_stress_impact_loss - } - scope:peasant_character_child = { - if = { - limit = { - is_pool_character = no - } - silent_disappearance_ai_effect = yes - } - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - modifier = { - factor = 0 - has_trait = impatient - } - } - } - - #Take the child on as a ward - option = { - name = tgp_travel_danger_events.0001.b - trigger = { - num_of_relation_ward < 2 - } - show_as_tooltip = { add_courtier = scope:peasant_character_child } - hidden_effect = { - scope:peasant_character_child = { - add_to_court_and_entourage_effect = yes - } - } - scope:peasant_character_child = { set_relation_guardian = root } - - if = { - limit = { - root.current_travel_plan = { - any_entourage_character = { has_trait = compassionate } - } - } - root.current_travel_plan = { - every_entourage_character = { - custom = custom.every_compassionate_entourage_character - limit = { has_trait = compassionate } - add_opinion = { - target = root - modifier = impressed_by_kindness - opinion = 15 - } - } - } - } - if = { - limit = { faith = { trait_is_virtue = compassionate } } - add_piety = medium_piety_gain - } - stress_impact = { - callous = major_stress_impact_gain - sadistic = major_stress_impact_gain - compassionate = major_stress_impact_loss - } - - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = 1 - ai_vengefulness = -1 - } - modifier = { - factor = 5 - has_trait = compassionate - } - modifier = { - factor = 5 - OR = { - has_trait = wrathful - has_trait = callous - has_trait = sadistic - } - } - } - } - #Ignore the child - option = { - name = tgp_travel_danger_events.0001.c - - current_travel_plan ?= { - add_destination_progress = { days = 5 } - } - - scope:peasant_character_child = { - if = { - limit = { - is_pool_character = no - } - silent_disappearance_ai_effect = yes - } - } - stress_impact = { - compassionate = major_stress_impact_gain - impatient = major_stress_impact_loss - } - ai_chance = { - base = 100 - ai_value_modifier = { - ai_compassion = -1 - ai_vengefulness = 1 - } - modifier = { - factor = 0 - has_trait = compassionate - } - } - } -} - diff --git a/events/dlc/tgp/tgp_tribute_mission_events.txt b/events/dlc/tgp/tgp_tribute_mission_events.txt deleted file mode 100644 index aebab4ae9..000000000 --- a/events/dlc/tgp/tgp_tribute_mission_events.txt +++ /dev/null @@ -1,4739 +0,0 @@ -namespace = tribute_mission - - -# 0001 -> Hidden: Set the parameters - -## Character Events ## -# 1000 -> Tributary: Fork over Tribute, try to influence reward -# 1002 -> Overlord: Do you want the Human Tribute? -# 1005 -> Overlord: Decide the reward -# 1006 -> Overlord: CHINA - Decide whether to grant a Seal of Investiture or not -# 1007 -> Tributary: CHINA - Receive the Seal of Investiture -# 1008 -> Tributary: HEGEMON - Decide whether to become a Tributary or not -# 1010 -> Tributary: Receive reward, go home - -## Court Events ## -# 3000 -> Tributary: Fork over Tribute, try to influence reward -# 3002 -> Overlord: Do you want the Human Tribute? ###DEPRECATED -# 3005 -> Overlord: Decide the reward ###DEPRECATED -# 3010 -> Tributary: Receive reward, go home - -## Letter Events ## -# 9000 -> Tributary: Overlord is informing you of your imminent loss of tributary-status (unless you Tribute Mission) -# 9500 -> Tributary: You ignored the Tribute Mission, Overlord goes bye-bye - -## Travel Events ## -# 9750 -> Tributary: You lost your Human Tribute -# 9760 -> Tributary: Your to-be Eunuch is trying to escape - -# Note on scope naming: 'overlord_scope' and 'tributary_scope' can be misleading since it's technically possible for some -# non-tributaries to go on tribute missions as well. Consider these equivalent to "tribute receiver" and "tribute payer". - -scripted_trigger tribute_mission_1000_available_receiver_trigger = { - is_available = yes - location = scope:overlord_scope.capital_province -} - -#Hidden: Set the parameters -tribute_mission.0001 = { - hidden = yes - immediate = { - #Determine who is who - save_scope_as = tributary_scope - var:tribute_mission_target_scope ?= { save_scope_as = overlord_scope } - #Who is the receiving character? - scope:overlord_scope = { - #Overlord - if = { - limit = { - is_available = yes - is_adult = yes - } - save_scope_as = receiving_character - } - #Diarch - else_if = { - limit = { - diarch ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - diarch = { save_scope_as = receiving_character } - } - #Councillor - else_if = { - limit = { - OR = { - cp:councillor_court_chaplain ?= { tribute_mission_1000_available_receiver_trigger = yes } - cp:councillor_chancellor ?= { tribute_mission_1000_available_receiver_trigger = yes } - cp:councillor_steward ?= { tribute_mission_1000_available_receiver_trigger = yes } - cp:councillor_marshal ?= { tribute_mission_1000_available_receiver_trigger = yes } - cp:councillor_spymaster ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - } - if = { - limit = { - cp:councillor_steward ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - cp:councillor_steward = { save_scope_as = receiving_character } - } - if = { - limit = { - NOT = { exists = scope:receiving_character } - cp:councillor_chancellor ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - cp:councillor_chancellor = { save_scope_as = receiving_character } - } - if = { - limit = { - NOT = { exists = scope:receiving_character } - cp:councillor_spymaster ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - cp:councillor_spymaster = { save_scope_as = receiving_character } - } - if = { - limit = { - NOT = { exists = scope:receiving_character } - cp:councillor_court_chaplain ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - cp:councillor_court_chaplain = { save_scope_as = receiving_character } - } - if = { - limit = { - NOT = { exists = scope:receiving_character } - cp:councillor_marshal ?= { tribute_mission_1000_available_receiver_trigger = yes } - } - cp:councillor_marshal = { save_scope_as = receiving_character } - } - } - #Random attendant - else = { - create_character = { - template = servant_character - location = scope:overlord_scope.capital_province - culture = scope:overlord_scope.capital_province.culture - faith = scope:overlord_scope.capital_province.faith - dynasty = none - save_scope_as = receiving_character - } - scope:receiving_character = { - remove_character_flag = peasant_outfit - add_character_flag = created_attendant - } - scope:overlord_scope = { - hidden_effect = { add_courtier = scope:receiving_character } - } - } - # Save Overlord's opinion of the Tributary - save_opinion_value_as = { - name = opinion_of_tributary - target = scope:tributary_scope - } - } - #Set up the human tribute scopes - if = { - limit = { var:tribute_mission_type ?= flag:concubine_tribute } - var:offered_concubine ?= { save_scope_as = concubine_character } - } - if = { - limit = { var:tribute_mission_type ?= flag:eunuch_tribute } - var:offered_eunuch ?= { - save_scope_as = eunuch_character - if = { - limit = { is_eunuch_trigger = no } - remove_opinion = { - modifier = slated_for_castration_opinion - target = scope:tributary_scope - } - add_trait = eunuch_1 - add_opinion = { - modifier = castration_opinion - target = scope:tributary_scope - opinion = -50 - } - add_character_flag = { - flag = tribute_mission_recently_castrated - days = 30 - } - } - } - } - #... or the non-living scopes - if = { - limit = { var:tribute_mission_type ?= flag:artifact_tribute } - var:offered_artifact ?= { save_scope_as = artifact_to_tribute } - } - if = { - limit = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - var:offered_bunga_mas ?= { save_scope_as = artifact_to_tribute } - } - #Hol' up while we're here - hidden_effect = { - current_travel_plan ?= { pause_travel_plan = yes } - } - #Roll for Bunga Mas - if = { - limit = { - is_ai = yes - scope:overlord_scope = { - government_has_flag = government_is_mandala - NOT = { has_variable = bunga_mas_cooldown } - } - } - random = { - chance = 1 - modifier = { - scope:overlord_scope = { has_unruined_mandala_capital_trigger = yes } - add = { - value = scope:overlord_scope.mandala_radiance_value - divide = 10 - } - } - scope:overlord_scope = { - get_artifact_quality_effect = yes - get_artifact_wealth_effect = yes - set_variable = { - name = bunga_mas_cooldown - years = 5 - } - } - hidden_effect_new_object = { - scope:tributary_scope = { - create_bunga_mas_artifact_effect = yes - } - scope:newly_created_bunga_mas = { - remove_artifact_modifier = artifact_placeholder_modifier - if = { - limit = { rarity = illustrious } - set_artifact_description = tribute_mission_illustrious_bunga_mas_desc - add_artifact_modifier = artifact_legitimacy_gain_mult_5_modifier - add_artifact_modifier = artifact_health_gain_3_modifier - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - } - add_artifact_modifier = artifact_seduce_scheme_phase_duration_add_3_modifier - add_artifact_modifier = artifact_fertility_gain_3_modifier - add_artifact_modifier = artifact_build_gold_cost_3_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - } - add_artifact_modifier = artifact_befriend_scheme_phase_duration_add_3_modifier - add_artifact_modifier = artifact_scheme_resistance_add_3_modifier - add_artifact_modifier = artifact_stress_gain_4_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - add_artifact_modifier = artifact_pursue_efficiency_2_modifier - add_artifact_modifier = artifact_prowess_4_modifier - add_artifact_modifier = artifact_knight_limit_1_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - } - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_10_modifier - add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_10_modifier - add_artifact_modifier = artifact_owned_scheme_secrecy_add_10_modifier - } - } - else_if = { - limit = { rarity = famed } - set_artifact_description = tribute_mission_famed_bunga_mas_desc - add_artifact_modifier = artifact_legitimacy_gain_mult_4_modifier - add_artifact_modifier = artifact_health_gain_2_modifier - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_creation } - } - } - add_artifact_modifier = artifact_seduce_scheme_phase_duration_add_2_modifier - add_artifact_modifier = artifact_fertility_gain_1_modifier - add_artifact_modifier = artifact_build_gold_cost_1_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_serenity } - } - } - add_artifact_modifier = artifact_befriend_scheme_phase_duration_add_2_modifier - add_artifact_modifier = artifact_scheme_resistance_add_1_modifier - add_artifact_modifier = artifact_stress_gain_2_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_destruction } - } - } - add_artifact_modifier = artifact_pursue_efficiency_1_modifier - add_artifact_modifier = artifact_prowess_2_modifier - } - if = { - limit = { - scope:overlord_scope = { - house = { has_house_aspiration_parameter = aspect_of_trickery } - } - } - add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_5_modifier - add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_5_modifier - add_artifact_modifier = artifact_owned_scheme_secrecy_add_5_modifier - } - } - else_if = { - limit = { rarity = masterwork } - set_artifact_description = tribute_mission_masterwork_bunga_mas_desc - add_artifact_modifier = artifact_legitimacy_gain_mult_3_modifier - add_artifact_modifier = artifact_health_gain_1_modifier - } - else = { - set_artifact_description = tribute_mission_common_bunga_mas_desc - add_artifact_modifier = artifact_legitimacy_gain_mult_2_modifier - } - } - } - } - } - #Do they have a royal court and is the overlord available? Trigger court event for the tributary - if = { - limit = { - scope:overlord_scope = { - has_royal_court = yes - this = scope:receiving_character - } - } - trigger_event = tribute_mission.3000 - } - else = { trigger_event = tribute_mission.1000 } - } -} - -tribute_mission.0002 = { - hidden = yes - #Double-check the status of the human tribute - immediate = { - if = { - limit = { - OR = { - AND = { - var:tribute_mission_type ?= flag:concubine_tribute - var:offered_concubine ?= { is_alive = no } - } - AND = { - var:tribute_mission_type ?= flag:eunuch_tribute - var:offered_eunuch ?= { is_alive = no } - } - } - } - add_character_flag = revisit_tribute_mission_0001 - trigger_event = tribute_mission.9750 - } - else = { trigger_event = tribute_mission.0001 } - } -} - -#Make any stray created attendant disappear -tribute_mission.0005 = { - hidden = yes - immediate = { silent_disappearance_effect = yes } -} - - -### TRIBUTES ### -#Gold -scripted_trigger tribute_mission_1000_gold_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_gold_value } -} - -scripted_effect tribute_mission_1000_fork_over_gold_effect = { - scope:overlord_scope = { add_gold = scope:tributary_scope.var:offered_gold_value } -} - -#Herd -scripted_trigger tribute_mission_1000_herd_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_herd_value } -} - -scripted_effect tribute_mission_1000_fork_over_herd_effect = { - scope:overlord_scope = { add_gold = herd_conversion_tribute_value } -} - -#Concubine -scripted_trigger tribute_mission_1000_concubine_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_concubine } -} - -scripted_effect tribute_mission_1000_common_arrival_effect = { - #Save the concubine - if = { - limit = { exists = scope:concubine_character } - scope:concubine_character = { save_scope_as = human_tribute } - } - #Save the eunuch - if = { - limit = { exists = scope:eunuch_character } - scope:eunuch_character = { save_scope_as = human_tribute } - } - #If we're gifting an artifact - scope:artifact_to_tribute ?= { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 10 - } - } - #Or a Bunga Mas - scope:newly_created_bunga_mas ?= { - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 10 - } - } - #Grant Legitimacy to Hegemonic Suzerains depending on the tier of the tributary - if = { - limit = { scope:overlord_scope = { highest_held_title_tier = tier_hegemony } } - save_temporary_scope_value_as = { - name = legitimacy_gain - value = { - switch = { - trigger = scope:tributary_scope.primary_title.tier - tier_county = { - add = miniscule_legitimacy_gain - } - tier_duchy = { - add = minor_legitimacy_gain - } - tier_kingdom = { - add = medium_legitimacy_gain - } - tier_empire = { - add = major_legitimacy_gain - } - } - } - } - scope:overlord_scope = { - send_interface_toast = { - type = event_toast_effect_good - title = tribute_mission_suzerain_legitimacy_gain_title - left_icon = scope:tributary_scope - right_icon = this - add_legitimacy_effect = { LEGITIMACY = scope:legitimacy_gain } - } - } - } -} - -scripted_effect tribute_mission_1000_make_concubine_effect = { - hidden_effect = { - scope:tributary_scope = { - current_travel_plan ?= { remove_character = scope:concubine_character } - } - } - make_concubine = scope:concubine_character # make_concubine inherently also adds them as a courtier first, for reference -} - -scripted_effect tribute_mission_1000_make_courtier_effect = { - hidden_effect = { - scope:tributary_scope = { - current_travel_plan ?= { remove_character = $HUMAN_TRIB$ } - } - } - if = { - limit = { - $HUMAN_TRIB$ = { - employer != scope:overlord_scope - } - } - scope:overlord_scope = { add_courtier = $HUMAN_TRIB$ } - } -} - -scripted_trigger tribute_mission_1000_overlord_can_employ_concubine_trigger = { - scope:overlord_scope = { allowed_more_concubines = yes } -} - -scripted_effect tribute_mission_1000_fork_over_concubine_effect = { - scope:overlord_scope = { - #If the overlord is AI, they've already accepted the concubine via the interaction so just assign them right away - if = { - limit = { is_ai = yes } - if = { - limit = { tribute_mission_1000_overlord_can_employ_concubine_trigger = yes } - tribute_mission_1000_make_concubine_effect = yes - } - else = { - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:concubine_character } - } - } - } -} - -#Eunuch -scripted_trigger tribute_mission_1000_eunuch_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_eunuch } -} - -#Artifact -scripted_trigger tribute_mission_1000_artifact_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_artifact } -} - -scripted_effect tribute_mission_1000_fork_over_artifact_effect = { - scope:artifact_to_tribute = { set_owner = scope:overlord_scope } -} - -#Bunga Mas -scripted_trigger tribute_mission_1000_bunga_mas_tributary_trigger = { - scope:tributary_scope = { has_variable = offered_bunga_mas } -} - -scripted_effect tribute_mission_1000_determine_bunga_mas_scale_effect = { - if = { - limit = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - if = { - limit = { - scope:artifact_to_tribute = { rarity = illustrious } - } - set_variable = { - name = bunga_mas_tribute_modifier - value = 3 - years = 10 - } - } - else_if = { - limit = { - scope:artifact_to_tribute = { rarity = famed } - } - set_variable = { - name = bunga_mas_tribute_modifier - value = 2 - years = 10 - } - } - else_if = { - limit = { - scope:artifact_to_tribute = { rarity = masterwork } - } - random_list = { - 50 = { - set_variable = { - name = bunga_mas_tribute_modifier - value = 2 - years = 10 - } - } - 50 = { - set_variable = { - name = bunga_mas_tribute_modifier - value = 1 - years = 10 - } - } - } - } - else = { - set_variable = { - name = bunga_mas_tribute_modifier - value = 1 - years = 10 - } - } - } -} - -#Give the actual Tribute -scripted_effect tribute_mission_1000_fork_over_tribute_effect = { - if = { - limit = { tribute_mission_1000_gold_tributary_trigger = yes } - tribute_mission_1000_fork_over_gold_effect = yes - } - if = { - limit = { tribute_mission_1000_herd_tributary_trigger = yes } - tribute_mission_1000_fork_over_herd_effect = yes - } - if = { - limit = { tribute_mission_1000_concubine_tributary_trigger = yes } - tribute_mission_1000_fork_over_concubine_effect = yes - } - if = { - limit = { tribute_mission_1000_eunuch_tributary_trigger = yes } - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:eunuch_character } - } - if = { - limit = { tribute_mission_1000_artifact_tributary_trigger = yes } - tribute_mission_1000_fork_over_artifact_effect = yes - } - #Bunga Mas! - if = { - limit = { exists = scope:newly_created_bunga_mas } - scope:newly_created_bunga_mas = { set_owner = scope:overlord_scope } - } - if = { - limit = { tribute_mission_1000_bunga_mas_tributary_trigger = yes } - tribute_mission_1000_fork_over_artifact_effect = yes #We should be able to reuse this - } - - #Some Mandala piety - tribute_mission_mandala_piety_effect = yes -} - -#If the Overlord is not AI and are away, notify them what they got -scripted_effect tribute_mission_1000_fork_over_with_notification_effect = { - if = { - limit = { - scope:overlord_scope != scope:receiving_character - scope:overlord_scope = { is_ai = no } - } - #If the overlord isn't available and is a player, let them know what happened - scope:overlord_scope = { - send_interface_message = { - type = event_tribute_good_with_text - title = tribute_mission_notification.title - left_icon = scope:tributary_scope - desc = tribute_mission_notification.desc - tribute_mission_1000_fork_over_tribute_effect = yes - } - } - } - else = { tribute_mission_1000_fork_over_tribute_effect = yes } -} - -#What options should an AI receiver be able to use when the Overlord is an unavailable player -scripted_trigger tribute_mission_1000_is_available_to_ai_receiver_trigger = { - scope:overlord_scope != scope:receiving_character - scope:receiving_character = { is_ai = yes } - scope:overlord_scope = { - is_ai = no - #Mainly for Hegemons - has_treasury = yes - } -} - -### REWARDS ### -scripted_effect tribute_mission_1000_display_potential_rewards_effect = { - show_as_tooltip = { - random_list = { - #Treasury - 10 = { - trigger = { tribute_mission_1000_can_give_treasury_trigger = yes } - show_chance = no - desc = tribute_mission.1000.abstain.treasury.desc - tribute_mission_1000_give_treasury_effect = yes - } - #Artifact - 10 = { - trigger = { tribute_mission_1000_can_set_artifact_reward_trigger = yes } - show_chance = no - desc = tribute_mission.1000.abstain.artifact.desc - custom_tooltip = tribute_mission.1000.artifact.tt - } - #Innovation - 10 = { - trigger = { tribute_mission_1000_can_set_innovation_reward_trigger = yes } - show_chance = no - desc = tribute_mission.1000.abstain.innovation.desc - custom_tooltip = tribute_mission.1000.innovation.tt - } - #Development - 10 = { - trigger = { tribute_mission_1000_eligible_development_trigger = yes } - show_chance = no - desc = tribute_mission.1000.abstain.development.desc - tribute_mission_1000_give_development_effect = yes - } - #Monk - 10 = { - trigger = { tribute_mission_1000_eligible_for_monk_trigger = yes } - show_chance = no - desc = tribute_mission.1000.abstain.monk.desc - custom_tooltip = tribute_mission.1000.monk.tt - } - #Generic Legitimacy - 10 = { - show_chance = no - desc = tribute_mission.1000.abstain.legitimacy.desc - tribute_mission_1000_give_legitimacy_effect = yes - } - } - if = { - limit = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - add_character_modifier = { - modifier = bunga_mas_tribute_modifier - years = 10 - } - } - } -} - -#China: Treasury / Trade Goods -scripted_trigger tribute_mission_1000_can_give_treasury_trigger = { - trigger_if = { - limit = { - scope:overlord_scope = { has_treasury = yes } - } - scope:overlord_scope.treasury > tribute_treasury_reward_value - } - trigger_else = { always = no } - tribute_mission_1000_is_available_to_ai_receiver_trigger = no -} - -scripted_effect tribute_mission_1000_set_treasury_reward_effect = { - if = { - limit = { - NOT = { exists = scope:tribute_reward_type_treasury } - } - save_scope_value_as = { - name = tribute_reward_type_treasury - value = tribute_treasury_reward_value - } - } -} - -#Artifact -scripted_trigger tribute_mission_1000_can_set_artifact_reward_trigger = { - tribute_mission_1000_is_available_to_ai_receiver_trigger = no -} - -scripted_trigger tribute_mission_1000_eligible_smith_trigger = { - is_physically_able_ai_adult = yes - OR = { - #Someone new? - AND = { - has_no_particular_noble_roots_trigger = yes - } - #A previous smithy - has_variable = tribute_mission_1000_smith - } -} - -scripted_effect tribute_mission_1000_eligible_smith_scope_effect = { - if = { - limit = { - any_pool_character = { - province = scope:overlord_scope.capital_province - tribute_mission_1000_eligible_smith_trigger = yes - } - } - random_pool_character = { - province = scope:overlord_scope.capital_province - limit = { tribute_mission_1000_eligible_smith_trigger = yes } - save_scope_as = smith_character - } - } - else = { - create_character = { - template = merchant_template - location = scope:overlord_scope.capital_province - culture = scope:overlord_scope.capital_province.culture - faith = scope:overlord_scope.capital_province.faith - dynasty = none - save_scope_as = smith_character - after_creation = { set_variable = tribute_mission_1000_smith } - } - } - if = { - limit = { NOT = { exists = scope:smith_character } } - error_log = "Failed to create a valid smith in tribute_mission_1000_eligible_smith_scope_effect!" - } -} - -scripted_effect tribute_mission_1000_reward_cost_effect = { - #A small fee for human players - if = { - limit = { is_ai = no } - if = { - limit = { scope:overlord_scope = { has_treasury = yes } } - remove_treasury = scope:overlord_scope.tribute_reward_treasury_cost - } - else = { - remove_short_term_gold = miniscule_gold_value - } - } -} - -scripted_effect tribute_mission_1000_set_artifact_reward_effect = { - scope:overlord_scope = { - #A small fee for human players - tribute_mission_1000_reward_cost_effect = yes - hidden_effect = { - #Randomize the quality, somewhat - random_list = { - 50 = { - get_artifact_quality_effect = yes - get_artifact_wealth_effect = yes - } - 25 = { set_artifact_rarity_famed = yes } - 10 = { - trigger = { has_relation_best_friend = scope:tributary_scope } - set_artifact_rarity_illustrious = yes - } - } - #Create the artifact - hidden_effect_new_object = { - #Who is making it - tribute_mission_1000_eligible_smith_scope_effect = yes - #What are we making - random_list = { - 10 = { - create_artifact_armor_effect = { - OWNER = scope:overlord_scope - CREATOR = scope:smith_character - SET_ARMOR_TYPE = flag:no - } - } - 10 = { - create_artifact_regalia_effect = { - OWNER = scope:overlord_scope - SMITH = scope:smith_character - } - } - 10 = { - create_artifact_brooch_effect = { - OWNER = scope:overlord_scope - SMITH = scope:smith_character - } - } - 10 = { - create_artifact_necklace_effect = { - OWNER = scope:overlord_scope - SMITH = scope:smith_character - } - } - 10 = { - create_artifact_ring_effect = { - OWNER = scope:overlord_scope - SMITH = scope:smith_character - } - } - 10 = { - create_artifact_weapon_effect = { - OWNER = scope:overlord_scope - CREATOR = scope:smith_character - SET_WEAPON_TYPE = flag:artifact_weapon_type_dagger - } - } - } - scope:newly_created_artifact = { - save_scope_as = tribute_reward_type_artifact - add_artifact_modifier = artifact_legitimacy_gain_mult_4_modifier - set_variable = { - name = suppress_artifact_notifications - value = yes - days = 10 - } - } - } - } - } -} - -#Innovation -scripted_trigger tribute_mission_1000_eligible_innovation_trigger = { - NOT = { is_known_by_culture = scope:tributary_scope.culture } - culture_can_know_innovation = scope:tributary_scope.culture -} - -scripted_trigger tribute_mission_1000_can_set_innovation_reward_trigger = { - NOT = { scope:tributary_scope.culture = scope:overlord_scope.culture } - OR = { - #Either they have a fascination we can feed/progress - scope:tributary_scope.culture = { culture_has_any_fascination = yes } - #Or we have an innovation they can unlock to research - scope:overlord_scope.culture = { - any_known_innovation = { tribute_mission_1000_eligible_innovation_trigger = yes } - } - } -} - -scripted_effect tribute_mission_1000_set_innovation_reward_effect = { - if = { - limit = { - scope:overlord_scope.culture = { - any_known_innovation = { tribute_mission_1000_eligible_innovation_trigger = yes } - } - } - scope:saved_innovation = { save_scope_as = tribute_reward_type_innovation } - } - else = { - save_scope_value_as = { - name = tribute_reward_type_innovation # This scope still needs to exist and be consistent for loc triggers and other things - value = yes - } - scope:tributary_scope = { - set_variable = { - name = tribute_reward_fascination_progress # But the comparison will break if the scope can be two different things, so we use a variable - value = yes - } - } - } -} - -#Development -scripted_trigger tribute_mission_1000_eligible_development_trigger = { - scope:overlord_scope.capital_province != scope:tributary_scope.capital_province - scope:tributary_scope.capital_county = { - NOT = { has_county_modifier = suzerain_trade_post_modifier } - } - tribute_mission_1000_is_available_to_ai_receiver_trigger = no -} - -scripted_effect tribute_mission_1000_set_development_reward_effect = { - scope:overlord_scope = { - #A small fee for human players - tribute_mission_1000_reward_cost_effect = yes - save_scope_value_as = { - name = tribute_reward_type_development - value = yes - } - } -} - -#Mandala: Priest -scripted_trigger tribute_mission_1000_eligible_for_monk_trigger = { - scope:overlord_scope = { - government_has_flag = government_is_mandala - NOR = { - faith = { has_doctrine_parameter = unreformed } - faith = scope:tributary_scope.faith - } - } - scope:tributary_scope.faith = { has_doctrine_parameter = unreformed } -} - -scripted_effect tribute_mission_1000_set_monk_reward_effect = { - scope:overlord_scope = { - #A small fee for human players - tribute_mission_1000_reward_cost_effect = yes - } - hidden_effect_new_object = { - create_character = { - location = scope:overlord_scope.capital_province - template = monk_character_template - culture = scope:overlord_scope.culture - faith = scope:overlord_scope.faith - save_scope_as = new_monk - after_creation = { - add_character_flag = suzerains_missionary - } - } - } - save_scope_value_as = { - name = tribute_reward_type_monk - value = scope:new_monk - } -} - -#Generic Legitimacy -scripted_trigger tribute_mission_1000_eligible_legitimacy_trigger = { - scope:receiving_character = scope:overlord_scope -} - -scripted_effect tribute_mission_1000_set_legitimacy_reward_effect = { - save_scope_value_as = { - name = tribute_reward_type_legitimacy - value = yes - } -} - -#Determine the reward -scripted_effect tribute_mission_1000_generate_reward_effect = { - #Were we successfully influenced? - if = { - limit = { scope:successful_influence ?= flag:treasury } - tribute_mission_1000_set_treasury_reward_effect = yes - save_scope_value_as = { - name = decided_on_treasury_reward - value = flag:yes - } - } - else_if = { - limit = { scope:successful_influence ?= flag:artifact } - tribute_mission_1000_set_artifact_reward_effect = yes - } - else_if = { - limit = { scope:successful_influence ?= flag:innovation } - tribute_mission_1000_set_innovation_reward_effect = yes - } - else_if = { - limit = { scope:successful_influence ?= flag:development } - tribute_mission_1000_set_development_reward_effect = yes - } - else = { - hidden_effect = { - random_list = { - #Treasury - 10 = { - trigger = { tribute_mission_1000_can_give_treasury_trigger = yes } - tribute_mission_1000_set_treasury_reward_effect = yes - save_scope_value_as = { - name = decided_on_treasury_reward - value = flag:yes - } - } - #Artifact - 10 = { - tribute_mission_1000_set_artifact_reward_effect = yes - } - #Innovation - 10 = { - trigger = { tribute_mission_1000_can_set_innovation_reward_trigger = yes } - tribute_mission_1000_set_innovation_reward_effect = yes - } - #Development - 10 = { - trigger = { tribute_mission_1000_eligible_development_trigger = yes } - tribute_mission_1000_set_development_reward_effect = yes - } - #Priest - 50 = { - trigger = { tribute_mission_1000_eligible_for_monk_trigger = yes } - tribute_mission_1000_set_monk_reward_effect = yes - } - #Generic Legitimacy - 25 = { - trigger = { tribute_mission_1000_eligible_legitimacy_trigger = yes } - tribute_mission_1000_set_legitimacy_reward_effect = yes - } - } - } - } -} - -#These are re-used for when the player Overlord picks the reward -scripted_effect tribute_mission_1000_give_treasury_effect = { - scope:overlord_scope = { remove_treasury = scope:tribute_reward_type_treasury } - scope:tributary_scope = { add_gold = scope:tribute_reward_type_treasury } -} - -scripted_effect tribute_mission_1000_give_artifact_effect = { - scope:tribute_reward_type_artifact = { set_owner = scope:tributary_scope } -} - -scripted_effect tribute_mission_1000_give_innovation_progress_effect = { - if = { - limit = { - scope:tributary_scope = { - has_variable = tribute_reward_fascination_progress - } - } - scope:tributary_scope.culture = { - add_fascination_progress = tribute_reward_fascination_progress_value - } - } - else = { - scope:tributary_scope.culture = { - add_innovation_progress = { - value = tribute_reward_innovation_progress_value - target = scope:tribute_reward_type_innovation - } - } - } -} - -scripted_effect tribute_mission_1000_give_development_effect = { - scope:tributary_scope.capital_county = { - add_county_modifier = { - modifier = suzerain_trade_post_modifier - years = 10 - } - } -} - -scripted_effect tribute_mission_1000_give_monk_effect = { - scope:tributary_scope = { - add_courtier = scope:new_monk - current_travel_plan = { - add_companion = scope:new_monk - } - } - scope:overlord_scope.faith = { - change_fervor = { - value = 5 - desc = fervor_gain_suzerain_missionaries - } - } -} - -scripted_effect tribute_mission_1000_give_legitimacy_effect = { - scope:tributary_scope = { - add_legitimacy_effect = { LEGITIMACY = tribute_generic_legitimacy_reward_value } - } -} - -scripted_effect tribute_mission_1000_rejection_effect = { - scope:tributary_scope = { - add_legitimacy = { - value = tribute_legitimacy_reward_value - multiply = -1 - } - add_opinion = { - target = scope:overlord_scope - modifier = annoyed_opinion - opinion = -50 - } - } -} - -scripted_effect tribute_mission_1000_generic_reward_effect = { - scope:tributary_scope = { - if = { - limit = { is_ai = yes } - add_opinion = { - modifier = pleased_opinion - opinion = 40 - target = scope:overlord_scope - } - } - if = { - limit = { exists = scope:tribute_reward_type_legitimacy } - tribute_mission_1000_give_legitimacy_effect = yes - } - else = { - add_legitimacy_effect = { LEGITIMACY = tribute_legitimacy_reward_value } - } - #Disburse the Bunga Mas modifier! - if = { - limit = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - add_character_modifier = { - modifier = bunga_mas_tribute_modifier - years = 10 - } - } - } -} - -#Actually disburse the reward -scripted_effect tribute_mission_1000_disburse_reward_effect = { - if = { - limit = { - exists = scope:tribute_reward_type_treasury - scope:decided_on_treasury_reward = flag:yes - } - tribute_mission_1000_give_treasury_effect = yes - } - if = { - limit = { exists = scope:tribute_reward_type_artifact } - tribute_mission_1000_give_artifact_effect = yes - } - if = { - limit = { exists = scope:tribute_reward_type_innovation } - tribute_mission_1000_give_innovation_progress_effect = yes - } - if = { - limit = { exists = scope:tribute_reward_type_development } - tribute_mission_1000_give_development_effect = yes - } - if = { - limit = { exists = scope:tribute_reward_type_monk } - tribute_mission_1000_give_monk_effect = yes - } - #Generic Legitimacy is baked into the tribute_mission_1000_generic_reward_effect - - scope:tributary_scope = { - if = { # if the contract uses Subject Standing, grant some - limit = { subject_standing >= 0 } - hidden_effect = { - send_interface_toast = { - type = event_toast_effect_good - title = tribute_mission_tributary_subject_standing_gain_title - left_icon = this - right_icon = scope:overlord_scope - - # add minimum 5, maximum 30, average 10 (if unsuccessful) or 17.5 (if successful) - add_subject_standing = { - value = 10 - if = { - limit = { exists = scope:successful_influence } - add = { - integer_range = { - min = 0 - max = 15 - } - } - } - add = { - integer_range = { - min = -5 - max = 5 - } - } - } - } - } - if = { - limit = { exists = scope:successful_influence } - custom_tooltip = tribute_mission_tributary_subject_standing_gain_tt_major - } - else = { - custom_tooltip = tribute_mission_tributary_subject_standing_gain_tt_minor - } - } - } - - tribute_mission_1000_generic_reward_effect = yes -} - - -### INFLUENCE ### -#Influence duel -scripted_effect tribute_mission_1000_determine_duel_skill_effect = { - random_list = { - 10 = { - trigger = { - scope:tributary_scope = { highest_skill = diplomacy } - } - tribute_mission_1000_duel_effect = { - INFLUENCED_REWARD = $INFLUENCED_REWARD$ - REWARD_INCREMENT = $REWARD_INCREMENT$ - SKILL = diplomacy - } - } - 10 = { - trigger = { - scope:tributary_scope = { highest_skill = martial } - } - tribute_mission_1000_duel_effect = { - INFLUENCED_REWARD = $INFLUENCED_REWARD$ - REWARD_INCREMENT = $REWARD_INCREMENT$ - SKILL = martial - } - } - 10 = { - trigger = { - scope:tributary_scope = { highest_skill = stewardship } - } - tribute_mission_1000_duel_effect = { - INFLUENCED_REWARD = $INFLUENCED_REWARD$ - REWARD_INCREMENT = $REWARD_INCREMENT$ - SKILL = stewardship - } - } - 10 = { - trigger = { - scope:tributary_scope = { highest_skill = intrigue } - } - tribute_mission_1000_duel_effect = { - INFLUENCED_REWARD = $INFLUENCED_REWARD$ - REWARD_INCREMENT = $REWARD_INCREMENT$ - SKILL = intrigue - } - } - 10 = { - trigger = { - scope:tributary_scope = { highest_skill = learning } - } - tribute_mission_1000_duel_effect = { - INFLUENCED_REWARD = $INFLUENCED_REWARD$ - REWARD_INCREMENT = $REWARD_INCREMENT$ - SKILL = learning - } - } - } -} - -#Actual duel -scripted_effect tribute_mission_1000_duel_effect = { - duel = { - skill = $SKILL$ - target = scope:receiving_character - #You convince them - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - modifier = { - culture = { has_cultural_parameter = more_successful_kowtows } - add = 25 - } - desc = tribute_mission.1000.success.desc - send_interface_toast = { - type = event_toast_effect_good - title = tribute_mission.1000.success.t - left_icon = scope:tributary_scope - right_icon = scope:receiving_character - #Woo! - save_scope_value_as = { - name = successful_influence - value = flag:$INFLUENCED_REWARD$ - } - if = { - limit = { $REWARD_INCREMENT$ = 0 } - show_as_tooltip = { tribute_mission_1000_give_treasury_effect = yes } - } - if = { - limit = { $REWARD_INCREMENT$ = 1 } - custom_tooltip = tribute_mission.1000.artifact.tt - } - if = { - limit = { $REWARD_INCREMENT$ = 2 } - custom_tooltip = tribute_mission.1000.innovation.tt - } - if = { - limit = { $REWARD_INCREMENT$ = 3 } - show_as_tooltip = { tribute_mission_1000_give_development_effect = yes } - } - } - } - #Hmm no - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tribute_mission.1000.failure.desc - send_interface_toast = { - type = event_toast_effect_bad - title = tribute_mission.1000.failure.t - left_icon = scope:tributary_scope - right_icon = scope:receiving_character - custom_tooltip = tribute_mission.1000.failure.tt - #Ayy - stress_impact = { base = miniscule_stress_impact_gain } - } - } - } -} - -#Tributary: Fork over Tribute -tribute_mission.1000 = { - type = character_event - title = tribute_mission.1000.t - desc = { - desc = tribute_mission.1000.intro - #Who is greeting us? - first_valid = { - triggered_desc = { - trigger = { scope:overlord_scope = scope:receiving_character } - desc = tribute_mission.1000.intro.overlord - } - triggered_desc = { - trigger = { scope:overlord_scope.diarch ?= scope:receiving_character } - desc = tribute_mission.1000.intro.diarch - } - triggered_desc = { - trigger = { - OR = { - scope:overlord_scope.cp:councillor_steward ?= scope:receiving_character - scope:overlord_scope.cp:councillor_chancellor ?= scope:receiving_character - scope:overlord_scope.cp:councillor_spymaster ?= scope:receiving_character - scope:overlord_scope.cp:councillor_court_chaplain ?= scope:receiving_character - scope:overlord_scope.cp:councillor_marshal ?= scope:receiving_character - } - } - desc = tribute_mission.1000.intro.councillor - } - desc = tribute_mission.1000.intro.attendant - } - desc = tribute_mission.1000.desc.segway - #What did we bring? - first_valid = { - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - desc = tribute_mission.1000.desc.bunga_mas - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:small_gold_tribute } - desc = tribute_mission.1000.desc.small_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:adequate_gold_tribute } - desc = tribute_mission.1000.desc.adequate_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:excessive_gold_tribute } - desc = tribute_mission.1000.desc.excessive_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:small_herd_tribute } - desc = tribute_mission.1000.desc.small_herd - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:adequate_herd_tribute } - desc = tribute_mission.1000.desc.adequate_herd - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:excessive_herd_tribute } - desc = tribute_mission.1000.desc.excessive_herd - } - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.1000.desc.concubine - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.1000.desc.eunuch - } - triggered_desc = { - trigger = { exists = scope:artifact_to_tribute } - desc = tribute_mission.1000.desc.artifact - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:receiving_character = { has_character_flag = created_attendant } - } - desc = tribute_mission.1000.outro.attendant - } - desc = tribute_mission.1000.outro - } - } - - theme = tributary - - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:receiving_character - triggered_animation = { - trigger = { - scope:tributary_scope = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - } - animation = shock - } - animation = personality_honorable - } - lower_center_portrait = { - character = scope:human_tribute - trigger = { exists = scope:human_tribute } - } - #Artifact Tribute - artifact = { - trigger = { exists = scope:artifact_to_tribute } - target = scope:artifact_to_tribute - position = lower_left_portrait - } - - immediate = { - tribute_mission_1000_common_arrival_effect = yes - #For the tooltip - if = { - limit = { tribute_mission_1000_can_give_treasury_trigger = yes } - tribute_mission_1000_set_treasury_reward_effect = yes - } - if = { - limit = { - scope:overlord_scope.culture = { - any_known_innovation = { tribute_mission_1000_eligible_innovation_trigger = yes } - } - } - scope:overlord_scope.culture = { - random_known_innovation = { - limit = { tribute_mission_1000_eligible_innovation_trigger = yes } - save_scope_as = saved_innovation - } - } - } - else = { - save_scope_as = grant_fascination - } - #What level of Bunga Mas modifier? - tribute_mission_1000_determine_bunga_mas_scale_effect = yes - } - - #China: Duel for Treasury - option = { - name = tribute_mission.1000.treasury - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_give_treasury_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = treasury REWARD_INCREMENT = 0 } - ai_chance = { base = 100 } - } - #Duel for Artifact - option = { - name = tribute_mission.1000.artifact - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_set_artifact_reward_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = artifact REWARD_INCREMENT = 1 } - ai_chance = { base = 150 } - } - - #Duel for Innovation - option = { - name = tribute_mission.1000.innovation - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_set_innovation_reward_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = innovation REWARD_INCREMENT = 2 } - ai_chance = { base = 200 } - } - - #Duel for Development - option = { - name = tribute_mission.1000.development - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_eligible_development_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = development REWARD_INCREMENT = 3 } - ai_chance = { base = 100 } - } - - #I'm sure it'll be fine - option = { - name = tribute_mission.1000.abstain - tribute_mission_1000_display_potential_rewards_effect = yes - ai_chance = { - base = 100 - modifier = { - has_trait = arbitrary - add = 200 - } - } - } - after = { - #Non-AI Receiving person: Decide on if you want to accept the human tribute - if = { - limit = { - OR = { - exists = scope:concubine_character - exists = scope:eunuch_character - } - AND = { - #If the overlord is an AI, they've already said yay/nay - scope:overlord_scope = { is_ai = no } - #... so if we're a player diarch of a player ruler, you get to decide - scope:receiving_character = { is_ai = no } - } - } - show_as_tooltip = { tribute_mission_1000_fork_over_with_notification_effect = yes } - scope:receiving_character = { trigger_event = tribute_mission.1002 } - } - #Or the Non-AI Receiving person / Hegemon gets to decide the reward - else_if = { - limit = { - scope:receiving_character = { - OR = { - is_ai = no - scope:overlord_scope = { highest_held_title_tier = tier_hegemony } - } - } - } - show_as_tooltip = { tribute_mission_1000_fork_over_with_notification_effect = yes } - scope:receiving_character = { trigger_event = tribute_mission.1005 } - } - #Or if the Receiving person is AI then we we skip the event and just generate the reward - else = { - tribute_mission_1000_fork_over_with_notification_effect = yes - scope:overlord_scope = { tribute_mission_1000_generate_reward_effect = yes } - scope:tributary_scope = { trigger_event = tribute_mission.1010 } - } - } -} - - -#What's their personality like? -scripted_trigger 1002_human_tribute_shy_personality_trigger = { - has_trait = shy -} - -scripted_trigger 1002_human_tribute_bold_personality_trigger = { - OR = { - has_trait = brave - has_trait = gregarious - } -} - -scripted_trigger 1002_human_tribute_callous_personality_trigger = { - OR = { - has_trait = cynical - has_trait = callous - } -} - -scripted_trigger 1002_human_tribute_angry_personality_trigger = { - OR = { - has_trait = wrathful - has_trait = irritable - has_trait = arrogant - } -} - -#Recipient: Decide on the human tribute -tribute_mission.1002 = { - type = character_event - title = tribute_mission.1002.t - desc = { - desc = tribute_mission.1002.segway - first_valid = { - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.1002.desc.concubine - } - triggered_desc = { - trigger = { - scope:eunuch_character ?= { has_character_flag = tribute_mission_recently_castrated } - } - desc = tribute_mission.1002.desc.new_eunuch - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.1002.desc.eunuch - } - } - #Some descriptive exterior words - first_valid = { - #Beauty - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = beauty_good_1 - has_trait = beauty_good_2 - has_trait = beauty_good_3 - } - } - } - desc = tribute_mission.1002.beauty.concubine.good - } - #Bad Beauty - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = beauty_bad_1 - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - } - } - } - desc = tribute_mission.1002.beauty.concubine.bad - } - #Physique - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = physique_good_1 - has_trait = physique_good_2 - has_trait = physique_good_3 - } - } - } - desc = tribute_mission.1002.physique.concubine.good - } - #Bad Physique - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = physique_bad_1 - has_trait = physique_bad_2 - has_trait = physique_bad_3 - } - } - } - desc = tribute_mission.1002.physique.concubine.bad - } - #Fallback - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.1002.exterior.plain - } - } - #Some descriptive personality words - first_valid = { - #Shy - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_shy_personality_trigger = yes } - } - desc = tribute_mission.1002.personality.shy - } - #Bold - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_bold_personality_trigger = yes } - } - desc = tribute_mission.1002.personality.bold - } - #Cynical - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_callous_personality_trigger = yes } - } - desc = tribute_mission.1002.personality.cynical - } - #Angry - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_angry_personality_trigger = yes } - } - desc = tribute_mission.1002.personality.angry - } - #Fallback - desc = tribute_mission.1002.personality.fallback - } - } - - theme = tributary - - left_portrait = { - character = scope:receiving_character - animation = interested - } - right_portrait = { - character = scope:human_tribute - triggered_animation = { - trigger = { has_character_flag = tribute_mission_recently_castrated } - animation = severelywounded - } - triggered_animation = { - trigger = { 1002_human_tribute_shy_personality_trigger = yes } - animation = shame - } - triggered_animation = { - trigger = { 1002_human_tribute_bold_personality_trigger = yes } - animation = personality_bold - } - triggered_animation = { - trigger = { 1002_human_tribute_callous_personality_trigger = yes } - animation = personality_cynical - } - triggered_animation = { - trigger = { 1002_human_tribute_angry_personality_trigger = yes } - animation = disapproval - } - animation = personality_honorable - } - lower_right_portrait = { - character = scope:tributary_scope - } - immediate = { - tribute_mission_1000_fork_over_with_notification_effect = yes - } - #Add 'em to court - option = { - name = tribute_mission.1002.a - if = { - limit = { exists = scope:concubine_character } - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:concubine_character } - } - else = { - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:eunuch_character } - } - ai_chance = { base = 100 } - } - #Make 'em your concubine - option = { - name = tribute_mission.1002.b - trigger = { - exists = scope:concubine_character - scope:overlord_scope = scope:receiving_character - tribute_mission_1000_overlord_can_employ_concubine_trigger = yes - } - flavor = tribute_mission.1002.b.flavor - tribute_mission_1000_make_concubine_effect = yes - save_scope_value_as = { - name = appointed_concubine - value = flag:yes - } - ai_chance = { - base = 100 - modifier = { - add = { - value = 50 - multiply = scope:concubine_character.num_of_good_genetic_traits - } - scope:concubine_character = { - num_of_good_genetic_traits > 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = 50 - scope:concubine_character = { - is_lowborn = no - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = { - value = -50 - multiply = scope:concubine_character.num_of_bad_genetic_traits - } - scope:concubine_character = { - num_of_bad_genetic_traits > 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = { - value = -50 - } - scope:concubine_character = { - is_lowborn = yes - num_of_good_genetic_traits = 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - opinion_modifier = { # Opinion of you - who = scope:overlord_scope - opinion_target = scope:tributary_scope - multiplier = 1.0 - desc = AI_OPINION_REASON - } - opinion_modifier = { # Opinion of concubine - who = scope:overlord_scope - opinion_target = scope:concubine_character - multiplier = 0.25 - desc = AI_OPINION_REASON - } - compare_modifier = { # Recipient is reluctant to marry old women (procreation is a key factor) - trigger = { - scope:concubine_character = { - is_young_character = no - is_female = yes - } - } - target = scope:concubine_character - value = age - multiplier = -5 - step = 1 - offset = -29 - } - modifier = { - add = 50 - scope:overlord_scope = { - is_attracted_to_gender_of = scope:concubine_character - } - } - #More/Less likely based on difference in rank between tributary_scope and overlord_scope - modifier = { - add = 50 - scope:tributary_scope = { - tier_difference = { - target = scope:overlord_scope - value > 1 - } - } - } - modifier = { - add = -20 - scope:tributary_scope = { - tier_difference = { - target = scope:overlord_scope - value < 1 - } - } - } - } - } - #Appoint 'em head Eunuch - option = { - name = tribute_mission.1002.c - trigger = { - exists = scope:eunuch_character - scope:overlord_scope = scope:receiving_character - can_employ_court_position_type = chief_eunuch_court_position - } - #Make 'em courtier - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:eunuch_character } - #Gain obligation hook - custom_tooltip = obligation_hook_tt - add_hook = { - type = obligation_hook - target = scope:eunuch_character - } - #Replace current Chief Eunuch - if = { - limit = { - employs_court_position = chief_eunuch_court_position - } - every_court_position_holder = { - type = chief_eunuch_court_position - save_temporary_scope_as = current_chief_eunuch - } - replace_court_position = { - recipient = scope:eunuch_character - holder = scope:current_chief_eunuch - court_position = chief_eunuch_court_position - } - } - #Or simply appoint new Eunuch - else = { - appoint_court_position = { - recipient = scope:eunuch_character - court_position = chief_eunuch_court_position - } - } - save_scope_value_as = { - name = appointed_eunuch - value = flag:yes - } - ai_chance = { - base = 100 - opinion_modifier = { - who = scope:overlord_scope - opinion_target = scope:tributary_scope - multiplier = 0.5 - } - opinion_modifier = { - who = scope:overlord_scope - opinion_target = scope:eunuch_character - multiplier = 0.5 - } - modifier = { - add = { - value = 50 - subtract = scope:eunuch_character.age - } - } - modifier = { - add = { - add = scope:eunuch_character.diplomacy - add = scope:eunuch_character.intrigue - add = scope:eunuch_character.stewardship - add = scope:eunuch_character.martial - add = scope:eunuch_character.learning - } - } - modifier = { - scope:eunuch_character = { has_trait = beardless_eunuch } - add = 25 - } - } - } - #Um... nah - option = { - name = tribute_mission.1002.d - custom_tooltip = tribute_mission.1002.d.tt - if = { - limit = { exists = scope:concubine_character } - save_scope_value_as = { - name = rejected_concubine - value = flag:yes - } - } - else = { - save_scope_value_as = { - name = rejected_eunuch - value = flag:yes - } - } - ai_chance = { - base = 10 - modifier = { - has_trait = paranoid - add = 1000 - } - } - } - after = { - #Moving on - trigger_event = tribute_mission.1005 - } -} - -#Recipient: What do you give? -tribute_mission.1005 = { - type = character_event - title = { - first_valid = { - triggered_desc = { # Bunga Mas - trigger = { exists = scope:newly_created_bunga_mas } - desc = tribute_mission.1005.t.ai.bunga_mas - } - triggered_desc = { # Bunga Mas - trigger = { tribute_mission_1000_bunga_mas_tributary_trigger = yes } - desc = tribute_mission.1005.t.bunga_mas - } - triggered_desc = { # Gold - trigger = { tribute_mission_1000_gold_tributary_trigger = yes } - desc = tribute_mission.1005.t.gold - } - triggered_desc = { # Herd - trigger = { tribute_mission_1000_herd_tributary_trigger = yes } - desc = tribute_mission.1005.t.herd - } - triggered_desc = { # Concubine - trigger = { tribute_mission_1000_concubine_tributary_trigger = yes } - desc = tribute_mission.1005.t.concubine - } - triggered_desc = { # Eunuch - trigger = { tribute_mission_1000_eunuch_tributary_trigger = yes } - desc = tribute_mission.1005.t.eunuch - } - triggered_desc = { # Artifact - trigger = { tribute_mission_1000_artifact_tributary_trigger = yes } - desc = tribute_mission.1005.t.artifact - } - desc = tribute_mission.1005.t - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - exists = scope:concubine_character - exists = scope:eunuch_character - } - } - desc = tribute_mission.1005.intro.human_tribute - } - desc = tribute_mission.1005.intro - } - first_valid = { - triggered_desc = { - trigger = { - OR = { - exists = scope:newly_created_bunga_mas - tribute_mission_1000_bunga_mas_tributary_trigger = yes - } - } - desc = tribute_mission.1005.desc.bunga_mas - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:small_gold_tribute } - desc = tribute_mission.1005.desc.small_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:adequate_gold_tribute } - desc = tribute_mission.1005.desc.adequate_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:excessive_gold_tribute } - desc = tribute_mission.1005.desc.excessive_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:small_herd_tribute } - desc = tribute_mission.1005.desc.small_herd - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:adequate_herd_tribute } - desc = tribute_mission.1005.desc.adequate_herd - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:excessive_herd_tribute } - desc = tribute_mission.1005.desc.excessive_herd - } - triggered_desc = { - trigger = { exists = scope:rejected_concubine } - desc = tribute_mission.1005.desc.rejected_concubine - } - triggered_desc = { - trigger = { exists = scope:appointed_concubine } - desc = tribute_mission.1005.desc.appointed_concubine - } - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.1005.desc.concubine - } - triggered_desc = { - trigger = { exists = scope:rejected_eunuch } - desc = tribute_mission.1005.desc.rejected_eunuch - } - triggered_desc = { - trigger = { exists = scope:appointed_eunuch } - desc = tribute_mission.1005.desc.appointed_eunuch - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.1005.desc.eunuch - } - triggered_desc = { - trigger = { exists = scope:artifact_to_tribute } - desc = tribute_mission.1005.desc.artifact - } - #Fallback - desc = tribute_mission.1005.desc - } - } - - theme = tributary - - left_portrait = { - character = root - triggered_animation = { - trigger = { exists = scope:newly_created_bunga_mas } - animation = disbelief - } - animation = personality_rational - } - right_portrait = { - character = scope:tributary_scope - triggered_animation = { - trigger = { exists = scope:newly_created_bunga_mas } - animation = admiration - } - animation = personality_honorable - } - #Human Tribute - lower_center_portrait = { - trigger = { exists = scope:human_tribute } - character = scope:human_tribute - } - #Artifact Tribute - artifact = { - trigger = { exists = scope:artifact_to_tribute } - target = scope:artifact_to_tribute - position = lower_left_portrait - } - #Bunga Mas - artifact = { - trigger = { exists = scope:newly_created_bunga_mas } - target = scope:newly_created_bunga_mas - position = lower_right_portrait - } - immediate = { - #For the tooltip - if = { - limit = { - scope:overlord_scope.culture = { - any_known_innovation = { tribute_mission_1000_eligible_innovation_trigger = yes } - } - } - scope:overlord_scope.culture = { - random_known_innovation = { - limit = { tribute_mission_1000_eligible_innovation_trigger = yes } - save_scope_as = saved_innovation - } - } - } - else = { - save_scope_as = grant_fascination - } - #Ful-fix - save_scope_value_as = { - name = decided_on_treasury_reward - value = flag:no - } - } - #China: Treasury / Trade Goods - option = { - name = tribute_mission.1005.treasury - trigger = { tribute_mission_1000_can_give_treasury_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_treasury_effect = yes } - #Default is set in the immediate - save_scope_value_as = { - name = decided_on_treasury_reward - value = flag:yes - } - ai_chance = { - base = 0 - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:treasury - add = 1000 - } - } - } - #Artifact - option = { - name = tribute_mission.1005.artifact - trigger = { tribute_mission_1000_can_set_artifact_reward_trigger = yes } - #Inform the player what will happen (since the artifact doesn't exist yet) - custom_tooltip = tribute_mission.1005.artifact.tt - tribute_mission_1000_set_artifact_reward_effect = yes - ai_chance = { - base = 0 - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:artifact - add = 1000 - } - } - } - #Innovation - option = { - name = tribute_mission.1005.innovation - trigger = { tribute_mission_1000_can_set_innovation_reward_trigger = yes } - tribute_mission_1000_set_innovation_reward_effect = yes - #Display the effects - show_as_tooltip = { - if = { - limit = { exists = scope:saved_innovation } - scope:tributary_scope.culture = { - add_innovation_progress = { - value = tribute_reward_innovation_progress_value - target = scope:saved_innovation - } - } - } - if = { - limit = { exists = scope:grant_fascination } - scope:tributary_scope.culture = { - add_fascination_progress = tribute_reward_fascination_progress_value - } - } - } - ai_chance = { - base = 0 - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:innovation - add = 1000 - } - } - } - #Development - option = { - name = tribute_mission.1005.development - trigger = { tribute_mission_1000_eligible_development_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_development_effect = yes } - tribute_mission_1000_set_development_reward_effect = yes - ai_chance = { - base = 0 - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:development - add = 1000 - } - } - } - #Monk - option = { - name = tribute_mission.1005.monk - trigger = { tribute_mission_1000_eligible_for_monk_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_monk_effect = yes } - tribute_mission_1000_set_monk_reward_effect = yes - ai_chance = { - base = 0 - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 100 - } - } - } - #Generic Legitimacy - option = { - name = tribute_mission.1005.legitimacy - show_as_tooltip = { tribute_mission_1000_give_legitimacy_effect = yes } - tribute_mission_1000_set_legitimacy_reward_effect = yes - ai_chance = { - base = 100 - } - } - #Rejection - option = { - name = imperial_examination.7100.b.singular #I refuse to accept mediocrity not a tributary we can reject them. - trigger = { - NOT = { government_has_flag = government_is_mandala } - } - show_as_tooltip = { tribute_mission_1000_rejection_effect = yes } - scope:tributary_scope = { set_variable = new_overlord_unable_to_accept_tribute } - save_scope_value_as = { - name = tribute_reward_type_rejection - value = flag:yes - } - ai_chance = { - base = 0 - } - } - after = { - if = { - limit = { - scope:tributary_scope = { has_variable = new_overlord_unable_to_accept_tribute } - } - scope:tributary_scope = { trigger_event = tribute_mission.9800 } - } - else = { - tribute_mission_1000_fork_over_with_notification_effect = yes - show_as_tooltip = { tribute_mission_1000_common_arrival_effect = yes } - if = { - limit = { - scope:tributary_scope = { - subject_standing > seal_of_investiture_minimum_subject_standing - NOT = { - any_character_artifact = { - OR = { - artifact_type = seal_of_investiture - artifact_type = seal_of_investiture_court - } - } - } - } - scope:overlord_scope = { - primary_title = title:h_china - this = scope:receiving_character - } - } - trigger_event = tribute_mission.1006 - } - else_if = { - limit = { scope:tributary_scope = { is_tributary = no } } - scope:tributary_scope = { - if = { - limit = { - scope:overlord_scope = { has_royal_court = yes } - scope:overlord_scope = scope:receiving_character - } - trigger_event = tribute_mission.3008 - } - else = { trigger_event = tribute_mission.1008 } - } - } - else = { - scope:tributary_scope = { - if = { - limit = { - scope:overlord_scope = { has_royal_court = yes } - scope:overlord_scope = scope:receiving_character - } - trigger_event = tribute_mission.3010 - } - else = { trigger_event = tribute_mission.1010 } - } - } - } - } -} - -scripted_trigger tribute_mission_1006_eligible_scribe_trigger = { - is_physically_able_ai_adult = yes - OR = { - #Someone new? - AND = { - has_no_particular_noble_roots_trigger = yes - learning > 10 - culture = scope:overlord_scope.culture - } - #A previous scribe - has_variable = tribute_mission_1006_scribe - } -} - -scripted_effect tribute_mission_1006_eligible_scribe_scope_effect = { - scope:overlord_scope = { - # Try to grab someone from a suitable court position first - random_courtier = { - limit = { has_court_position = court_artificer_court_position } - save_scope_as = scribe_character - set_variable = tribute_mission_1006_scribe - } - if = { - limit = { NOT = { exists = scope:scribe_character } } - court_position:chronicler_court_position ?= { - save_scope_as = scribe_character - set_variable = tribute_mission_1006_scribe - } - } - if = { - limit = { NOT = { exists = scope:scribe_character } } - court_position:antiquarian_court_position ?= { - save_scope_as = scribe_character - set_variable = tribute_mission_1006_scribe - } - } - - # If we can't find an official scribe, try to find one in the crowd - if = { - limit = { NOT = { exists = scope:scribe_character } } - random_courtier = { - limit = { tribute_mission_1006_eligible_scribe_trigger = yes } - save_scope_as = scribe_character - set_variable = tribute_mission_1006_scribe - } - } - # Or in the city - if = { - limit = { NOT = { exists = scope:scribe_character } } - random_pool_character = { - province = scope:overlord_scope.capital_province - limit = { tribute_mission_1006_eligible_scribe_trigger = yes } - save_scope_as = scribe_character - set_variable = tribute_mission_1006_scribe - } - } - # If all else fails, make one - if = { - limit = { NOT = { exists = scope:scribe_character } } - create_character = { - template = random_learned_eunuch_character - location = scope:overlord_scope.capital_province - culture = scope:overlord_scope.capital_province.culture - faith = scope:overlord_scope.capital_province.faith - dynasty = none - save_scope_as = scribe_character - after_creation = { set_variable = tribute_mission_1006_scribe } - } - } - } - if = { - limit = { NOT = { exists = scope:scribe_character } } - error_log = "Failed to create a valid scribe in tribute_mission_1006_eligible_scribe_scope_effect!" - } -} - -#Overlord: Decide whether to grant a Seal of Investiture or not -tribute_mission.1006 = { - type = character_event - title = tribute_mission.1006.t - desc = tribute_mission.1006.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - immediate = { - tribute_mission_1006_eligible_scribe_scope_effect = yes - } - - left_portrait = { - character = root - animation = personality_honorable - } - right_portrait = { - character = scope:tributary_scope - animation = personality_rational - } - - #Grant the Seal - option = { - name = tribute_mission.1006.grant - trigger = { - trigger_if = { - limit = { - scope:receiving_character = { - is_ai = yes - } - } - treasury > tribute_seal_of_investiture_cost - } - trigger_else = { - always = yes #Humans can always get one - } - } - show_as_unavailable = { always = yes } - custom_tooltip = { - text = tribute_mission.1006.grant.tt - create_artifact_imperial_seal_effect = { - OWNER = scope:receiving_character - SMITH = scope:scribe_character - } - } - remove_treasury = tribute_seal_of_investiture_cost - add_legitimacy = 50 - scope:tributary_scope = { - if = { - limit = { - scope:overlord_scope = { has_royal_court = yes } - } - trigger_event = tribute_mission.3007 - } - else = { trigger_event = tribute_mission.1007 } - } - - # do not change from making this only the scripted value; add additions to the value itself if needed - ai_will_select = scope:tributary_scope.tribute_mission_seal_of_investiture_ai_will_select - } - #Decline to grant the Seal - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { treasury < tribute_seal_of_investiture_cost } - desc = tribute_mission.1006.decline.no_money - } - desc = tribute_mission.1006.decline.dont_wanna - } - } - } - add_legitimacy = -50 - reverse_add_opinion = { - target = scope:tributary_scope - modifier = refused_seal_of_investiture_opinion - opinion = -50 - } - scope:tributary_scope = { - if = { - limit = { - scope:overlord_scope = { has_royal_court = yes } - } - trigger_event = tribute_mission.3010 - } - else = { trigger_event = tribute_mission.1010 } - } - - # do not change from making this only the scripted value; add additions to the value itself if needed - ai_will_select = scope:tributary_scope.tribute_mission_no_seal_of_investiture_ai_will_select - } -} - -### IS THIS ACTUALLY USED? (Hegemons that receive Tributary scopes should always have Royal Courts) -#Tributary: Receive the Seal of Investiture -tribute_mission.1007 = { - type = character_event - title = tribute_mission.1007.t - desc = tribute_mission.1007.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - - left_portrait = { - character = root - animation = personality_rational - } - artifact = { - trigger = { exists = scope:tribute_reward_type_artifact } - target = scope:seal_of_investiture_scope - position = lower_center_portrait - } - right_portrait = { - character = scope:receiving_character - animation = personality_honorable - } - - #Grant the Seal - option = { - name = tribute_mission.1007.a - scope:seal_of_investiture_scope = { - set_owner = scope:tributary_scope - } - - } - after = { - scope:tributary_scope = { - if = { - limit = { - scope:overlord_scope = { has_royal_court = yes } - } - trigger_event = tribute_mission.3010 - } - else = { trigger_event = tribute_mission.1010 } - } - } -} - -### ARE THESE ACTUALLY USED? (Hegemons that receive Tributary scopes should always have Royal Courts) -#Tributary: Decide whether to become a Tributary or not -tribute_mission.1008 = { - type = character_event - title = tribute_mission.1008.t - desc = tribute_mission.1008.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - - left_portrait = { - character = root - animation = personality_rational - } - right_portrait = { - character = scope:receiving_character - animation = personality_honorable - } - - #Become a Tributary - option = { - name = tribute_mission.1008.a - start_tributary_interaction_effect = { - TRIBUTARY = scope:tributary_scope - SUZERAIN = scope:overlord_scope - } - scope:overlord_scope = { - send_interface_message = { - type = event_tribute_good_text - title = tribute_mission.new_tributary.title - left_icon = scope:tributary_scope - desc = tribute_mission.new_tributary.desc - } - } - } - #No thanks - option = { - name = tribute_mission.1008.b - } - after = { - trigger_event = tribute_mission.1010 - } -} - -scripted_effect tribute_mission_1010_complete_effect = { - scope:tributary_scope = { - #Scaling grace - if = { - limit = { - OR = { - var:tribute_mission_type ?= flag:excessive_gold_tribute - var:tribute_mission_type ?= flag:excessive_herd_tribute - AND = { - var:tribute_mission_type ?= flag:artifact_tribute - scope:artifact_to_tribute ?= { - OR = { - rarity = famed - rarity = illustrious - } - } - } - exists = scope:appointed_concubine - exists = scope:appointed_eunuch - } - } - set_variable = { - name = tribute_mission_grace - value = scope:overlord_scope - years = tribute_mission_cooldown_most_years - } - } - else_if = { - limit = { - OR = { - var:tribute_mission_type ?= flag:adequate_gold_tribute - var:tribute_mission_type ?= flag:adequate_herd_tribute - AND = { - var:tribute_mission_type ?= flag:artifact_tribute - scope:artifact_to_tribute ?= { rarity = masterwork } - } - exists = scope:concubine_character - exists = scope:eunuch_character - } - } - set_variable = { - name = tribute_mission_grace - value = scope:overlord_scope - years = tribute_mission_cooldown_more_years - } - } - else = { - set_variable = { - name = tribute_mission_grace - value = scope:overlord_scope - years = tribute_mission_cooldown_years - } - } - #Clean up & head back home - tribute_mission_clean_up_variables_effect = yes - tribute_mission_clean_up_request_variables_effect = yes - current_travel_plan ?= { resume_travel_plan = yes } - } - scope:receiving_character = { - if = { - limit = { has_character_flag = created_attendant } - #Clean 'em up - trigger_event = tribute_mission.0005 - } - } - scope:artifact_to_tribute ?= { - remove_variable = is_tribute_mission_artifact - set_variable = { - name = given_via_tribute_mission - value = scope:tributary_scope - } - if = { - limit = { has_variable = given_via_tribute_mission } - #Error supression - } - } -} - -#Tributary: Receive reward, go home -tribute_mission.1010 = { - type = character_event - title = { - first_valid = { - #Treasury - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_treasury } - desc = tribute_mission.1010.t.treasury - } - #Artifact - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_artifact } - desc = tribute_mission.1010.t.artifact - } - #Innovation - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_innovation } - desc = tribute_mission.1010.t.innovation - } - #Development - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_development } - desc = tribute_mission.1010.t.development - } - #Monk - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_monk } - desc = tribute_mission.1010.t.monk - } - #Legitimacy - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_legitimacy } - desc = tribute_mission.1010.t.legitimacy - } - desc = tribute_mission.1010.t - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:seal_of_investiture_scope } - desc = tribute_mission.1010.intro.postseal - } - triggered_desc = { - trigger = { - scope:receiving_character = { has_character_flag = created_attendant } - } - desc = tribute_mission.1010.intro.attendant - } - desc = tribute_mission.1010.intro - } - first_valid = { - #Treasury - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_treasury } - desc = tribute_mission.1010.desc.treasury - } - #Artifact - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_artifact } - desc = tribute_mission.1010.desc.artifact - } - #Innovation - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_innovation } - desc = tribute_mission.1010.desc.innovation - } - #Development - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_development } - desc = tribute_mission.1010.desc.development - } - #Monk - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_monk } - desc = tribute_mission.1010.desc.monk - } - #Legitimacy - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_legitimacy } - desc = tribute_mission.1010.desc.legitimacy - } - } - desc = tribute_mission.1010.outro - } - theme = tributary - left_portrait = { - character = root - animation = personality_rational - } - artifact = { - trigger = { exists = scope:tribute_reward_type_artifact } - target = scope:tribute_reward_type_artifact - position = lower_center_portrait - } - right_portrait = { - character = scope:receiving_character - animation = personality_honorable - } - immediate = { - tribute_mission_1000_disburse_reward_effect = yes - } - #Thanks, bye! - option = { - name = tribute_mission.1010.a - } - after = { - #Clean up variables & set up cooldown - tribute_mission_1010_complete_effect = yes - } -} - - -### COURT EVENTS ### - -#Tributary: Fork over Tribute, try to influence reward -tribute_mission.3000 = { - type = court_event - title = tribute_mission.3000.t - desc = { - desc = tribute_mission.3000.intro - #Who is greeting us? - first_valid = { - triggered_desc = { - trigger = { scope:overlord_scope = scope:receiving_character } - desc = tribute_mission.3000.intro.overlord - } - triggered_desc = { - trigger = { scope:overlord_scope.diarch ?= scope:receiving_character } - desc = tribute_mission.3000.intro.diarch - } - triggered_desc = { - trigger = { - OR = { - scope:overlord_scope.cp:councillor_steward ?= scope:receiving_character - scope:overlord_scope.cp:councillor_chancellor ?= scope:receiving_character - scope:overlord_scope.cp:councillor_spymaster ?= scope:receiving_character - scope:overlord_scope.cp:councillor_court_chaplain ?= scope:receiving_character - scope:overlord_scope.cp:councillor_marshal ?= scope:receiving_character - } - } - desc = tribute_mission.3000.intro.councillor - } - desc = tribute_mission.3000.intro.attendant - } - desc = tribute_mission.3000.desc.segway - #What did we bring? - first_valid = { - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:bunga_mas_tribute } - desc = tribute_mission.3000.desc.bunga_mas - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:small_gold_tribute } - desc = tribute_mission.3000.desc.small_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:adequate_gold_tribute } - desc = tribute_mission.3000.desc.adequate_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:excessive_gold_tribute } - desc = tribute_mission.3000.desc.excessive_gold - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:small_herd_tribute } - desc = tribute_mission.3000.desc.small_herd - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:adequate_herd_tribute } - desc = tribute_mission.3000.desc.adequate_herd - } - triggered_desc = { - trigger = { var:tribute_mission_type ?= flag:excessive_herd_tribute } - desc = tribute_mission.3000.desc.excessive_herd - } - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.3000.desc.concubine - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.3000.desc.eunuch - } - triggered_desc = { - trigger = { exists = scope:artifact_to_tribute } - desc = tribute_mission.3000.desc.artifact - } - } - first_valid = { - triggered_desc = { - trigger = { - scope:receiving_character = { has_character_flag = created_attendant } - } - desc = tribute_mission.3000.outro.attendant - } - desc = tribute_mission.3000.outro - } - } - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - scope:human_tribute = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - immediate = { - scope:overlord_scope = { - open_view_data = { - view = royal_court - secondary_actor = scope:tributary_scope - player = scope:tributary_scope - } - } - tribute_mission_1000_common_arrival_effect = yes - #For the tooltips - if = { - limit = { tribute_mission_1000_can_give_treasury_trigger = yes } - tribute_mission_1000_set_treasury_reward_effect = yes - } - if = { - limit = { - scope:overlord_scope.culture = { - any_known_innovation = { tribute_mission_1000_eligible_innovation_trigger = yes } - } - } - scope:overlord_scope.culture = { - random_known_innovation = { - limit = { tribute_mission_1000_eligible_innovation_trigger = yes } - save_scope_as = saved_innovation - } - } - } - else = { - save_scope_as = grant_fascination - } - #What level of Bunga Mas modifier? - tribute_mission_1000_determine_bunga_mas_scale_effect = yes - } - #China: Duel for Treasury - option = { - name = tribute_mission.3000.treasury - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_give_treasury_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = treasury REWARD_INCREMENT = 0 } - ai_chance = { base = 100 } - } - #Duel for Artifact - option = { - name = tribute_mission.3000.artifact - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_set_artifact_reward_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = artifact REWARD_INCREMENT = 1 } - ai_chance = { base = 150 } - } - - #Duel for Innovation - option = { - name = tribute_mission.3000.innovation - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_can_set_innovation_reward_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = innovation REWARD_INCREMENT = 2 } - ai_chance = { base = 200 } - } - - #Duel for Development - option = { - name = tribute_mission.3000.development - trigger = { - scope:receiving_character = { is_ai = yes } - tribute_mission_1000_eligible_development_trigger = yes - } - tribute_mission_1000_determine_duel_skill_effect = { INFLUENCED_REWARD = development REWARD_INCREMENT = 3 } - ai_chance = { base = 150 } - } - - #I'm sure it'll be fine - option = { - name = tribute_mission.3000.abstain - tribute_mission_1000_display_potential_rewards_effect = yes - ai_chance = { - base = 100 - modifier = { - has_trait = arbitrary - add = 200 - } - } - } - - after = { - #Non-AI Receiving person: Decide on if you want to accept the human tribute - if = { - limit = { - OR = { - exists = scope:concubine_character - exists = scope:eunuch_character - } - AND = { - #If the overlord is an AI, they've already said yay/nay - scope:overlord_scope = { is_ai = no } - #... so if we're a player diarch of a player ruler, you get to decide - scope:receiving_character = { is_ai = no } - } - } - show_as_tooltip = { tribute_mission_1000_fork_over_with_notification_effect = yes } - scope:receiving_character = { trigger_event = tribute_mission.1002 } - } - #Or the Non-AI Receiving person / Hegemon gets to decide the reward - else_if = { - limit = { - scope:receiving_character = { - OR = { - is_ai = no - scope:overlord_scope = { highest_held_title_tier = tier_hegemony } - } - } - } - show_as_tooltip = { tribute_mission_1000_fork_over_with_notification_effect = yes } - scope:receiving_character = { trigger_event = tribute_mission.1005 } - } - #Or if the Receiving person is AI then we we skip the event and just generate the reward - else = { - tribute_mission_1000_fork_over_with_notification_effect = yes - scope:overlord_scope = { tribute_mission_1000_generate_reward_effect = yes } - scope:tributary_scope = { trigger_event = tribute_mission.3010 } - } - } -} - -###DEPRECATED -#Recipient: Decide on the human tribute -tribute_mission.3002 = { - orphan = yes - type = court_event - title = tribute_mission.3002.t - desc = { - desc = tribute_mission.3002.segway - first_valid = { - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.3002.desc.concubine - } - triggered_desc = { - trigger = { - scope:eunuch_character ?= { has_character_flag = tribute_mission_recently_castrated } - } - desc = tribute_mission.3002.desc.new_eunuch - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.3002.desc.eunuch - } - } - #Some descriptive exterior words - first_valid = { - #Beauty - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = beauty_good_1 - has_trait = beauty_good_2 - has_trait = beauty_good_3 - } - } - } - desc = tribute_mission.3002.beauty.concubine.good - } - #Bad Beauty - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = beauty_bad_1 - has_trait = beauty_bad_2 - has_trait = beauty_bad_3 - } - } - } - desc = tribute_mission.3002.beauty.concubine.bad - } - #Physique - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = physique_good_1 - has_trait = physique_good_2 - has_trait = physique_good_3 - } - } - } - desc = tribute_mission.3002.physique.concubine.good - } - #Bad Physique - triggered_desc = { - trigger = { - exists = scope:concubine_character - scope:human_tribute = { - OR = { - has_trait = physique_bad_1 - has_trait = physique_bad_2 - has_trait = physique_bad_3 - } - } - } - desc = tribute_mission.3002.physique.concubine.bad - } - #Fallback - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.3002.exterior.plain - } - } - #Some descriptive personality words - first_valid = { - #Shy - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_shy_personality_trigger = yes } - } - desc = tribute_mission.3002.personality.shy - } - #Bold - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_bold_personality_trigger = yes } - } - desc = tribute_mission.3002.personality.bold - } - #Cynical - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_callous_personality_trigger = yes } - } - desc = tribute_mission.3002.personality.cynical - } - #Angry - triggered_desc = { - trigger = { - scope:human_tribute = { 1002_human_tribute_angry_personality_trigger = yes } - } - desc = tribute_mission.3002.personality.angry - } - #Fallback - desc = tribute_mission.3002.personality.fallback - } - } - - theme = tributary - - left_portrait = { - character = scope:receiving_character - animation = interested - } - right_portrait = { - character = scope:human_tribute - triggered_animation = { - trigger = { has_character_flag = tribute_mission_recently_castrated } - animation = severelywounded - } - triggered_animation = { - trigger = { 1002_human_tribute_shy_personality_trigger = yes } - animation = shame - } - triggered_animation = { - trigger = { 1002_human_tribute_bold_personality_trigger = yes } - animation = personality_bold - } - triggered_animation = { - trigger = { 1002_human_tribute_callous_personality_trigger = yes } - animation = personality_cynical - } - triggered_animation = { - trigger = { 1002_human_tribute_angry_personality_trigger = yes } - animation = disapproval - } - animation = personality_honorable - } - lower_right_portrait = { - character = scope:tributary_scope - } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - scope:human_tribute = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - immediate = { - tribute_mission_1000_fork_over_with_notification_effect = yes - } - #Add 'em to court - option = { - name = tribute_mission.3002.a - if = { - limit = { exists = scope:concubine_character } - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:concubine_character } - } - else = { - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:eunuch_character } - } - ai_chance = { base = 100 } - } - #Make 'em your concubine - option = { - name = tribute_mission.3002.b - trigger = { - exists = scope:concubine_character - scope:overlord_scope = scope:receiving_character - tribute_mission_1000_overlord_can_employ_concubine_trigger = yes - } - flavor = tribute_mission.3002.b.flavor - tribute_mission_1000_make_concubine_effect = yes - save_scope_value_as = { - name = appointed_concubine - value = flag:yes - } - ai_chance = { - base = 100 - modifier = { - add = { - value = 50 - multiply = scope:concubine_character.num_of_good_genetic_traits - } - scope:concubine_character = { - num_of_good_genetic_traits > 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = 50 - scope:concubine_character = { - is_lowborn = no - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = { - value = -50 - multiply = scope:concubine_character.num_of_bad_genetic_traits - } - scope:concubine_character = { - num_of_bad_genetic_traits > 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - modifier = { - add = { - value = -50 - } - scope:concubine_character = { - is_lowborn = yes - num_of_good_genetic_traits = 0 - trigger_if = { - limit = { - is_female = yes - } - is_aging_character = no - } - } - } - opinion_modifier = { # Opinion of you - who = scope:overlord_scope - opinion_target = scope:tributary_scope - multiplier = 1.0 - desc = AI_OPINION_REASON - } - opinion_modifier = { # Opinion of concubine - who = scope:overlord_scope - opinion_target = scope:concubine_character - multiplier = 0.25 - desc = AI_OPINION_REASON - } - compare_modifier = { # Recipient is reluctant to marry old women (procreation is a key factor) - trigger = { - scope:concubine_character = { - is_young_character = no - is_female = yes - } - } - target = scope:concubine_character - value = age - multiplier = -5 - step = 1 - offset = -29 - } - modifier = { - add = 50 - scope:overlord_scope = { - is_attracted_to_gender_of = scope:concubine_character - } - } - #More/Less likely based on difference in rank between tributary_scope and overlord_scope - modifier = { - add = 50 - scope:tributary_scope = { - tier_difference = { - target = scope:overlord_scope - value > 1 - } - } - } - modifier = { - add = -20 - scope:tributary_scope = { - tier_difference = { - target = scope:overlord_scope - value < 1 - } - } - } - } - } - #Appoint 'em head Eunuch - option = { - name = tribute_mission.3002.c - trigger = { - exists = scope:eunuch_character - scope:overlord_scope = scope:receiving_character - can_employ_court_position_type = chief_eunuch_court_position - } - #Make 'em courtier - tribute_mission_1000_make_courtier_effect = { HUMAN_TRIB = scope:eunuch_character } - #Gain obligation hook - custom_tooltip = obligation_hook_tt - add_hook = { - type = obligation_hook - target = scope:eunuch_character - } - #Replace current Chief Eunuch - if = { - limit = { - employs_court_position = chief_eunuch_court_position - } - every_court_position_holder = { - type = chief_eunuch_court_position - save_temporary_scope_as = current_chief_eunuch - } - replace_court_position = { - recipient = scope:eunuch_character - holder = scope:current_chief_eunuch - court_position = chief_eunuch_court_position - } - } - #Or simply appoint new Eunuch - else = { - appoint_court_position = { - recipient = scope:eunuch_character - court_position = chief_eunuch_court_position - } - } - save_scope_value_as = { - name = appointed_eunuch - value = flag:yes - } - ai_chance = { - base = 100 - opinion_modifier = { - who = scope:overlord_scope - opinion_target = scope:tributary_scope - multiplier = 0.5 - } - opinion_modifier = { - who = scope:overlord_scope - opinion_target = scope:eunuch_character - multiplier = 0.5 - } - modifier = { - add = { - value = 50 - subtract = scope:eunuch_character.age - } - } - modifier = { - add = { - add = scope:eunuch_character.diplomacy - add = scope:eunuch_character.intrigue - add = scope:eunuch_character.stewardship - add = scope:eunuch_character.martial - add = scope:eunuch_character.learning - } - } - modifier = { - scope:eunuch_character = { has_trait = beardless_eunuch } - add = 25 - } - } - } - #Um... nah - option = { - name = tribute_mission.3002.d - custom_tooltip = tribute_mission.3002.d.tt - if = { - limit = { exists = scope:concubine_character } - save_scope_value_as = { - name = rejected_concubine - value = flag:yes - } - } - else = { - save_scope_value_as = { - name = rejected_eunuch - value = flag:yes - } - } - ai_chance = { - base = 10 - modifier = { - has_trait = paranoid - add = 1000 - } - } - } - after = { - #Moving on - trigger_event = tribute_mission.3005 - } -} - -###DEPRECATED -#Recipient: What do you give? -tribute_mission.3005 = { - type = court_event - title = { - first_valid = { - triggered_desc = { # Gold - trigger = { tribute_mission_1000_gold_tributary_trigger = yes } - desc = tribute_mission.3005.t.gold - } - triggered_desc = { # Herd - trigger = { tribute_mission_1000_herd_tributary_trigger = yes } - desc = tribute_mission.3005.t.herd - } - triggered_desc = { # Concubine - trigger = { tribute_mission_1000_concubine_tributary_trigger = yes } - desc = tribute_mission.3005.t.concubine - } - triggered_desc = { # Eunuch - trigger = { tribute_mission_1000_eunuch_tributary_trigger = yes } - desc = tribute_mission.3005.t.eunuch - } - triggered_desc = { # Artifact - trigger = { tribute_mission_1000_artifact_tributary_trigger = yes } - desc = tribute_mission.3005.t.artifact - } - desc = tribute_mission.3005.t - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { - OR = { - exists = scope:concubine_character - exists = scope:eunuch_character - } - } - desc = tribute_mission.3005.intro.human_tribute - } - desc = tribute_mission.3005.intro - } - first_valid = { - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:small_gold_tribute } - desc = tribute_mission.3005.desc.small_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:adequate_gold_tribute } - desc = tribute_mission.3005.desc.adequate_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:excessive_gold_tribute } - desc = tribute_mission.3005.desc.excessive_gold - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:small_herd_tribute } - desc = tribute_mission.3005.desc.small_herd - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:adequate_herd_tribute } - desc = tribute_mission.3005.desc.adequate_herd - } - triggered_desc = { - trigger = { scope:tributary_scope.var:tribute_mission_type ?= flag:excessive_herd_tribute } - desc = tribute_mission.3005.desc.excessive_herd - } - triggered_desc = { - trigger = { exists = scope:rejected_concubine } - desc = tribute_mission.3005.desc.rejected_concubine - } - triggered_desc = { - trigger = { exists = scope:appointed_concubine } - desc = tribute_mission.3005.desc.appointed_concubine - } - triggered_desc = { - trigger = { exists = scope:concubine_character } - desc = tribute_mission.3005.desc.concubine - } - triggered_desc = { - trigger = { exists = scope:rejected_eunuch } - desc = tribute_mission.3005.desc.rejected_eunuch - } - triggered_desc = { - trigger = { exists = scope:appointed_eunuch } - desc = tribute_mission.3005.desc.appointed_eunuch - } - triggered_desc = { - trigger = { exists = scope:eunuch_character } - desc = tribute_mission.3005.desc.eunuch - } - triggered_desc = { - trigger = { exists = scope:artifact_to_tribute } - desc = tribute_mission.3005.desc.artifact - } - #Fallback - desc = tribute_mission.3005.desc - } - } - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - scope:human_tribute = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - immediate = { - tribute_mission_1000_fork_over_with_notification_effect = yes - } - #China: Treasury / Trade Goods - option = { - name = tribute_mission.3005.treasury - trigger = { tribute_mission_1000_can_give_treasury_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_treasury_effect = yes } - tribute_mission_1000_set_treasury_reward_effect = yes - - ai_chance = { - base = 0 - - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:treasury - add = 1000 - } - } - } - #Artifact - option = { - name = tribute_mission.3005.artifact - #Inform the player what will happen (since the artifact doesn't exist yet) - custom_tooltip = tribute_mission.3005.artifact.tt - tribute_mission_1000_set_artifact_reward_effect = yes - - ai_chance = { - base = 0 - - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:artifact - add = 1000 - } - } - } - - #Innovation - option = { - name = tribute_mission.3005.innovation - trigger = { tribute_mission_1000_can_set_innovation_reward_trigger = yes } - tribute_mission_1000_set_innovation_reward_effect = yes - #Display the effects - show_as_tooltip = { - if = { - limit = { exists = scope:saved_innovation } - scope:tributary_scope.culture = { - add_innovation_progress = { - value = tribute_reward_innovation_progress_value - target = scope:saved_innovation - } - } - } - if = { - limit = { exists = scope:grant_fascination } - scope:tributary_scope.culture = { - add_fascination_progress = tribute_reward_fascination_progress_value - } - } - } - ai_chance = { - base = 0 - - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:innovation - add = 1000 - } - } - } - - #Development - option = { - name = tribute_mission.3005.development - trigger = { tribute_mission_1000_eligible_development_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_development_effect = yes } - tribute_mission_1000_set_development_reward_effect = yes - - ai_chance = { - base = 0 - - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 20 - } - - # Always choose this option if we were successfully influenced - modifier = { - scope:successful_influence ?= flag:development - add = 1000 - } - } - } - #Monk - option = { - name = tribute_mission.3005.monk - trigger = { tribute_mission_1000_eligible_for_monk_trigger = yes } - show_as_tooltip = { tribute_mission_1000_give_monk_effect = yes } - tribute_mission_1000_set_monk_reward_effect = yes - - ai_chance = { - base = 0 - - # If we were not influenced, just add a base chance - modifier = { - NOT = { exists = scope:successful_influence } - add = 100 - } - } - } - #Generic Legitimacy - option = { - name = tribute_mission.3005.legitimacy - show_as_tooltip = { tribute_mission_1000_give_legitimacy_effect = yes } - tribute_mission_1000_set_legitimacy_reward_effect = yes - - ai_chance = { - base = 100 - } - } - after = { - if = { - limit = { - scope:tributary_scope = { - subject_standing > seal_of_investiture_minimum_subject_standing - NOT = { - any_character_artifact = { - OR = { - artifact_type = seal_of_investiture - artifact_type = seal_of_investiture_court - } - } - } - } - } - trigger_event = { id = tribute_mission.3006 } - } - else_if = { - limit = { scope:tributary_scope = { is_tributary = no } } - scope:tributary_scope = { trigger_event = tribute_mission.3008 } - } - else = { - scope:tributary_scope = { - trigger_event = { id = tribute_mission.3010 } - } - } - } -} - -###DEPRECATED -#Overlord: Decide whether to grant a Seal of Investiture or not -tribute_mission.3006 = { - type = court_event - title = tribute_mission.3006.t - desc = tribute_mission.3006.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - immediate = { - tribute_mission_1006_eligible_scribe_scope_effect = yes - } - #Grant the Seal - option = { - name = tribute_mission.3006.grant - trigger = { - trigger_if = { - limit = { - scope:receiving_character = { - is_ai = yes - } - } - treasury > tribute_seal_of_investiture_cost - } - trigger_else = { - always = yes #Humans can always get one - } - } - show_as_unavailable = { always = yes } - custom_tooltip = { - text = tribute_mission.3006.grant.tt - create_artifact_imperial_seal_effect = { - OWNER = scope:receiving_character - SMITH = scope:scribe_character - } - } - remove_treasury = tribute_seal_of_investiture_cost - add_legitimacy = 50 - scope:tributary_scope = { - trigger_event = tribute_mission.3007 - } - - ai_chance = { - base = 50 - modifier = { - exists = scope:successful_influence - add = 50 - } - modifier = { - always = yes - add = scope:tributary_scope.subject_standing - add = -50 - } - ai_value_modifier = { - ai_greed = -0.5 - ai_honor = 0.5 - } - } - } - #Decline to grant the Seal - option = { - name = { - text = { - first_valid = { - triggered_desc = { - trigger = { treasury < tribute_seal_of_investiture_cost } - desc = tribute_mission.3006.decline.no_money - } - desc = tribute_mission.3006.decline.dont_wanna - } - } - } - add_legitimacy = -50 - reverse_add_opinion = { - target = scope:tributary_scope - modifier = refused_seal_of_investiture_opinion - opinion = -50 - } - scope:tributary_scope = { - trigger_event = { - id = tribute_mission.3010 - } - } - - ai_chance = { - base = 10 - } - } -} - -#Tributary: Receive the Seal of Investiture -tribute_mission.3007 = { - type = court_event - title = tribute_mission.3007.t - desc = tribute_mission.3007.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:receiving_character = { - group = petition_liege_group - } - scope:scribe_character = { - group = petition_liege_group - } - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - #Grant the Seal - option = { - name = tribute_mission.3007.a - scope:seal_of_investiture_scope = { - set_owner = scope:tributary_scope - } - - } - after = { - scope:tributary_scope = { - trigger_event = tribute_mission.3010 - } - } -} - -#Tributary: Decide whether to become a Tributary or not -tribute_mission.3008 = { - type = court_event - title = tribute_mission.3008.t - desc = tribute_mission.3008.desc - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:receiving_character = { - group = petition_liege_group - } - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - - #Become a Tributary - option = { - name = tribute_mission.3008.a - start_tributary_interaction_effect = { - TRIBUTARY = scope:tributary_scope - SUZERAIN = scope:overlord_scope - } - scope:overlord_scope = { - send_interface_message = { - type = event_tribute_good_text - title = tribute_mission.new_tributary.title - left_icon = scope:tributary_scope - desc = tribute_mission.new_tributary.desc - } - } - if = { - limit = { has_variable = wants_to_become_tributary_of_china } - debug_log = "wants_to_become_tributary_of_china realized!" - } - else = { - debug_log = "Became tributary through tribute mission" - } - - ai_chance = { # essentially a copy of the ai_chance for become_tributary_interaction - base = -50 - - modifier = { # Special case for Hegemonic Tributaries - scope:overlord_scope = { - highest_held_title_tier >= tier_hegemony - } - add = { - add = 25 - if = { - limit = { - OR = { - NOT = { scope:overlord_scope.primary_title = title:h_china } - government_has_flag = government_is_meritocratic - } - } - add = 25 - } - } - desc = tributary_interaction_aibehavior_recipient_hegemon_tier_tt - } - - modifier = { # Special case for Hegemonic Tributaries in the Dynastic Cycle - Stable Phase - scope:overlord_scope = { - highest_held_title_tier >= tier_hegemony - any_character_situation = { - situation_type = dynastic_cycle - } - } - add = { - if = { # Unstable Phase - limit = { - any_character_situation = { - situation_type = dynastic_cycle - OR = { - situation_current_phase = situation_dynastic_cycle_phase_instability - situation_current_phase = situation_dynastic_cycle_phase_instability_conquest - } - } - } - add = -50 - desc = tributary_interaction_aibehavior_recipient_unstable_cycle_tt - } - else = { # Stable Phase - if = { - limit = { - scope:overlord_scope.legitimacy_level < dynastic_cycle_legitimacy_expectation - } - add = -25 - desc = tributary_interaction_aibehavior_recipient_low_legitimacy_tt - } - else_if = { - limit = { - scope:overlord_scope.legitimacy_level >= dynastic_cycle_legitimacy_expectation - } - add = 25 - desc = tributary_interaction_aibehavior_recipient_high_legitimacy_tt - } - } - } - desc = ai_will_do_debug # For debugging, not shown to players - } - - #A devaraja should never willingly _offer_ to become a tributary - modifier = { - trigger = { - government_has_flag = government_is_mandala - OR = { - has_unruined_mandala_capital_trigger = yes - has_mandala_aspect_trigger = yes - } - } - add = -1000 - } - - #MINOR MODIFIERS - ai_military_threat_modifier = { - SENDER = scope:tributary_scope - RECEIVER = scope:overlord_scope - MULTIPLIER = 0.5 - } - - modifier = { - is_obedient_to = scope:overlord_scope - add = 40 - desc = obedient_interaction_reason - } - - modifier = { - highest_held_title_tier <= tier_duchy - OR = { - government_has_flag = government_is_feudal - government_has_flag = government_is_tribal_excluding_wanua - } - add = 25 - } - - modifier = { - OR = { - NOT = { - any_neighboring_top_liege_realm_owner = { - always = yes # no neighbors, i.e. island - } - } - any_neighboring_top_liege_realm_owner = { - top_suzerain = scope:overlord_scope # this includes direct neighbors with overlord - } - } - add = 25 - } - - modifier = { # Rivalry modifier. - desc = offer_vassalization_interaction_aibehavior_rival_tt - trigger = { - scope:tributary_scope = { - has_relation_rival = scope:overlord_scope - NOT = { has_relation_nemesis = scope:overlord_scope } - } - } - add = -10 - } - modifier = { # Nemesis modifier. - desc = offer_vassalization_interaction_aibehavior_nemesis_tt - trigger = { - scope:tributary_scope = { - has_relation_nemesis = scope:overlord_scope - } - } - add = -100 - } - - modifier = { # Different faith, no pluralism. - desc = offer_vassalization_interaction_aibehavior_differentfaith_tt - trigger = { - scope:tributary_scope = { - NOR = { # Of two different faiths AND the potential vassal's faith is not pluralistic. - faith = scope:overlord_scope.faith - faith = { has_doctrine = doctrine_pluralism_pluralistic } - } - } - } - add = { - value = -25 - if = { - limit = { - scope:tributary_scope.faith = { - faith_hostility_level = { - target = scope:overlord_scope.faith - value >= faith_hostile_level - } - } - } - add = -10 - } - if = { - limit = { - scope:tributary_scope.faith = { - faith_hostility_level = { - target = scope:overlord_scope.faith - value >= faith_evil_level - } - } - } - add = -25 - } - } - } - - modifier = { # Cultural Acceptance - scope:tributary_scope = { - NOT = { # cultural condition below doesn't have to apply if both actor and recipient have nomadic_philosophy - has_trait = nomadic_philosophy - scope:overlord_scope = { has_trait = nomadic_philosophy } - } - NOT = { has_same_culture_as = scope:overlord_scope } - culture = { - cultural_acceptance = { target = scope:overlord_scope.culture value < 50 } - } - } - add = { - add = -10 - if = { - limit = { scope:tributary_scope.culture = { has_cultural_pillar = ethos_bellicose } } - add = -10 - } - } - desc = cultural_acceptance_interaction_reason - } - - modifier = { # Same language - add = 5 - desc = speaks_same_language_interaction_reason - trigger = { - scope:tributary_scope = { - knows_language_of_culture = scope:overlord_scope.culture - } - } - } - } - } - #No thanks - option = { - name = tribute_mission.3008.b - ai_chance = 10 - } - after = { - trigger_event = tribute_mission.3010 - } -} - -#Tributary: Receive reward, go home -tribute_mission.3010 = { - type = court_event - title = { - first_valid = { - #Treasury - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_treasury } - desc = tribute_mission.3010.t.treasury - } - #Artifact - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_artifact } - desc = tribute_mission.3010.t.artifact - } - #Innovation - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_innovation } - desc = tribute_mission.3010.t.innovation - } - #Development - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_development } - desc = tribute_mission.3010.t.development - } - #Monk - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_monk } - desc = tribute_mission.3010.t.monk - } - #Monk - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_legitimacy } - desc = tribute_mission.3010.t.legitimacy - } - desc = tribute_mission.3010.t - } - } - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:seal_of_investiture_scope } - desc = tribute_mission.3010.intro.postseal - } - triggered_desc = { - trigger = { - scope:receiving_character = { has_character_flag = created_attendant } - } - desc = tribute_mission.3010.intro.attendant - } - desc = tribute_mission.3010.intro - } - first_valid = { - #Treasury - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_treasury } - desc = tribute_mission.3010.desc.treasury - } - #Artifact - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_artifact } - desc = tribute_mission.3010.desc.artifact - } - #Innovation - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_innovation } - desc = tribute_mission.3010.desc.innovation - } - #Development - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_development } - desc = tribute_mission.3010.desc.development - } - #Monk - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_monk } - desc = tribute_mission.3010.desc.monk - } - #Legitimacy - triggered_desc = { - trigger = { exists = scope:tribute_reward_type_legitimacy } - desc = tribute_mission.3010.desc.legitimacy - } - } - desc = tribute_mission.3010.outro - } - theme = tributary - override_sound = { reference = "event:/SFX/Events/Themes/sfx_event_theme_type_duty" } - artifact = { - trigger = { exists = scope:tribute_reward_type_artifact } - target = scope:tribute_reward_type_artifact - position = lower_center_portrait - } - court_scene = { - button_position_character = scope:receiving_character - court_owner = scope:overlord_scope - court_event_force_open = no - show_timeout_info = yes - should_pause_time = yes - roles = { - scope:tributary_scope = { - group = petition_liege_group - animation = throne_room_kneel_1 - } - } - } - immediate = { - tribute_mission_1000_disburse_reward_effect = yes - } - #Thanks, bye! - option = { - name = tribute_mission.3010.a - } - after = { - close_view = { - view = royal_court - player = scope:tributary_scope - } - #Clean up variables & set up cooldown - tribute_mission_1010_complete_effect = yes - } -} - - - -### LETTER EVENTS ### - -#Your Tributary refused your Exact Tribute Interaction -tribute_mission.9000 = { - type = letter_event - opening = tribute_mission.9000.opening - desc = tribute_mission.9000.desc - sender = scope:recipient - - immediate = { - scope:recipient = { - show_as_tooltip = { - add_legitimacy = minor_legitimacy_loss - if = { - limit = { is_ai = yes } - add_opinion = { - modifier = declined_tribute_mission_opinion - opinion = -30 - target = scope:actor - } - } - } - } - } - - #Hokay... - option = { - name = tribute_mission.9000.a - - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = -1 - } - } - } -} - -#Tributary is going on a mission! -tribute_mission.9010 = { - type = letter_event - opening = tribute_mission.9010.opening - desc = tribute_mission.9010.desc - sender = scope:recipient - - immediate = { - - } - - #Yay! - option = { - name = tribute_mission.9010.a - - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = -1 - } - } - } -} - -#Tributary: You ignored the Requested Tribute Mission, have some penalty -tribute_mission.9500 = { - type = letter_event - opening = tribute_mission.9500.opening - desc = tribute_mission.9500.desc - sender = scope:overlord - - trigger = { - is_tributary = yes - has_variable = requested_tribute_mission - var:requested_tribute_mission = overlord - #We're going, we're going... - NOT = { - has_variable = tribute_mission_type - exists = current_travel_plan - } - } - - on_trigger_fail = { - set_variable = invalidation_should_fail_ongoing_requested_tribute_mission - } - - immediate = { - add_legitimacy = minor_legitimacy_loss - if = { - limit = { - NOT = { exists = scope:overlord } - } - overlord = { - save_scope_as = overlord - } - } - scope:overlord = { - if = { - limit = { is_ai = yes } - add_opinion = { - modifier = declined_tribute_mission_opinion - opinion = -30 - target = root - } - } - } - #Clean up Requested Tribute Mission variables - requested_tribute_mission_clean_up_variables_effect = yes - } - - #Hokay... - option = { - name = tribute_mission.9500.a - - ai_chance = { - base = 25 - ai_value_modifier = { - ai_greed = -1 - ai_boldness = -1 - } - } - } -} - - - -### TRAVEL EVENTS ### - -#Your human tribute is not available any more -tribute_mission.9750 = { - type = character_event - title = tribute_mission.9750.t - desc = tribute_mission.9750.desc - - theme = travel - override_icon = { reference = "gfx/interface/icons/event_types/type_tributary.dds" } - - left_portrait = { - character = root - animation = stress - } - right_portrait = { - character = scope:human_tribute - trigger = { - NOT = { has_character_flag = tribute_mission_escaped_eunuch } - } - triggered_animation = { - trigger = { is_alive = no } - animation = dead - } - animation = prisonhouse - } - immediate = { - #Hol' up - current_travel_plan ?= { pause_travel_plan = yes } - #Save the concubine - if = { - limit = { has_variable = offered_concubine } - var:offered_concubine = { save_scope_as = human_tribute } - } - #Save the eunuch - if = { - limit = { has_variable = offered_eunuch } - var:offered_eunuch = { save_scope_as = human_tribute } - } - } - #Swap to gold? - option = { - name = tribute_mission.9750.a - show_as_unavailable = { always = yes } - #Define how much gold it is - set_variable = { - name = tribute_mission_type - value = flag:adequate_gold_tribute - } - set_variable = { - name = offered_gold_value - value = adequate_gold_tribute_value - } - #Clear out the old variables - remove_variable = offered_concubine - remove_variable = offered_eunuch - #Stash the gold so you don't use it elsewhere on your trip to the capital - custom_tooltip = { - text = tribute_mission.adequate_reserved_gold - hidden_effect = { remove_short_term_gold = adequate_gold_tribute_value } - } - #Keep on keeping on - current_travel_plan ?= { resume_travel_plan = yes } - if = { - limit = { has_character_flag = revisit_tribute_mission_0001 } - trigger_event = { - id = tribute_mission.0001 - delayed = yes - } - } - } - #Or go home - option = { - name = tribute_mission.9750.b - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - custom_tooltip = tribute_mission.9750.tt - #Keep on keeping on - hidden_effect = { - current_travel_plan ?= { resume_travel_plan = yes } - } - tribute_mission_clean_up_variables_effect = yes - tribute_mission_clean_up_request_variables_effect = yes - } - after = { - if = { - limit = { has_character_flag = revisit_tribute_mission_0001 } - remove_character_flag = revisit_tribute_mission_0001 - } - } -} - - -scripted_effect tribute_mission_9760_escape_effect = { - scope:escapee_eunuch = { - add_character_flag = { - flag = tribute_mission_escaped_eunuch - days = 30 - } - } - current_travel_plan = { remove_character = scope:escapee_eunuch } - hidden_effect = { - scope:escapee_eunuch = { move_to_pool_at = root.location } - } - trigger_event = { - id = tribute_mission.9750 - delayed = yes - } -} - -#Your slated eunuch is trying to escape -tribute_mission.9760 = { - type = character_event - title = tribute_mission.9760.t - desc = { - first_valid = { - triggered_desc = { - trigger = { exists = scope:vengeful_eunuch } - desc = tribute_mission.9760.desc.vengeful - } - desc = tribute_mission.9760.desc - } - } - theme = travel - override_icon = { reference = "gfx/interface/icons/event_types/type_tributary.dds" } - override_background = { reference = bedchamber } - - left_portrait = { - character = root - animation = disbelief - } - right_portrait = { - character = scope:escapee_eunuch - triggered_animation = { - trigger = { exists = scope:vengeful_eunuch } - animation = menacing - } - animation = shock - } - trigger = { - is_tributary = yes - location != var:tribute_mission_target_scope.capital_province - has_variable = offered_eunuch - var:offered_eunuch = { has_character_flag = tribute_mission_attempt_escape } - } - immediate = { - #Save the eunuch - if = { - limit = { has_variable = offered_eunuch } - var:offered_eunuch = { save_scope_as = escapee_eunuch } - } - scope:escapee_eunuch = { - if = { - limit = { - OR = { - 1002_human_tribute_angry_personality_trigger = yes - has_trait = sadistic - has_trait = just - } - } - save_scope_as = vengeful_eunuch - } - } - } - #Vengeful eunuch - option = { - name = tribute_mission.9760.a - trigger = { exists = scope:vengeful_eunuch } - duel = { - skill = prowess - target = scope:vengeful_eunuch - #You overpower them - 50 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = tribute_mission.9760.a.success - custom_tooltip = tribute_mission.9760.a.success.tt - #You learned something! - random = { - chance = 10 - add_prowess_skill = 1 - } - } - #You get injured - 40 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tribute_mission.9760.a.failure - increase_wounds_effect = { REASON = fight } - #Hmmm, vindication - if = { - limit = { is_female = no } - random = { - chance = 5 - add_trait = eunuch_1 - } - } - tribute_mission_9760_escape_effect = yes - } - } - } - #Guards!!! - option = { - name = tribute_mission.9760.b - trigger = { - NOT = { exists = scope:vengeful_eunuch } - } - scope:escapee_eunuch = { - duel = { - skill = prowess - value = very_high_skill_rating - #Eunuch is overpowered - 30 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - } - desc = tribute_mission.9760.b.success - custom_tooltip = tribute_mission.9760.a.success.tt - } - #Eunuch escapes - 60 = { - compare_modifier = { - value = scope:duel_value - multiplier = 3.5 - } - desc = tribute_mission.9760.b.failure - tribute_mission_9760_escape_effect = yes - } - #Eunuch is killed in the process - 5 = { - compare_modifier = { - value = scope:duel_value - multiplier = -3.5 - min = 5 - } - desc = tribute_mission.9760.b.critical_failure - death = { death_reason = death_fight } - trigger_event = { - id = tribute_mission.9750 - delayed = yes - } - } - } - } - - } - #Let 'em go - option = { - name = tribute_mission.9760.c - tribute_mission_9760_escape_effect = yes - } - after = { - scope:escapee_eunuch = { - if = { - limit = { is_alive = yes } - remove_character_flag = tribute_mission_attempt_escape - } - } - } -} - -#Somehow your Tribute Mission invalidated, refund and return home -tribute_mission.9800 = { - type = character_event - title = tribute_mission.9800.t - desc = { - first_valid = { - #New overlord can't accept my tribute - triggered_desc = { - trigger = { has_variable = new_overlord_unable_to_accept_tribute } - desc = tribute_mission.9800.desc.unable_to_accept_tribute - } - #Hmm got vassalized by Suzerain - triggered_desc = { - trigger = { - is_tributary = no - liege = var:tribute_mission_target_scope - } - desc = tribute_mission.9800.desc.suzerain_turned_liege - } - #No longer Tributary - triggered_desc = { - trigger = { is_tributary = no } - desc = tribute_mission.9800.desc.no_longer_tributary - } - #New overlord has a different end destination - triggered_desc = { - trigger = { has_variable = new_overlord_somewhere_else } - desc = tribute_mission.9800.desc.different_end_location - } - } - } - - theme = travel - override_icon = { reference = "gfx/interface/icons/event_types/type_tributary.dds" } - - left_portrait = { - character = root - animation = thinking - } - lower_right_portrait = scope:current_overlord - immediate = { - overlord = { - if = { - limit = { this != root } - save_scope_as = current_overlord - } - } - #Refunds - if = { - limit = { has_variable = offered_gold_value } - add_short_term_gold = var:offered_gold_value - } - if = { - limit = { has_variable = offered_herd_value } - domicile ?= { - change_herd = { add = var:offered_herd_value } - } - } - } - #Oh well - option = { - name = tribute_mission.9800.a - current_travel_plan = { - if = { - limit = { can_cancel = yes } - cancel_travel_plan = yes - } - } - } - after = { - tribute_mission_clean_up_variables_effect = yes - tribute_mission_clean_up_request_variables_effect = yes - - remove_variable = new_overlord_unable_to_accept_tribute - - if = { - limit = { exists = scope:tribute_reward_type_rejection } - tribute_mission_1000_rejection_effect = yes - } - } -}